[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190808072807.GA25259@infradead.org>
Date: Thu, 8 Aug 2019 00:28:07 -0700
From: Christoph Hellwig <hch@...radead.org>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Christoph Hellwig <hch@...radead.org>,
LKML <linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...nel.org>,
Sebastian Siewior <bigeasy@...utronix.de>,
Anna-Maria Gleixner <anna-maria@...utronix.de>,
Steven Rostedt <rostedt@...dmis.org>,
Julia Cartwright <julia@...com>, Jan Kara <jack@...e.cz>,
Theodore Tso <tytso@....edu>,
Matthew Wilcox <willy@...radead.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
linux-fsdevel@...r.kernel.org, linux-ext4@...r.kernel.org,
Jan Kara <jack@...e.com>, Mark Fasheh <mark@...heh.com>,
Joseph Qi <joseph.qi@...ux.alibaba.com>,
Joel Becker <jlbec@...lplan.org>
Subject: Re: [patch V2 0/7] fs: Substitute bit-spinlocks for PREEMPT_RT and
debugging
On Thu, Aug 08, 2019 at 09:02:47AM +0200, Thomas Gleixner wrote:
> > > mm/slub.c: bit_spin_lock(PG_locked, &page->flags);
> >
> > One caller ouf of a gazillion that spins on the page lock instead of
> > sleepign on it like everyone else. That should not have passed your
> > smell test to start with :)
>
> I surely stared at it, but that cannot sleep. It's in the middle of a
> preempt and interrupt disabled region and used on architectures which do
> not support CMPXCHG_DOUBLE and ALIGNED_STRUCT_PAGE ...
I know. But the problem here is that normally PG_locked is used together
with wait_on_page_bit_*, but this one instances uses the bit spinlock
helpers. This is the equivalent of calling spin_lock on a struct mutex
rather than having a mutex_lock_spin helper for this case. Does SLUB
work on -rt at all?
Powered by blists - more mailing lists