Re: [PATCH v4.4.y] futex,rt_mutex: Restructure rt_mutex_finish_proxy_lock()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 11, 2019 at 01:54:09PM -0700, Guenter Roeck wrote:
> Hi Greg,
> 
> On Fri, Mar 8, 2019 at 3:01 AM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Thu, Mar 07, 2019 at 03:59:04PM -0800, Zubin Mithra wrote:
> > > From: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > >
> > > commit 38d589f2fd08f1296aea3ce62bebd185125c6d81 upstream
> > >
> > > With the ultimate goal of keeping rt_mutex wait_list and futex_q waiters
> > > consistent it's necessary to split 'rt_mutex_futex_lock()' into finer
> > > parts, such that only the actual blocking can be done without hb->lock
> > > held.
> > >
> > > Split split_mutex_finish_proxy_lock() into two parts, one that does the
> > > blocking and one that does remove_waiter() when the lock acquire failed.
> > >
> > > When the rtmutex was acquired successfully the waiter can be removed in the
> > > acquisiton path safely, since there is no concurrency on the lock owner.
> > >
> > > This means that, except for futex_lock_pi(), all wait_list modifications
> > > are done with both hb->lock and wait_lock held.
> > >
> > > [bigeasy@xxxxxxxxxxxxx: fix for futex_requeue_pi_signal_restart]
> > >
> > > Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
> > > Cc: juri.lelli@xxxxxxx
> > > Cc: bigeasy@xxxxxxxxxxxxx
> > > Cc: xlpang@xxxxxxxxxx
> > > Cc: rostedt@xxxxxxxxxxx
> > > Cc: mathieu.desnoyers@xxxxxxxxxxxx
> > > Cc: jdesfossez@xxxxxxxxxxxx
> > > Cc: dvhart@xxxxxxxxxxxxx
> > > Cc: bristot@xxxxxxxxxx
> > > Link: http://lkml.kernel.org/r/20170322104152.001659630@xxxxxxxxxxxxx
> > > Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > > Signed-off-by: Zubin Mithra <zsm@xxxxxxxxxxxx>
> > > ---
> > >  kernel/futex.c                  |  7 +++--
> > >  kernel/locking/rtmutex.c        | 52 ++++++++++++++++++++++++++++-----
> > >  kernel/locking/rtmutex_common.h |  9 ++++--
> > >  3 files changed, 56 insertions(+), 12 deletions(-)
> >
> > Why is this needed for 4.4.y and not 4.9.y?  What bug/issue does it
> > resolve?
> >
> > From the changelog text, all it looks like it is doing here is
> > reorganizing the code a bit.
> >
> > confused,
> >
> 
> Was this clarified with v2, or do you still have questions/concerns ?

It's all good, sorry, on the road this week, so catching up on stable
patches is going to take a while...

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux