From patchwork Fri Sep 28 06:17:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hannes Reinecke X-Patchwork-Id: 10618975 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9A98F14BD for ; Fri, 28 Sep 2018 06:17:28 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 75A4D2A91E for ; Fri, 28 Sep 2018 06:17:28 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 535F52A973; Fri, 28 Sep 2018 06:17:28 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CBF792A91E for ; Fri, 28 Sep 2018 06:17:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727421AbeI1Mje (ORCPT ); Fri, 28 Sep 2018 08:39:34 -0400 Received: from mx2.suse.de ([195.135.220.15]:50550 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726473AbeI1Mje (ORCPT ); Fri, 28 Sep 2018 08:39:34 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 0EF27B0CA; Fri, 28 Sep 2018 06:17:25 +0000 (UTC) From: Hannes Reinecke To: Christoph Hellwig Cc: Bart van Assche , Jens Axboe , Sagi Grimberg , Keith Busch , linux-block@vger.kernel.org, linux-nvme@lists.infradead.org, Hannes Reinecke Subject: [PATCHv4 0/5] genhd: register default groups with device_add_disk() Date: Fri, 28 Sep 2018 08:17:18 +0200 Message-Id: <20180928061723.13180-1-hare@suse.de> X-Mailer: git-send-email 2.16.4 Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP device_add_disk() doesn't allow to register with default sysfs groups, which introduces a race with udev as these groups have to be created after the uevent has been sent. This patchset updates device_add_disk() to accept a 'groups' argument to avoid this race and updates the obvious drivers to use it. There are some more drivers which might benefit from this (eg loop or md), but the interface is not straightforward so I haven't attempted it. As usual, comments and reviews are welcome. Changes to v3: - Better check in is_visible for lightnvm attributes as suggested by hch Changes to v2: - Fold lightnvm attributes into the generic attribute group as suggested by Bart Changes to v1: - Drop first patch - Convert lightnvm sysfs attributes as suggested by Bart Hannes Reinecke (5): block: genhd: add 'groups' argument to device_add_disk nvme: register ns_id attributes as default sysfs groups aoe: register default groups with device_add_disk() zram: register default groups with device_add_disk() virtio-blk: modernize sysfs attribute creation arch/um/drivers/ubd_kern.c | 2 +- block/genhd.c | 19 +++++-- drivers/block/aoe/aoe.h | 1 - drivers/block/aoe/aoeblk.c | 21 +++----- drivers/block/aoe/aoedev.c | 1 - drivers/block/floppy.c | 2 +- drivers/block/mtip32xx/mtip32xx.c | 2 +- drivers/block/ps3disk.c | 2 +- drivers/block/ps3vram.c | 2 +- drivers/block/rsxx/dev.c | 2 +- drivers/block/skd_main.c | 2 +- drivers/block/sunvdc.c | 2 +- drivers/block/virtio_blk.c | 68 +++++++++++++---------- drivers/block/xen-blkfront.c | 2 +- drivers/block/zram/zram_drv.c | 28 +++------- drivers/ide/ide-cd.c | 2 +- drivers/ide/ide-gd.c | 2 +- drivers/memstick/core/ms_block.c | 2 +- drivers/memstick/core/mspro_block.c | 2 +- drivers/mmc/core/block.c | 2 +- drivers/mtd/mtd_blkdevs.c | 2 +- drivers/nvdimm/blk.c | 2 +- drivers/nvdimm/btt.c | 2 +- drivers/nvdimm/pmem.c | 2 +- drivers/nvme/host/core.c | 21 ++++---- drivers/nvme/host/lightnvm.c | 105 +++++++++++++++--------------------- drivers/nvme/host/multipath.c | 15 ++---- drivers/nvme/host/nvme.h | 10 +--- drivers/s390/block/dasd_genhd.c | 2 +- drivers/s390/block/dcssblk.c | 2 +- drivers/s390/block/scm_blk.c | 2 +- drivers/scsi/sd.c | 2 +- drivers/scsi/sr.c | 2 +- include/linux/genhd.h | 5 +- 34 files changed, 152 insertions(+), 188 deletions(-)