[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yp8ZaHHBrHzg+o49@linutronix.de>
Date: Tue, 7 Jun 2022 11:24:56 +0200
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Zhipeng Shi <zhipeng.shi0@...il.com>
Cc: peterz@...radead.org, mingo@...hat.comb, will@...nel.org,
longman@...hat.com, boqun.feng@...il.com, tglx@...utronix.de,
schspa@...il.com, shengjian.xu@...izon.ai,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] locking/rtmutex: Provide proper spin_is_contended
On 2022-06-07 17:15:14 [+0800], Zhipeng Shi wrote:
> Commit d89c70356acf ("locking/core: Remove break_lock field when
> CONFIG_GENERIC_LOCKBREAK=y") removed GENERIC_LOCKBREAK, which caused
> spin_is_contended depend on the implementation of arch_spin_is_contended.
> But now in rt-spinlock, spin_is_contended returns 0 directly.
>
> This causes cond_resched_lock to fail to correctly detect lock contention
> in RT-linux. In some scenarios (such as __purge_vmap_area_lazy in vmalloc),
> this will cause a large latency.
>
> This patch provides the implementation of spin_is_contended for
> rt-spinlock.
Do you have a test-case or an example?
The thing if _this_ task has higher priority than other tasks waiting on
this lock then a simple unlock+lock won't do a thing. That is why I
ripped it all out while it was half way done.
> Signed-off-by: Zhipeng Shi <zhipeng.shi0@...il.com>
Sebastian
Powered by blists - more mailing lists