KVM: x86 emulator: reject SYSENTER in compatibility mode on AMD guests
[pandora-kernel.git] / fs / sysfs / inode.c
index c81b22f..9db61a4 100644 (file)
@@ -136,12 +136,13 @@ static int sysfs_sd_setsecdata(struct sysfs_dirent *sd, void **secdata, u32 *sec
        void *old_secdata;
        size_t old_secdata_len;
 
-       iattrs = sd->s_iattr;
-       if (!iattrs)
-               iattrs = sysfs_init_inode_attrs(sd);
-       if (!iattrs)
-               return -ENOMEM;
+       if (!sd->s_iattr) {
+               sd->s_iattr = sysfs_init_inode_attrs(sd);
+               if (!sd->s_iattr)
+                       return -ENOMEM;
+       }
 
+       iattrs = sd->s_iattr;
        old_secdata = iattrs->ia_secdata;
        old_secdata_len = iattrs->ia_secdata_len;
 
@@ -318,8 +319,11 @@ int sysfs_hash_and_remove(struct sysfs_dirent *dir_sd, const void *ns, const cha
        struct sysfs_addrm_cxt acxt;
        struct sysfs_dirent *sd;
 
-       if (!dir_sd)
+       if (!dir_sd) {
+               WARN(1, KERN_WARNING "sysfs: can not remove '%s', no directory\n",
+                       name);
                return -ENOENT;
+       }
 
        sysfs_addrm_start(&acxt, dir_sd);