[lkml]   [2009]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Patch in this message
    Subject[PATCH 04/26] sysfs: sysfs_remove_dir stop checking for bogus cases.
    From: Eric W. Biederman <>

    kobj->sd can not be NULL in sysfs_remove_dir.

    sysfs_remove_dir is only called from kobject_add (to clean up after failure)
    and from kobject_del at the end of a kobject's life. In both cases kobject_add
    has already called sysfs_create_dir successfully. The only writers of
    kobj->sd are sysfs_create_dir on sucess and sysfs_remove_dir when it clears
    the kobj just before deleting the directory.

    Which means at the time sysfs_remove_dir is called kobj->sd will be

    Signed-off-by: Eric W. Biederman <>
    fs/sysfs/dir.c | 3 ---
    1 files changed, 0 insertions(+), 3 deletions(-)

    diff --git a/fs/sysfs/dir.c b/fs/sysfs/dir.c
    index b95cc07..a55e1d4 100644
    --- a/fs/sysfs/dir.c
    +++ b/fs/sysfs/dir.c
    @@ -752,9 +752,6 @@ static void __sysfs_remove_dir(struct sysfs_dirent *dir_sd)
    struct sysfs_addrm_cxt acxt;
    struct sysfs_dirent **pos;

    - if (!dir_sd)
    - return;
    pr_debug("sysfs %s: removing dir\n", dir_sd->s_name);
    sysfs_addrm_start(&acxt, dir_sd);
    pos = &dir_sd->s_dir.children;

     \ /
      Last update: 2009-05-29 22:25    [W:0.023 / U:151.744 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site