X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=fs%2Fsysfs%2Ffile.c;h=3e1cc062a74030687013da9c386476f3a164975f;hb=8c6d21528406ec719aaea9d589876fd105c31646;hp=cc497994b2a83dd91931d8d8b2f67bcc30aea80c;hpb=0806ca2ab3ef7d7a1bd41a980f661a13ba11acb5;p=cascardo%2Flinux.git diff --git a/fs/sysfs/file.c b/fs/sysfs/file.c index cc497994b2a8..3e1cc062a740 100644 --- a/fs/sysfs/file.c +++ b/fs/sysfs/file.c @@ -410,11 +410,12 @@ int sysfs_add_file(struct sysfs_dirent *dir_sd, const struct attribute *attr, sysfs_link_sibling(sd); } - if (sysfs_addrm_finish(&acxt)) - return 0; + if (!sysfs_addrm_finish(&acxt)) { + sysfs_put(sd); + return -EEXIST; + } - sysfs_put(sd); - return -EEXIST; + return 0; }