[PATCH 0/5] genhd: implement device_add_disk_with_groups()

Hannes Reinecke
2018-07-25T06:28:35Z

When creating a block device some drivers need to create additional sysfs
groups to store driver-specific informations.
With the current workflow of adding these groups with a separate call to
sysfs after the device has been created we are introducing a race with udev,
as the uevent is generated before the sysfs attributes are created, and udev
fails to read the required information.

This patchset adds a new function 'device_add_disk_with_groups()' and converts
the obvious candidates to use this new function.

As usual, comments and reviews are welcome.

Hannes Reinecke (5):
genhd: drop 'bool' argument from __device_add_disk()
block: genhd: add device_add_disk_with_groups
nvme: register ns_id attributes as default sysfs groups
aoe: use device_add_disk_with_groups()
zram: use device_add_disk_with_groups()

block/genhd.c | 38 ++++++++++++++++++++++++++++++--------
drivers/block/aoe/aoe.h | 1 -
drivers/block/aoe/aoeblk.c | 21 +++++++--------------
drivers/block/aoe/aoedev.c | 1 -
drivers/block/zram/zram_drv.c | 28 +++++++---------------------
drivers/nvme/host/core.c | 14 +++++++-------
drivers/nvme/host/multipath.c | 12 +++---------
drivers/nvme/host/nvme.h | 2 +-
include/linux/genhd.h | 3 +++
9 files changed, 58 insertions(+), 62 deletions(-)

--
2.12.3