mtd: ftl: use container_of() rather than cast
authorGaosheng Cui <cuigaosheng1@huawei.com>
Tue, 16 Aug 2022 13:59:10 +0000 (21:59 +0800)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 19 Sep 2022 16:14:53 +0000 (18:14 +0200)
The container_of() is much more readable and also safer.

Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20220816135910.268016-1-cuigaosheng1@huawei.com
drivers/mtd/ftl.c

index f655d29..8c22064 100644 (file)
@@ -941,7 +941,7 @@ static int ftl_write(partition_t *part, caddr_t buffer,
 
 static int ftl_getgeo(struct mtd_blktrans_dev *dev, struct hd_geometry *geo)
 {
-       partition_t *part = (void *)dev;
+       partition_t *part = container_of(dev, struct partition_t, mbd);
        u_long sect;
 
        /* Sort of arbitrary: round size down to 4KiB boundary */
@@ -969,7 +969,7 @@ static int ftl_writesect(struct mtd_blktrans_dev *dev,
 static int ftl_discardsect(struct mtd_blktrans_dev *dev,
                           unsigned long sector, unsigned nr_sects)
 {
-       partition_t *part = (void *)dev;
+       partition_t *part = container_of(dev, struct partition_t, mbd);
        uint32_t bsize = 1 << part->header.EraseUnitSize;
 
        pr_debug("FTL erase sector %ld for %d sectors\n",