Displaying 14 results from an estimated 14 matches for "register_disk".
2016 Jun 30
0
[PATCH v2 02/12] genhd: Honor gen_uevent and add disk_gen_uevents
...++----
include/linux/genhd.h | 1 +
2 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/block/genhd.c b/block/genhd.c
index 8e1bfa1..9b66953 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -506,12 +506,10 @@ static int exact_lock(dev_t devt, void *data)
return 0;
}
-static void register_disk(struct gendisk *disk)
+static void register_disk(struct gendisk *disk, bool gen_uevent)
{
struct device *ddev = disk_to_dev(disk);
struct block_device *bdev;
- struct disk_part_iter piter;
- struct hd_struct *part;
int err;
ddev->parent = disk->driverfs_dev;
@@ -563,6 +561,22 @@ st...
2016 Aug 17
2
[PATCH 06/15] genhd: Add return code to device_add_disk
...eue->backing_dev_info;
> - bdi_register_owner(bdi, disk_to_dev(disk));
> + retval = bdi_register_owner(bdi, disk_to_dev(disk));
> + if (retval)
> + goto fail;
>
> - blk_register_region(disk_devt(disk), disk->minors, NULL,
> - exact_match, exact_lock, disk);
> - register_disk(parent, disk);
> - blk_register_queue(disk);
> + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> + exact_match, exact_lock, disk);
> + if (retval)
> + goto fail;
> + retval = register_disk(parent, disk);
> + if (retval)
> + goto fail;
> +...
2016 Aug 17
2
[PATCH 06/15] genhd: Add return code to device_add_disk
...eue->backing_dev_info;
> - bdi_register_owner(bdi, disk_to_dev(disk));
> + retval = bdi_register_owner(bdi, disk_to_dev(disk));
> + if (retval)
> + goto fail;
>
> - blk_register_region(disk_devt(disk), disk->minors, NULL,
> - exact_match, exact_lock, disk);
> - register_disk(parent, disk);
> - blk_register_queue(disk);
> + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> + exact_match, exact_lock, disk);
> + if (retval)
> + goto fail;
> + retval = register_disk(parent, disk);
> + if (retval)
> + goto fail;
> +...
2016 Aug 17
2
[PATCH 06/15] genhd: Add return code to device_add_disk
...isk));
> > > + retval = bdi_register_owner(bdi, disk_to_dev(disk));
> > > + if (retval)
> > > + goto fail;
> > >
> > > - blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > - exact_match, exact_lock, disk);
> > > - register_disk(parent, disk);
> > > - blk_register_queue(disk);
> > > + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > + exact_match, exact_lock, disk);
> > > + if (retval)
> > > + goto fail;
> > > + retval = register_disk(...
2016 Aug 17
2
[PATCH 06/15] genhd: Add return code to device_add_disk
...isk));
> > > + retval = bdi_register_owner(bdi, disk_to_dev(disk));
> > > + if (retval)
> > > + goto fail;
> > >
> > > - blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > - exact_match, exact_lock, disk);
> > > - register_disk(parent, disk);
> > > - blk_register_queue(disk);
> > > + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > + exact_match, exact_lock, disk);
> > > + if (retval)
> > > + goto fail;
> > > + retval = register_disk(...
2016 Aug 17
0
[PATCH 06/15] genhd: Add return code to device_add_disk
...i_register_owner(bdi, disk_to_dev(disk));
> > + retval = bdi_register_owner(bdi, disk_to_dev(disk));
> > + if (retval)
> > + goto fail;
> >
> > - blk_register_region(disk_devt(disk), disk->minors, NULL,
> > - exact_match, exact_lock, disk);
> > - register_disk(parent, disk);
> > - blk_register_queue(disk);
> > + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> > + exact_match, exact_lock, disk);
> > + if (retval)
> > + goto fail;
> > + retval = register_disk(parent, disk);
> > + if...
2016 Aug 17
0
[PATCH 06/15] genhd: Add return code to device_add_disk
...t from bdev */
bdi = &disk->queue->backing_dev_info;
- bdi_register_owner(bdi, disk_to_dev(disk));
+ retval = bdi_register_owner(bdi, disk_to_dev(disk));
+ if (retval)
+ goto fail;
- blk_register_region(disk_devt(disk), disk->minors, NULL,
- exact_match, exact_lock, disk);
- register_disk(parent, disk);
- blk_register_queue(disk);
+ retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
+ exact_match, exact_lock, disk);
+ if (retval)
+ goto fail;
+ retval = register_disk(parent, disk);
+ if (retval)
+ goto fail;
+ retval = blk_register_queue(disk);
+ if (retv...
2016 Aug 17
0
[PATCH 06/15] genhd: Add return code to device_add_disk
...= bdi_register_owner(bdi, disk_to_dev(disk));
> > > > + if (retval)
> > > > + goto fail;
> > > >
> > > > - blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > > - exact_match, exact_lock, disk);
> > > > - register_disk(parent, disk);
> > > > - blk_register_queue(disk);
> > > > + retval = blk_register_region(disk_devt(disk), disk->minors, NULL,
> > > > + exact_match, exact_lock, disk);
> > > > + if (retval)
> > > > + goto fail;
> > >...
2016 Aug 17
20
[PATCH 00/15] Fix issue with KOBJ_ADD uevent versus disk attributes
...e fix here is to pass attr_groups from callers to device_add_disk, so it can
be added before KOBJ_ADD.
Also add basic error handling around device_add_disk code, (or add FIXME
comment where work is left).
Fam Zheng (15):
disk: Drop add_disk in favor of device_add_disk
genhd: Return error from register_disk()
genhd: Return error from blk_register_region
block: Return error from blk_integrity_add
genhd: Return error from disk_{add,alloc}_events
genhd: Add return code to device_add_disk
genhd: Add attribute group parameter to device_add_disk
nvme: Pass attribute group to device_add_disk
vi...
2016 Aug 17
20
[PATCH 00/15] Fix issue with KOBJ_ADD uevent versus disk attributes
...e fix here is to pass attr_groups from callers to device_add_disk, so it can
be added before KOBJ_ADD.
Also add basic error handling around device_add_disk code, (or add FIXME
comment where work is left).
Fam Zheng (15):
disk: Drop add_disk in favor of device_add_disk
genhd: Return error from register_disk()
genhd: Return error from blk_register_region
block: Return error from blk_integrity_add
genhd: Return error from disk_{add,alloc}_events
genhd: Add return code to device_add_disk
genhd: Add attribute group parameter to device_add_disk
nvme: Pass attribute group to device_add_disk
vi...
2016 Jun 30
17
[PATCH v2 00/12] gendisk: Generate uevent after attribute available
The race condition is noticed between disk_add() and disk attributes, on
virtio-blk hotplug.
Userspace listens to the KOBJ_ADD uevent generated in add_disk(). At that
point we haven't created the serial attribute file, therefore depending
on how fast udev reacts, the /dev/disk/by-id/ entry doesn't always get
created.
As pointed out by Christoph Hellwig in the specific fix [1], virtio-blk
2016 Jun 30
17
[PATCH v2 00/12] gendisk: Generate uevent after attribute available
The race condition is noticed between disk_add() and disk attributes, on
virtio-blk hotplug.
Userspace listens to the KOBJ_ADD uevent generated in add_disk(). At that
point we haven't created the serial attribute file, therefore depending
on how fast udev reacts, the /dev/disk/by-id/ entry doesn't always get
created.
As pointed out by Christoph Hellwig in the specific fix [1], virtio-blk
2013 Aug 12
6
3TB External USB Drive isn't recognized
...sk+0xb74/0xc86 [<ffffffff8010c257>]
efi_partition+0x0/0x5d4 [<ffffffff8010ad6c>] rescan_partitions+0x132/0x279
[<ffffffff800e56b0>] do_open+0x231/0x30f [<ffffffff800e589c>]
__blkdev_get+0x6a/0x7c [<ffffffff8002d0e8>] wake_up_bit+0x11/0x22
[<ffffffff8010abdd>] register_disk+0x133/0x190 [<ffffffff801479df>]
add_disk+0x34/0x3d [<ffffffff880a9492>] :sd_mod:sd_probe+0x2f7/0x355
[<ffffffff80056e02>] netlink_broadcast+0x2a9/0x2f1 [<ffffffff801c7d26>]
driver_probe_device+0x52/0xaa [<ffffffff801c7d7e>] __device_attach+0x0/0x5
[<ffffffff801...
2020 Sep 01
10
remove revalidate_disk()
Hi Jens,
this series removes the revalidate_disk() function, which has been a
really odd duck in the last years. The prime reason why most people
use it is because it propagates a size change from the gendisk to
the block_device structure. But it also calls into the rather ill
defined ->revalidate_disk method which is rather useless for the
callers. So this adds a new helper to just