[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <YqL9Ou+UlweAH/Me@infradead.org>
Date: Fri, 10 Jun 2022 01:13:46 -0700
From: Christoph Hellwig <hch@...radead.org>
To: Sun Feng <loyou85@...il.com>
Cc: axboe@...nel.dk, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] block: fix attribute_group lost if set before add_disk
On Fri, Jun 10, 2022 at 03:16:29PM +0800, Sun Feng wrote:
> after commit 52b85909f85d("block: fold register_disk into device_add_disk")
> when set attribute_group with following code:
>
> disk_to_dev(disk)->groups = attr_groups;
> err = add_disk(disk);
>
> disk_to_dev(disk)->groups will set to NULL in device_add_disk,
>
> static inline int __must_check add_disk(struct gendisk *disk)
> {
> return device_add_disk(NULL, disk, NULL);
> }
> int __must_check device_add_disk(struct device *parent, ...
> const struct attribute_group **groups)
> {
> …
> ddev->groups = groups
>
> and it will lose attribute group set.
Well, your are not supposed to set the attribute group yourself, but
instead pass it to device_add_disk.
Powered by blists - more mailing lists