summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2016-06-15 22:44:20 -0400
committerDan Williams <dan.j.williams@intel.com>2016-06-27 15:26:08 -0400
commit0d52c756a665adc032c791307bc55e392b0186b3 (patch)
treea554db0e9ba23afe321e8f084c3a31777ea068b6
parentd72a57835c92f6d51863b0ad6d7d45e3859e24d4 (diff)
block: convert to device_add_disk()
For block drivers that specify a parent device, convert them to use device_add_disk(). This conversion was done with the following semantic patch: @@ struct gendisk *disk; expression E; @@ - disk->driverfs_dev = E; ... - add_disk(disk); + device_add_disk(E, disk); @@ struct gendisk *disk; expression E1, E2; @@ - disk->driverfs_dev = E1; ... E2 = disk; ... - add_disk(E2); + device_add_disk(E1, E2); ...plus some manual fixups for a few missed conversions. Cc: Jens Axboe <axboe@fb.com> Cc: Keith Busch <keith.busch@intel.com> Cc: Michael S. Tsirkin <mst@redhat.com> Cc: David Woodhouse <dwmw2@infradead.org> Cc: David S. Miller <davem@davemloft.net> Cc: James Bottomley <James.Bottomley@hansenpartnership.com> Cc: Ross Zwisler <ross.zwisler@linux.intel.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
-rw-r--r--arch/powerpc/sysdev/axonram.c3
-rw-r--r--drivers/block/cciss.c3
-rw-r--r--drivers/block/floppy.c3
-rw-r--r--drivers/block/mtip32xx/mtip32xx.c5
-rw-r--r--drivers/block/ps3disk.c3
-rw-r--r--drivers/block/ps3vram.c3
-rw-r--r--drivers/block/rsxx/dev.c4
-rw-r--r--drivers/block/skd_main.c8
-rw-r--r--drivers/block/sunvdc.c3
-rw-r--r--drivers/block/virtio_blk.c3
-rw-r--r--drivers/block/xen-blkfront.c3
-rw-r--r--drivers/ide/ide-cd.c3
-rw-r--r--drivers/ide/ide-gd.c3
-rw-r--r--drivers/memstick/core/ms_block.c3
-rw-r--r--drivers/memstick/core/mspro_block.c3
-rw-r--r--drivers/mtd/mtd_blkdevs.c4
-rw-r--r--drivers/nvdimm/blk.c3
-rw-r--r--drivers/nvdimm/btt.c3
-rw-r--r--drivers/nvdimm/pmem.c3
-rw-r--r--drivers/nvme/host/core.c3
-rw-r--r--drivers/s390/block/dasd_genhd.c3
-rw-r--r--drivers/s390/block/dcssblk.c3
-rw-r--r--drivers/s390/block/scm_blk.c3
-rw-r--r--drivers/scsi/sd.c3
-rw-r--r--drivers/scsi/sr.c3
25 files changed, 28 insertions, 56 deletions
diff --git a/arch/powerpc/sysdev/axonram.c b/arch/powerpc/sysdev/axonram.c
index ff75d70f7285..f9af6461521a 100644
--- a/arch/powerpc/sysdev/axonram.c
+++ b/arch/powerpc/sysdev/axonram.c
@@ -223,7 +223,6 @@ static int axon_ram_probe(struct platform_device *device)
223 bank->disk->first_minor = azfs_minor; 223 bank->disk->first_minor = azfs_minor;
224 bank->disk->fops = &axon_ram_devops; 224 bank->disk->fops = &axon_ram_devops;
225 bank->disk->private_data = bank; 225 bank->disk->private_data = bank;
226 bank->disk->driverfs_dev = &device->dev;
227 226
228 sprintf(bank->disk->disk_name, "%s%d", 227 sprintf(bank->disk->disk_name, "%s%d",
229 AXON_RAM_DEVICE_NAME, axon_ram_bank_id); 228 AXON_RAM_DEVICE_NAME, axon_ram_bank_id);
@@ -238,7 +237,7 @@ static int axon_ram_probe(struct platform_device *device)
238 set_capacity(bank->disk, bank->size >> AXON_RAM_SECTOR_SHIFT); 237 set_capacity(bank->disk, bank->size >> AXON_RAM_SECTOR_SHIFT);
239 blk_queue_make_request(bank->disk->queue, axon_ram_make_request); 238 blk_queue_make_request(bank->disk->queue, axon_ram_make_request);
240 blk_queue_logical_block_size(bank->disk->queue, AXON_RAM_SECTOR_SIZE); 239 blk_queue_logical_block_size(bank->disk->queue, AXON_RAM_SECTOR_SIZE);
241 add_disk(bank->disk); 240 device_add_disk(&device->dev, bank->disk);
242 241
243 bank->irq_id = irq_of_parse_and_map(device->dev.of_node, 0); 242 bank->irq_id = irq_of_parse_and_map(device->dev.of_node, 0);
244 if (bank->irq_id == NO_IRQ) { 243 if (bank->irq_id == NO_IRQ) {
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index 63c2064689f8..db9d6bb6352d 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -1951,7 +1951,6 @@ static int cciss_add_disk(ctlr_info_t *h, struct gendisk *disk,
1951 if (cciss_create_ld_sysfs_entry(h, drv_index)) 1951 if (cciss_create_ld_sysfs_entry(h, drv_index))
1952 goto cleanup_queue; 1952 goto cleanup_queue;
1953 disk->private_data = h->drv[drv_index]; 1953 disk->private_data = h->drv[drv_index];
1954 disk->driverfs_dev = &h->drv[drv_index]->dev;
1955 1954
1956 /* Set up queue information */ 1955 /* Set up queue information */
1957 blk_queue_bounce_limit(disk->queue, h->pdev->dma_mask); 1956 blk_queue_bounce_limit(disk->queue, h->pdev->dma_mask);
@@ -1973,7 +1972,7 @@ static int cciss_add_disk(ctlr_info_t *h, struct gendisk *disk,
1973 /* allows the interrupt handler to start the queue */ 1972 /* allows the interrupt handler to start the queue */
1974 wmb(); 1973 wmb();
1975 h->drv[drv_index]->queue = disk->queue; 1974 h->drv[drv_index]->queue = disk->queue;
1976 add_disk(disk); 1975 device_add_disk(&h->drv[drv_index]->dev, disk);
1977 return 0; 1976 return 0;
1978 1977
1979cleanup_queue: 1978cleanup_queue:
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index f9bfecd733a8..c557057fe8ae 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -4350,8 +4350,7 @@ static int __init do_floppy_init(void)
4350 /* to be cleaned up... */ 4350 /* to be cleaned up... */
4351 disks[drive]->private_data = (void *)(long)drive; 4351 disks[drive]->private_data = (void *)(long)drive;
4352 disks[drive]->flags |= GENHD_FL_REMOVABLE; 4352 disks[drive]->flags |= GENHD_FL_REMOVABLE;
4353 disks[drive]->driverfs_dev = &floppy_device[drive].dev; 4353 device_add_disk(&floppy_device[drive].dev, disks[drive]);
4354 add_disk(disks[drive]);
4355 } 4354 }
4356 4355
4357 return 0; 4356 return 0;
diff --git a/drivers/block/mtip32xx/mtip32xx.c b/drivers/block/mtip32xx/mtip32xx.c
index 8e3e708cb9ee..2aca98e8e427 100644
--- a/drivers/block/mtip32xx/mtip32xx.c
+++ b/drivers/block/mtip32xx/mtip32xx.c
@@ -3956,7 +3956,6 @@ static int mtip_block_initialize(struct driver_data *dd)
3956 if (rv) 3956 if (rv)
3957 goto disk_index_error; 3957 goto disk_index_error;
3958 3958
3959 dd->disk->driverfs_dev = &dd->pdev->dev;
3960 dd->disk->major = dd->major; 3959 dd->disk->major = dd->major;
3961 dd->disk->first_minor = index * MTIP_MAX_MINORS; 3960 dd->disk->first_minor = index * MTIP_MAX_MINORS;
3962 dd->disk->minors = MTIP_MAX_MINORS; 3961 dd->disk->minors = MTIP_MAX_MINORS;
@@ -4008,7 +4007,7 @@ skip_create_disk:
4008 4007
4009 /* 4008 /*
4010 * if rebuild pending, start the service thread, and delay the block 4009 * if rebuild pending, start the service thread, and delay the block
4011 * queue creation and add_disk() 4010 * queue creation and device_add_disk()
4012 */ 4011 */
4013 if (wait_for_rebuild == MTIP_FTL_REBUILD_MAGIC) 4012 if (wait_for_rebuild == MTIP_FTL_REBUILD_MAGIC)
4014 goto start_service_thread; 4013 goto start_service_thread;
@@ -4042,7 +4041,7 @@ skip_create_disk:
4042 set_capacity(dd->disk, capacity); 4041 set_capacity(dd->disk, capacity);
4043 4042
4044 /* Enable the block device and add it to /dev */ 4043 /* Enable the block device and add it to /dev */
4045 add_disk(dd->disk); 4044 device_add_disk(&dd->pdev->dev, dd->disk);
4046 4045
4047 dd->bdev = bdget_disk(dd->disk, 0); 4046 dd->bdev = bdget_disk(dd->disk, 0);
4048 /* 4047 /*
diff --git a/drivers/block/ps3disk.c b/drivers/block/ps3disk.c
index acb44529c05e..76f33c84ce3d 100644
--- a/drivers/block/ps3disk.c
+++ b/drivers/block/ps3disk.c
@@ -487,7 +487,6 @@ static int ps3disk_probe(struct ps3_system_bus_device *_dev)
487 gendisk->fops = &ps3disk_fops; 487 gendisk->fops = &ps3disk_fops;
488 gendisk->queue = queue; 488 gendisk->queue = queue;
489 gendisk->private_data = dev; 489 gendisk->private_data = dev;
490 gendisk->driverfs_dev = &dev->sbd.core;
491 snprintf(gendisk->disk_name, sizeof(gendisk->disk_name), PS3DISK_NAME, 490 snprintf(gendisk->disk_name, sizeof(gendisk->disk_name), PS3DISK_NAME,
492 devidx+'a'); 491 devidx+'a');
493 priv->blocking_factor = dev->blk_size >> 9; 492 priv->blocking_factor = dev->blk_size >> 9;
@@ -499,7 +498,7 @@ static int ps3disk_probe(struct ps3_system_bus_device *_dev)
499 gendisk->disk_name, priv->model, priv->raw_capacity >> 11, 498 gendisk->disk_name, priv->model, priv->raw_capacity >> 11,
500 get_capacity(gendisk) >> 11); 499 get_capacity(gendisk) >> 11);
501 500
502 add_disk(gendisk); 501 device_add_disk(&dev->sbd.core, gendisk);
503 return 0; 502 return 0;
504 503
505fail_cleanup_queue: 504fail_cleanup_queue:
diff --git a/drivers/block/ps3vram.c b/drivers/block/ps3vram.c
index 56847fcda086..456b4fe21559 100644
--- a/drivers/block/ps3vram.c
+++ b/drivers/block/ps3vram.c
@@ -773,14 +773,13 @@ static int ps3vram_probe(struct ps3_system_bus_device *dev)
773 gendisk->fops = &ps3vram_fops; 773 gendisk->fops = &ps3vram_fops;
774 gendisk->queue = queue; 774 gendisk->queue = queue;
775 gendisk->private_data = dev; 775 gendisk->private_data = dev;
776 gendisk->driverfs_dev = &dev->core;
777 strlcpy(gendisk->disk_name, DEVICE_NAME, sizeof(gendisk->disk_name)); 776 strlcpy(gendisk->disk_name, DEVICE_NAME, sizeof(gendisk->disk_name));
778 set_capacity(gendisk, priv->size >> 9); 777 set_capacity(gendisk, priv->size >> 9);
779 778
780 dev_info(&dev->core, "%s: Using %lu MiB of GPU memory\n", 779 dev_info(&dev->core, "%s: Using %lu MiB of GPU memory\n",
781 gendisk->disk_name, get_capacity(gendisk) >> 11); 780 gendisk->disk_name, get_capacity(gendisk) >> 11);
782 781
783 add_disk(gendisk); 782 device_add_disk(&dev->core, gendisk);
784 return 0; 783 return 0;
785 784
786fail_cleanup_queue: 785fail_cleanup_queue:
diff --git a/drivers/block/rsxx/dev.c b/drivers/block/rsxx/dev.c
index e1b8b7061d2f..f81d70b39d10 100644
--- a/drivers/block/rsxx/dev.c
+++ b/drivers/block/rsxx/dev.c
@@ -230,8 +230,7 @@ int rsxx_attach_dev(struct rsxx_cardinfo *card)
230 set_capacity(card->gendisk, card->size8 >> 9); 230 set_capacity(card->gendisk, card->size8 >> 9);
231 else 231 else
232 set_capacity(card->gendisk, 0); 232 set_capacity(card->gendisk, 0);
233 add_disk(card->gendisk); 233 device_add_disk(CARD_TO_DEV(card), card->gendisk);
234
235 card->bdev_attached = 1; 234 card->bdev_attached = 1;
236 } 235 }
237 236
@@ -308,7 +307,6 @@ int rsxx_setup_dev(struct rsxx_cardinfo *card)
308 307
309 snprintf(card->gendisk->disk_name, sizeof(card->gendisk->disk_name), 308 snprintf(card->gendisk->disk_name, sizeof(card->gendisk->disk_name),
310 "rsxx%d", card->disk_id); 309 "rsxx%d", card->disk_id);
311 card->gendisk->driverfs_dev = &card->dev->dev;
312 card->gendisk->major = card->major; 310 card->gendisk->major = card->major;
313 card->gendisk->first_minor = 0; 311 card->gendisk->first_minor = 0;
314 card->gendisk->fops = &rsxx_fops; 312 card->gendisk->fops = &rsxx_fops;
diff --git a/drivers/block/skd_main.c b/drivers/block/skd_main.c
index 5c07a23e2ada..3822eae102db 100644
--- a/drivers/block/skd_main.c
+++ b/drivers/block/skd_main.c
@@ -4690,10 +4690,10 @@ static int skd_bdev_getgeo(struct block_device *bdev, struct hd_geometry *geo)
4690 return -EIO; 4690 return -EIO;
4691} 4691}
4692 4692
4693static int skd_bdev_attach(struct skd_device *skdev) 4693static int skd_bdev_attach(struct device *parent, struct skd_device *skdev)
4694{ 4694{
4695 pr_debug("%s:%s:%d add_disk\n", skdev->name, __func__, __LINE__); 4695 pr_debug("%s:%s:%d add_disk\n", skdev->name, __func__, __LINE__);
4696 add_disk(skdev->disk); 4696 device_add_disk(parent, skdev->disk);
4697 return 0; 4697 return 0;
4698} 4698}
4699 4699
@@ -4812,8 +4812,6 @@ static int skd_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
4812 4812
4813 pci_set_drvdata(pdev, skdev); 4813 pci_set_drvdata(pdev, skdev);
4814 4814
4815 skdev->disk->driverfs_dev = &pdev->dev;
4816
4817 for (i = 0; i < SKD_MAX_BARS; i++) { 4815 for (i = 0; i < SKD_MAX_BARS; i++) {
4818 skdev->mem_phys[i] = pci_resource_start(pdev, i); 4816 skdev->mem_phys[i] = pci_resource_start(pdev, i);
4819 skdev->mem_size[i] = (u32)pci_resource_len(pdev, i); 4817 skdev->mem_size[i] = (u32)pci_resource_len(pdev, i);
@@ -4851,7 +4849,7 @@ static int skd_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
4851 (SKD_START_WAIT_SECONDS * HZ)); 4849 (SKD_START_WAIT_SECONDS * HZ));
4852 if (skdev->gendisk_on > 0) { 4850 if (skdev->gendisk_on > 0) {
4853 /* device came on-line after reset */ 4851 /* device came on-line after reset */
4854 skd_bdev_attach(skdev); 4852 skd_bdev_attach(&pdev->dev, skdev);
4855 rc = 0; 4853 rc = 0;
4856 } else { 4854 } else {
4857 /* we timed out, something is wrong with the device, 4855 /* we timed out, something is wrong with the device,
diff --git a/drivers/block/sunvdc.c b/drivers/block/sunvdc.c
index 4b911ed96ea3..cab157331c4e 100644
--- a/drivers/block/sunvdc.c
+++ b/drivers/block/sunvdc.c
@@ -804,7 +804,6 @@ static int probe_disk(struct vdc_port *port)
804 g->fops = &vdc_fops; 804 g->fops = &vdc_fops;
805 g->queue = q; 805 g->queue = q;
806 g->private_data = port; 806 g->private_data = port;
807 g->driverfs_dev = &port->vio.vdev->dev;
808 807
809 set_capacity(g, port->vdisk_size); 808 set_capacity(g, port->vdisk_size);
810 809
@@ -835,7 +834,7 @@ static int probe_disk(struct vdc_port *port)
835 port->vdisk_size, (port->vdisk_size >> (20 - 9)), 834 port->vdisk_size, (port->vdisk_size >> (20 - 9)),
836 port->vio.ver.major, port->vio.ver.minor); 835 port->vio.ver.major, port->vio.ver.minor);
837 836
838 add_disk(g); 837 device_add_disk(&port->vio.vdev->dev, g);
839 838
840 return 0; 839 return 0;
841} 840}
diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c
index 18e4069dd24b..5fd2e0ac2711 100644
--- a/drivers/block/virtio_blk.c
+++ b/drivers/block/virtio_blk.c
@@ -656,7 +656,6 @@ static int virtblk_probe(struct virtio_device *vdev)
656 vblk->disk->first_minor = index_to_minor(index); 656 vblk->disk->first_minor = index_to_minor(index);
657 vblk->disk->private_data = vblk; 657 vblk->disk->private_data = vblk;
658 vblk->disk->fops = &virtblk_fops; 658 vblk->disk->fops = &virtblk_fops;
659 vblk->disk->driverfs_dev = &vdev->dev;
660 vblk->disk->flags |= GENHD_FL_EXT_DEVT; 659 vblk->disk->flags |= GENHD_FL_EXT_DEVT;
661 vblk->index = index; 660 vblk->index = index;
662 661
@@ -733,7 +732,7 @@ static int virtblk_probe(struct virtio_device *vdev)
733 732
734 virtio_device_ready(vdev); 733 virtio_device_ready(vdev);
735 734
736 add_disk(vblk->disk); 735 device_add_disk(&vdev->dev, vblk->disk);
737 err = device_create_file(disk_to_dev(vblk->disk), &dev_attr_serial); 736 err = device_create_file(disk_to_dev(vblk->disk), &dev_attr_serial);
738 if (err) 737 if (err)
739 goto out_del_disk; 738 goto out_del_disk;
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
index 10711292da2c..89525d10d1a7 100644
--- a/drivers/block/xen-blkfront.c
+++ b/drivers/block/xen-blkfront.c
@@ -1137,7 +1137,6 @@ static int xlvbd_alloc_gendisk(blkif_sector_t capacity,
1137 gd->first_minor = minor; 1137 gd->first_minor = minor;
1138 gd->fops = &xlvbd_block_fops; 1138 gd->fops = &xlvbd_block_fops;
1139 gd->private_data = info; 1139 gd->private_data = info;
1140 gd->driverfs_dev = &(info->xbdev->dev);
1141 set_capacity(gd, capacity); 1140 set_capacity(gd, capacity);
1142 1141
1143 if (xlvbd_init_blk_queue(gd, sector_size, physical_sector_size, 1142 if (xlvbd_init_blk_queue(gd, sector_size, physical_sector_size,
@@ -2463,7 +2462,7 @@ static void blkfront_connect(struct blkfront_info *info)
2463 for (i = 0; i < info->nr_rings; i++) 2462 for (i = 0; i < info->nr_rings; i++)
2464 kick_pending_request_queues(&info->rinfo[i]); 2463 kick_pending_request_queues(&info->rinfo[i]);
2465 2464
2466 add_disk(info->gd); 2465 device_add_disk(&info->xbdev->dev, info->gd);
2467 2466
2468 info->is_ready = 1; 2467 info->is_ready = 1;
2469} 2468}
diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c
index ef907fd5ba98..bf9a2ad296ed 100644
--- a/drivers/ide/ide-cd.c
+++ b/drivers/ide/ide-cd.c
@@ -1770,7 +1770,6 @@ static int ide_cd_probe(ide_drive_t *drive)
1770 drive->driver_data = info; 1770 drive->driver_data = info;
1771 1771
1772 g->minors = 1; 1772 g->minors = 1;
1773 g->driverfs_dev = &drive->gendev;
1774 g->flags = GENHD_FL_CD | GENHD_FL_REMOVABLE; 1773 g->flags = GENHD_FL_CD | GENHD_FL_REMOVABLE;
1775 if (ide_cdrom_setup(drive)) { 1774 if (ide_cdrom_setup(drive)) {
1776 put_device(&info->dev); 1775 put_device(&info->dev);
@@ -1780,7 +1779,7 @@ static int ide_cd_probe(ide_drive_t *drive)
1780 ide_cd_read_toc(drive, &sense); 1779 ide_cd_read_toc(drive, &sense);
1781 g->fops = &idecd_ops; 1780 g->fops = &idecd_ops;
1782 g->flags |= GENHD_FL_REMOVABLE | GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE; 1781 g->flags |= GENHD_FL_REMOVABLE | GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE;
1783 add_disk(g); 1782 device_add_disk(&drive->gendev, g);
1784 return 0; 1783 return 0;
1785 1784
1786out_free_disk: 1785out_free_disk:
diff --git a/drivers/ide/ide-gd.c b/drivers/ide/ide-gd.c
index 838996a0039e..e823394ed543 100644
--- a/drivers/ide/ide-gd.c
+++ b/drivers/ide/ide-gd.c
@@ -412,12 +412,11 @@ static int ide_gd_probe(ide_drive_t *drive)
412 set_capacity(g, ide_gd_capacity(drive)); 412 set_capacity(g, ide_gd_capacity(drive));
413 413
414 g->minors = IDE_DISK_MINORS; 414 g->minors = IDE_DISK_MINORS;
415 g->driverfs_dev = &drive->gendev;
416 g->flags |= GENHD_FL_EXT_DEVT; 415 g->flags |= GENHD_FL_EXT_DEVT;
417 if (drive->dev_flags & IDE_DFLAG_REMOVABLE) 416 if (drive->dev_flags & IDE_DFLAG_REMOVABLE)
418 g->flags = GENHD_FL_REMOVABLE; 417 g->flags = GENHD_FL_REMOVABLE;
419 g->fops = &ide_gd_ops; 418 g->fops = &ide_gd_ops;
420 add_disk(g); 419 device_add_disk(&drive->gendev, g);
421 return 0; 420 return 0;
422 421
423out_free_disk: 422out_free_disk:
diff --git a/drivers/memstick/core/ms_block.c b/drivers/memstick/core/ms_block.c
index 3cd68152ddf8..0fc43c7cc93c 100644
--- a/drivers/memstick/core/ms_block.c
+++ b/drivers/memstick/core/ms_block.c
@@ -2146,7 +2146,6 @@ static int msb_init_disk(struct memstick_dev *card)
2146 msb->disk->fops = &msb_bdops; 2146 msb->disk->fops = &msb_bdops;
2147 msb->disk->private_data = msb; 2147 msb->disk->private_data = msb;
2148 msb->disk->queue = msb->queue; 2148 msb->disk->queue = msb->queue;
2149 msb->disk->driverfs_dev = &card->dev;
2150 msb->disk->flags |= GENHD_FL_EXT_DEVT; 2149 msb->disk->flags |= GENHD_FL_EXT_DEVT;
2151 2150
2152 capacity = msb->pages_in_block * msb->logical_block_count; 2151 capacity = msb->pages_in_block * msb->logical_block_count;
@@ -2163,7 +2162,7 @@ static int msb_init_disk(struct memstick_dev *card)
2163 set_disk_ro(msb->disk, 1); 2162 set_disk_ro(msb->disk, 1);
2164 2163
2165 msb_start(card); 2164 msb_start(card);
2166 add_disk(msb->disk); 2165 device_add_disk(&card->dev, msb->disk);
2167 dbg("Disk added"); 2166 dbg("Disk added");
2168 return 0; 2167 return 0;
2169 2168
diff --git a/drivers/memstick/core/mspro_block.c b/drivers/memstick/core/mspro_block.c
index 0fb27d338811..25b66c540457 100644
--- a/drivers/memstick/core/mspro_block.c
+++ b/drivers/memstick/core/mspro_block.c
@@ -1243,7 +1243,6 @@ static int mspro_block_init_disk(struct memstick_dev *card)
1243 msb->usage_count = 1; 1243 msb->usage_count = 1;
1244 msb->disk->private_data = msb; 1244 msb->disk->private_data = msb;
1245 msb->disk->queue = msb->queue; 1245 msb->disk->queue = msb->queue;
1246 msb->disk->driverfs_dev = &card->dev;
1247 1246
1248 sprintf(msb->disk->disk_name, "mspblk%d", disk_id); 1247 sprintf(msb->disk->disk_name, "mspblk%d", disk_id);
1249 1248
@@ -1255,7 +1254,7 @@ static int mspro_block_init_disk(struct memstick_dev *card)
1255 set_capacity(msb->disk, capacity); 1254 set_capacity(msb->disk, capacity);
1256 dev_dbg(&card->dev, "capacity set %ld\n", capacity); 1255 dev_dbg(&card->dev, "capacity set %ld\n", capacity);
1257 1256
1258 add_disk(msb->disk); 1257 device_add_disk(&card->dev, msb->disk);
1259 msb->active = 1; 1258 msb->active = 1;
1260 return 0; 1259 return 0;
1261 1260
diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c
index 78b3eb45faf6..8d58acf33021 100644
--- a/drivers/mtd/mtd_blkdevs.c
+++ b/drivers/mtd/mtd_blkdevs.c
@@ -431,12 +431,10 @@ int add_mtd_blktrans_dev(struct mtd_blktrans_dev *new)
431 goto error4; 431 goto error4;
432 INIT_WORK(&new->work, mtd_blktrans_work); 432 INIT_WORK(&new->work, mtd_blktrans_work);
433 433
434 gd->driverfs_dev = &new->mtd->dev;
435
436 if (new->readonly) 434 if (new->readonly)
437 set_disk_ro(gd, 1); 435 set_disk_ro(gd, 1);
438 436
439 add_disk(gd); 437 device_add_disk(&new->mtd->dev, gd);
440 438
441 if (new->disk_attributes) { 439 if (new->disk_attributes) {
442 ret = sysfs_create_group(&disk_to_dev(gd)->kobj, 440 ret = sysfs_create_group(&disk_to_dev(gd)->kobj,
diff --git a/drivers/nvdimm/blk.c b/drivers/nvdimm/blk.c
index 495e06d9f7e7..7e262ef06ede 100644
--- a/drivers/nvdimm/blk.c
+++ b/drivers/nvdimm/blk.c
@@ -287,14 +287,13 @@ static int nsblk_attach_disk(struct nd_namespace_blk *nsblk)
287 return -ENOMEM; 287 return -ENOMEM;
288 } 288 }
289 289
290 disk->driverfs_dev = dev;
291 disk->first_minor = 0; 290 disk->first_minor = 0;
292 disk->fops = &nd_blk_fops; 291 disk->fops = &nd_blk_fops;
293 disk->queue = q; 292 disk->queue = q;
294 disk->flags = GENHD_FL_EXT_DEVT; 293 disk->flags = GENHD_FL_EXT_DEVT;
295 nvdimm_namespace_disk_name(&nsblk->common, disk->disk_name); 294 nvdimm_namespace_disk_name(&nsblk->common, disk->disk_name);
296 set_capacity(disk, 0); 295 set_capacity(disk, 0);
297 add_disk(disk); 296 device_add_disk(dev, disk);
298 297
299 if (nsblk_meta_size(nsblk)) { 298 if (nsblk_meta_size(nsblk)) {
300 int rc = nd_integrity_init(disk, nsblk_meta_size(nsblk)); 299 int rc = nd_integrity_init(disk, nsblk_meta_size(nsblk));
diff --git a/drivers/nvdimm/btt.c b/drivers/nvdimm/btt.c
index 68a7c3c1eed9..9dce03f420eb 100644
--- a/drivers/nvdimm/btt.c
+++ b/drivers/nvdimm/btt.c
@@ -1243,7 +1243,6 @@ static int btt_blk_init(struct btt *btt)
1243 } 1243 }
1244 1244
1245 nvdimm_namespace_disk_name(ndns, btt->btt_disk->disk_name); 1245 nvdimm_namespace_disk_name(ndns, btt->btt_disk->disk_name);
1246 btt->btt_disk->driverfs_dev = &btt->nd_btt->dev;
1247 btt->btt_disk->first_minor = 0; 1246 btt->btt_disk->first_minor = 0;
1248 btt->btt_disk->fops = &btt_fops; 1247 btt->btt_disk->fops = &btt_fops;
1249 btt->btt_disk->private_data = btt; 1248 btt->btt_disk->private_data = btt;
@@ -1258,7 +1257,7 @@ static int btt_blk_init(struct btt *btt)
1258 btt->btt_queue->queuedata = btt; 1257 btt->btt_queue->queuedata = btt;
1259 1258
1260 set_capacity(btt->btt_disk, 0); 1259 set_capacity(btt->btt_disk, 0);
1261 add_disk(btt->btt_disk); 1260 device_add_disk(&btt->nd_btt->dev, btt->btt_disk);
1262 if (btt_meta_size(btt)) { 1261 if (btt_meta_size(btt)) {
1263 int rc = nd_integrity_init(btt->btt_disk, btt_meta_size(btt)); 1262 int rc = nd_integrity_init(btt->btt_disk, btt_meta_size(btt));
1264 1263
diff --git a/drivers/nvdimm/pmem.c b/drivers/nvdimm/pmem.c
index 608fc4464574..066e07d9330f 100644
--- a/drivers/nvdimm/pmem.c
+++ b/drivers/nvdimm/pmem.c
@@ -297,14 +297,13 @@ static int pmem_attach_disk(struct device *dev,
297 disk->queue = q; 297 disk->queue = q;
298 disk->flags = GENHD_FL_EXT_DEVT; 298 disk->flags = GENHD_FL_EXT_DEVT;
299 nvdimm_namespace_disk_name(ndns, disk->disk_name); 299 nvdimm_namespace_disk_name(ndns, disk->disk_name);
300 disk->driverfs_dev = dev;
301 set_capacity(disk, (pmem->size - pmem->pfn_pad - pmem->data_offset) 300 set_capacity(disk, (pmem->size - pmem->pfn_pad - pmem->data_offset)
302 / 512); 301 / 512);
303 if (devm_init_badblocks(dev, &pmem->bb)) 302 if (devm_init_badblocks(dev, &pmem->bb))
304 return -ENOMEM; 303 return -ENOMEM;
305 nvdimm_badblocks_populate(to_nd_region(dev->parent), &pmem->bb, res); 304 nvdimm_badblocks_populate(to_nd_region(dev->parent), &pmem->bb, res);
306 disk->bb = &pmem->bb; 305 disk->bb = &pmem->bb;
307 add_disk(disk); 306 device_add_disk(dev, disk);
308 revalidate_disk(disk); 307 revalidate_disk(disk);
309 308
310 return 0; 309 return 0;
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 9d7cee463fd6..959173bfe9f0 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -1480,7 +1480,6 @@ static void nvme_alloc_ns(struct nvme_ctrl *ctrl, unsigned nsid)
1480 disk->fops = &nvme_fops; 1480 disk->fops = &nvme_fops;
1481 disk->private_data = ns; 1481 disk->private_data = ns;
1482 disk->queue = ns->queue; 1482 disk->queue = ns->queue;
1483 disk->driverfs_dev = ctrl->device;
1484 disk->flags = GENHD_FL_EXT_DEVT; 1483 disk->flags = GENHD_FL_EXT_DEVT;
1485 sprintf(disk->disk_name, "nvme%dn%d", ctrl->instance, ns->instance); 1484 sprintf(disk->disk_name, "nvme%dn%d", ctrl->instance, ns->instance);
1486 1485
@@ -1492,7 +1491,7 @@ static void nvme_alloc_ns(struct nvme_ctrl *ctrl, unsigned nsid)
1492 if (ns->type == NVME_NS_LIGHTNVM) 1491 if (ns->type == NVME_NS_LIGHTNVM)
1493 return; 1492 return;
1494 1493
1495 add_disk(ns->disk); 1494 device_add_disk(ctrl->device, ns->disk);
1496 if (sysfs_create_group(&disk_to_dev(ns->disk)->kobj, 1495 if (sysfs_create_group(&disk_to_dev(ns->disk)->kobj,
1497 &nvme_ns_attr_group)) 1496 &nvme_ns_attr_group))
1498 pr_warn("%s: failed to create sysfs group for identification\n", 1497 pr_warn("%s: failed to create sysfs group for identification\n",
diff --git a/drivers/s390/block/dasd_genhd.c b/drivers/s390/block/dasd_genhd.c
index 31d544a87ba9..e2fa759bf2ad 100644
--- a/drivers/s390/block/dasd_genhd.c
+++ b/drivers/s390/block/dasd_genhd.c
@@ -45,7 +45,6 @@ int dasd_gendisk_alloc(struct dasd_block *block)
45 gdp->major = DASD_MAJOR; 45 gdp->major = DASD_MAJOR;
46 gdp->first_minor = base->devindex << DASD_PARTN_BITS; 46 gdp->first_minor = base->devindex << DASD_PARTN_BITS;
47 gdp->fops = &dasd_device_operations; 47 gdp->fops = &dasd_device_operations;
48 gdp->driverfs_dev = &base->cdev->dev;
49 48
50 /* 49 /*
51 * Set device name. 50 * Set device name.
@@ -76,7 +75,7 @@ int dasd_gendisk_alloc(struct dasd_block *block)
76 gdp->queue = block->request_queue; 75 gdp->queue = block->request_queue;
77 block->gdp = gdp; 76 block->gdp = gdp;
78 set_capacity(block->gdp, 0); 77 set_capacity(block->gdp, 0);
79 add_disk(block->gdp); 78 device_add_disk(&base->cdev->dev, block->gdp);
80 return 0; 79 return 0;
81} 80}
82 81
diff --git a/drivers/s390/block/dcssblk.c b/drivers/s390/block/dcssblk.c
index bed53c46dd90..2f056b2662f6 100644
--- a/drivers/s390/block/dcssblk.c
+++ b/drivers/s390/block/dcssblk.c
@@ -615,7 +615,6 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char
615 dev_info->dcssblk_queue = blk_alloc_queue(GFP_KERNEL); 615 dev_info->dcssblk_queue = blk_alloc_queue(GFP_KERNEL);
616 dev_info->gd->queue = dev_info->dcssblk_queue; 616 dev_info->gd->queue = dev_info->dcssblk_queue;
617 dev_info->gd->private_data = dev_info; 617 dev_info->gd->private_data = dev_info;
618 dev_info->gd->driverfs_dev = &dev_info->dev;
619 blk_queue_make_request(dev_info->dcssblk_queue, dcssblk_make_request); 618 blk_queue_make_request(dev_info->dcssblk_queue, dcssblk_make_request);
620 blk_queue_logical_block_size(dev_info->dcssblk_queue, 4096); 619 blk_queue_logical_block_size(dev_info->dcssblk_queue, 4096);
621 620
@@ -655,7 +654,7 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char
655 goto put_dev; 654 goto put_dev;
656 655
657 get_device(&dev_info->dev); 656 get_device(&dev_info->dev);
658 add_disk(dev_info->gd); 657 device_add_disk(&dev_info->dev, dev_info->gd);
659 658
660 switch (dev_info->segment_type) { 659 switch (dev_info->segment_type) {
661 case SEG_TYPE_SR: 660 case SEG_TYPE_SR:
diff --git a/drivers/s390/block/scm_blk.c b/drivers/s390/block/scm_blk.c
index e6f54d3b8969..9f16ea6964ec 100644
--- a/drivers/s390/block/scm_blk.c
+++ b/drivers/s390/block/scm_blk.c
@@ -512,7 +512,6 @@ int scm_blk_dev_setup(struct scm_blk_dev *bdev, struct scm_device *scmdev)
512 goto out_queue; 512 goto out_queue;
513 513
514 rq->queuedata = scmdev; 514 rq->queuedata = scmdev;
515 bdev->gendisk->driverfs_dev = &scmdev->dev;
516 bdev->gendisk->private_data = scmdev; 515 bdev->gendisk->private_data = scmdev;
517 bdev->gendisk->fops = &scm_blk_devops; 516 bdev->gendisk->fops = &scm_blk_devops;
518 bdev->gendisk->queue = rq; 517 bdev->gendisk->queue = rq;
@@ -531,7 +530,7 @@ int scm_blk_dev_setup(struct scm_blk_dev *bdev, struct scm_device *scmdev)
531 530
532 /* 512 byte sectors */ 531 /* 512 byte sectors */
533 set_capacity(bdev->gendisk, scmdev->size >> 9); 532 set_capacity(bdev->gendisk, scmdev->size >> 9);
534 add_disk(bdev->gendisk); 533 device_add_disk(&scmdev->dev, bdev->gendisk);
535 return 0; 534 return 0;
536 535
537out_queue: 536out_queue:
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index 5a9db0fe1ee0..84b9373309dd 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -2994,7 +2994,6 @@ static void sd_probe_async(void *data, async_cookie_t cookie)
2994 2994
2995 sd_revalidate_disk(gd); 2995 sd_revalidate_disk(gd);
2996 2996
2997 gd->driverfs_dev = &sdp->sdev_gendev;
2998 gd->flags = GENHD_FL_EXT_DEVT; 2997 gd->flags = GENHD_FL_EXT_DEVT;
2999 if (sdp->removable) { 2998 if (sdp->removable) {
3000 gd->flags |= GENHD_FL_REMOVABLE; 2999 gd->flags |= GENHD_FL_REMOVABLE;
@@ -3002,7 +3001,7 @@ static void sd_probe_async(void *data, async_cookie_t cookie)
3002 } 3001 }
3003 3002
3004 blk_pm_runtime_init(sdp->request_queue, dev); 3003 blk_pm_runtime_init(sdp->request_queue, dev);
3005 add_disk(gd); 3004 device_add_disk(dev, gd);
3006 if (sdkp->capacity) 3005 if (sdkp->capacity)
3007 sd_dif_config_host(sdkp); 3006 sd_dif_config_host(sdkp);
3008 3007
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c
index 64c867405ad4..ed179348de80 100644
--- a/drivers/scsi/sr.c
+++ b/drivers/scsi/sr.c
@@ -713,7 +713,6 @@ static int sr_probe(struct device *dev)
713 get_capabilities(cd); 713 get_capabilities(cd);
714 sr_vendor_init(cd); 714 sr_vendor_init(cd);
715 715
716 disk->driverfs_dev = &sdev->sdev_gendev;
717 set_capacity(disk, cd->capacity); 716 set_capacity(disk, cd->capacity);
718 disk->private_data = &cd->driver; 717 disk->private_data = &cd->driver;
719 disk->queue = sdev->request_queue; 718 disk->queue = sdev->request_queue;
@@ -730,7 +729,7 @@ static int sr_probe(struct device *dev)
730 729
731 dev_set_drvdata(dev, cd); 730 dev_set_drvdata(dev, cd);
732 disk->flags |= GENHD_FL_REMOVABLE; 731 disk->flags |= GENHD_FL_REMOVABLE;
733 add_disk(disk); 732 device_add_disk(&sdev->sdev_gendev, disk);
734 733
735 sdev_printk(KERN_DEBUG, sdev, 734 sdev_printk(KERN_DEBUG, sdev,
736 "Attached scsi CD-ROM %s\n", cd->cdi.name); 735 "Attached scsi CD-ROM %s\n", cd->cdi.name);