[lkml]   [2003]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC 0/5] Backing Store for sysfs (Overhauled)

    > The main complaint was of over bloating kobject structure which becomes more
    > painful when kobject is not part of sysfs. So now I have changed the data
    > structures entirely. There is _no_ increase in the size of kobject structure.
    > The kobject hierarchy is represented in the form of a new structure called
    > sysfs_dirent (size 48 - bytes). sysfs_dirent will be there only for kobject
    > elements (kobject, attribute, attribute group, symlink) which are represented
    > in sysfs. kobject structre has just one change. Now kobject has a field
    > pointing to its sysfs_dirent instead of dentry.
    > struct sysfs_dirent {
    > struct list_head s_sibling;
    > struct list_head s_children;
    > void * s_element;
    > struct dentry * s_dentry;
    > int s_type;
    > struct rw_semaphore s_rwsem;
    > };
    > The concept is still the same that in this prototype also we create dentry and
    > inode on the fly when they are first looked up. This is done for both leaf or
    > non-leaf dentries. The generic nature of sysfs_dirent makes it easy to do for
    > both leaf or non-leaf dentries.

    I still don't like it, though I think things are gradually getting better.

    I still think that keeping the directories static and only creating the
    leaf (file) dentries dynamically is the best tradeoff between complexity
    and memory consumption.

    It will require some minor infrastructural modification to associate a
    kobject with all of its leaf nodes, but the result will be cleaner, and
    the worst-case memory consumption will be less than your patches with a
    per-attribute-per-kobject data structure (which there currently isn't).



    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

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