zram: simplify and optimize dev_to_zram()
authorJiang Liu <liuj97@gmail.com>
Thu, 6 Jun 2013 16:07:28 +0000 (00:07 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Jun 2013 19:12:20 +0000 (12:12 -0700)
Simplify and optimize dev_to_zram() without walking the zram_devices
array.

Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/zram/zram_sysfs.c

index dc76a3d..e239d94 100644 (file)
@@ -30,18 +30,9 @@ static u64 zram_stat64_read(struct zram *zram, u64 *v)
        return val;
 }
 
-static struct zram *dev_to_zram(struct device *dev)
+static inline struct zram *dev_to_zram(struct device *dev)
 {
-       int i;
-       struct zram *zram = NULL;
-
-       for (i = 0; i < zram_get_num_devices(); i++) {
-               zram = &zram_devices[i];
-               if (disk_to_dev(zram->disk) == dev)
-                       break;
-       }
-
-       return zram;
+       return (struct zram *)dev_to_disk(dev)->private_data;
 }
 
 static ssize_t disksize_show(struct device *dev,