Messages in this thread | | | Date | Mon, 9 Jan 2023 10:48:55 -1000 | From | Tejun Heo <> | Subject | Re: [PATCH 1/4] blkcg: Drop unnecessary RCU read [un]locks from blkg_conf_prep/finish() |
| |
Hello, Christoph.
On Sun, Jan 08, 2023 at 06:02:40PM +0100, Christoph Hellwig wrote: > On Thu, Jan 05, 2023 at 11:24:29AM -1000, Tejun Heo wrote: > > Holding the queue lock now implies RCU read lock, so no need to use > > rcu_read_[un]lock() explicitly. This shouldn't cause any behavior changes. > > How so?
Now that all RCU flavors have been combined, holding a spin lock, disabling irq, disabling preemption all imply RCU read lock.
> > While at it, drop __acquires() annotation on the queue lock too. The > > __acquires() part was already out of sync and it doesn't catch anything that > > lockdep can't. > > This makes sparse even more unhappy than it was before. For now > please keep the annotation.
I can drop the changes but this actually bothers me. The annotation has been broken for a *long* time and nobody noticed. Furthermore, I can't remember a time when __acquires/__releases notation caught anything that lockdep couldn't trivially and can't even think of a way how it could. AFAICS, these annotations don't contribute anything other than preservation of themselves. I don't see why we would want to keep them.
Thanks.
-- tejun
| |