]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/block_dev.c
blkdev: cgroup whitelist permission fix
[karo-tx-linux.git] / fs / block_dev.c
index 66411463b734ce4ae90c9cab498d1dfa3e2a107f..50e8c8582faa06a38bae5beb66c4f3ec8af929f3 100644 (file)
@@ -1340,10 +1340,12 @@ static int __blkdev_get(struct block_device *bdev, fmode_t mode, int for_part)
        /*
         * hooks: /n/, see "layering violations".
         */
-       ret = devcgroup_inode_permission(bdev->bd_inode, perm);
-       if (ret != 0) {
-               bdput(bdev);
-               return ret;
+       if (!for_part) {
+               ret = devcgroup_inode_permission(bdev->bd_inode, perm);
+               if (ret != 0) {
+                       bdput(bdev);
+                       return ret;
+               }
        }
 
  restart: