lkml.org 
[lkml]   [1999]   [Jan]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: pre8, modules, vfat.o unresolved symbol(s)


    On Fri, 15 Jan 1999, Garst R. Reese wrote:

    > Thats about it.
    Yes. You could mention which symbols those were, but anyway.
    d_invalidate(). Yes, it's what we need but it is not exported.

    Linus, I'm putting it to ksyms.c, but it might feel better in
    dcache.h (inlined && less stuff in export list). Up to you. IMHO the less
    things we export the less chances that a driver written by Foobar Bogonics
    will bite us in the next year when we'll remove/redo something.

    --- linux/fs/vfat/namei.c.old Fri Jan 15 02:46:34 1999
    +++ linux/fs/vfat/namei.c Fri Jan 15 03:02:38 1999
    @@ -1726,6 +1726,13 @@
    }

    if (res >= 0) {
    + if (new_inode) {
    + /* probably we should do it only for directories,
    + * but that would require lambda-expanding the
    + * call of vfat_unlink(). FIXME.
    + */
    + d_rehash(new_dentry);
    + }
    d_move(old_dentry, new_dentry);
    res = 0;
    }
    --- linux/fs/dcache.c.old Fri Jan 15 02:52:32 1999
    +++ linux/fs/dcache.c Fri Jan 15 02:54:07 1999
    @@ -677,12 +677,11 @@
    d_drop(dentry);
    }

    -void d_add(struct dentry * entry, struct inode * inode)
    +void d_rehash(struct dentry * entry)
    {
    struct dentry * parent = entry->d_parent;

    list_add(&entry->d_hash, d_hash(parent, entry->d_name.hash));
    - d_instantiate(entry, inode);
    }

    #define do_switch(x,y) do { \
    --- linux/kernel/ksyms.c.old Fri Jan 15 02:54:45 1999
    +++ linux/kernel/ksyms.c Fri Jan 15 02:55:00 1999
    @@ -121,7 +121,8 @@
    EXPORT_SYMBOL(d_alloc_root);
    EXPORT_SYMBOL(d_delete);
    EXPORT_SYMBOL(d_validate);
    -EXPORT_SYMBOL(d_add);
    +EXPORT_SYMBOL(d_rehash);
    +EXPORT_SYMBOL(d_invalidate); /* May be it will be better in dcache.h? */
    EXPORT_SYMBOL(d_move);
    EXPORT_SYMBOL(d_instantiate);
    EXPORT_SYMBOL(d_alloc);
    --- linux/include/linux/dcache.h.old Fri Jan 15 02:55:11 1999
    +++ linux/include/linux/dcache.h Fri Jan 15 02:58:05 1999
    @@ -150,10 +150,18 @@
    extern int is_root_busy(struct dentry *);

    /*
    + * This adds the entry to the hash queues.
    + */
    +extern void d_rehash(struct dentry * entry);
    +/*
    * This adds the entry to the hash queues and initializes "d_inode".
    * The entry was actually filled in earlier during "d_alloc()"
    */
    -extern void d_add(struct dentry * entry, struct inode * inode);
    +static __inline__ d_add(struct dentry * entry, struct inode * inode);
    +{
    + d_rehash(entry);
    + d_instantiate(entry, inode);
    +}

    /* used for rename() and baskets */
    extern void d_move(struct dentry * entry, struct dentry * newdentry);


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:49    [W:0.021 / U:29.452 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site