From: Christoph Hellwig <hch@lst.de>
To: John Garry <john.g.garry@oracle.com>
Cc: Christoph Hellwig <hch@lst.de>, Jens Axboe <axboe@kernel.dk>,
Damien Le Moal <dlemoal@kernel.org>,
Ming Lei <ming.lei@redhat.com>,
Nilay Shroff <nilay@linux.ibm.com>,
linux-block@vger.kernel.org, linux-nvme@lists.infradead.org,
nbd@other.debian.org, linux-scsi@vger.kernel.org,
usb-storage@lists.one-eyed-alien.net,
Johannes Thumshirn <johannes.thumshirn@wdc.com>
Subject: Re: [PATCH 06/11] block: fix queue freeze vs limits lock order in sysfs store methods
Date: Fri, 10 Jan 2025 10:33:11 +0100 [thread overview]
Message-ID: <20250110093311.GA9083@lst.de> (raw)
In-Reply-To: <8cfe7690-0101-42e7-ba97-6c6b717c4706@oracle.com>
On Thu, Jan 09, 2025 at 01:07:47PM +0000, John Garry wrote:
> Do you mean that the sysfs_lock could be removed in future? I would have
> thought that queue limits lock could be used for the same thing, but I am
> probably failing to see some lock nesting/ordering issues...
More or less. Think about it: what does it even try to protect?
Readіng/writing sysfs files vs itself and file removal it serialized by
sysfs/kernfs internally.
Any information tweaked in sysfs usually also has other places that can
modify it. So we'll need a lock independent of sysfs for that anyway.
A big part, buy by far all of that is covered by limits_lock.
Serializing creating/removing sysfs attribues is supposed to be
serialized using sysfs_dir_lock, although that needs a careful audit.
It's also used to serialize a few debugfs things, but we'll need to look
carefully for what exactly and switch that over to debugfs_mutex or
something new.
And then there's a bunch of misc cruft that also needs a careful look.
next prev parent reply other threads:[~2025-01-10 9:33 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-09 5:57 fix queue freeze and limit locking order v3 Christoph Hellwig
2025-01-09 5:57 ` [PATCH 01/11] block: fix docs for freezing of queue limits updates Christoph Hellwig
2025-01-09 5:57 ` [PATCH 02/11] block: add a queue_limits_commit_update_frozen helper Christoph Hellwig
2025-01-09 11:33 ` John Garry
2025-01-09 5:57 ` [PATCH 03/11] block: check BLK_FEAT_POLL under q_usage_count Christoph Hellwig
2025-01-09 8:14 ` Ming Lei
2025-01-09 9:03 ` Nilay Shroff
2025-01-09 5:57 ` [PATCH 04/11] block: don't update BLK_FEAT_POLL in __blk_mq_update_nr_hw_queues Christoph Hellwig
2025-01-09 8:16 ` Ming Lei
2025-01-09 9:01 ` Nilay Shroff
2025-01-09 5:57 ` [PATCH 05/11] block: add a store_limit operations for sysfs entries Christoph Hellwig
2025-01-09 5:57 ` [PATCH 06/11] block: fix queue freeze vs limits lock order in sysfs store methods Christoph Hellwig
2025-01-09 13:07 ` John Garry
2025-01-10 9:33 ` Christoph Hellwig [this message]
2025-01-09 5:57 ` [PATCH 07/11] nvme: fix queue freeze vs limits lock order Christoph Hellwig
2025-01-09 5:57 ` [PATCH 08/11] nbd: " Christoph Hellwig
2025-01-09 5:57 ` [PATCH 09/11] usb-storage: " Christoph Hellwig
2025-01-09 5:57 ` [PATCH 10/11] loop: refactor queue limits updates Christoph Hellwig
2025-01-09 9:11 ` Nilay Shroff
2025-01-09 5:57 ` [PATCH 11/11] loop: fix queue freeze vs limits lock order Christoph Hellwig
2025-01-09 14:57 ` fix queue freeze and limit locking order v3 Martin K. Petersen
-- strict thread matches above, loose matches on Subject: below --
2025-01-10 5:47 fix queue freeze and limit locking order v4 Christoph Hellwig
2025-01-10 5:47 ` [PATCH 06/11] block: fix queue freeze vs limits lock order in sysfs store methods Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250110093311.GA9083@lst.de \
--to=hch@lst.de \
--cc=axboe@kernel.dk \
--cc=dlemoal@kernel.org \
--cc=johannes.thumshirn@wdc.com \
--cc=john.g.garry@oracle.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-scsi@vger.kernel.org \
--cc=ming.lei@redhat.com \
--cc=nbd@other.debian.org \
--cc=nilay@linux.ibm.com \
--cc=usb-storage@lists.one-eyed-alien.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.