lkml.org 
[lkml]   [2022]   [Dec]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/5] sbitmap: don't consume nr for inactive waitqueue to avoid lost wakeups
From
Date


on 12/1/2022 9:32 PM, Gabriel Krisman Bertazi wrote:
> Kemeng Shi <shikemeng@huawei.com> writes:
>
>> If we decremented queue without waiters, we should not decremente freed
>> bits number "nr", or all "nr" could be consumed in a empty queue and no
>> wakeup will be called.
>> Currently, for case "wait_cnt > 0", "nr" will not be decremented if we
>> decremented queue without watiers and retry is returned to avoid lost
>> wakeups. However for case "wait_cnt == 0", "nr" will be decremented
>> unconditionally and maybe decremented to zero. Although retry is
>> returned by active state of queue, it's not actually executed for "nr"
>> is zero.
>>
>
> Hi Kemeng,
>
> Fwiw, I sent a patch rewriting this algorithm which is now merged in
> axboe/for-next. It drops the per-waitqueue wait_cnt entirely. You can
> find it here:
>
> https://lore.kernel.org/lkml/20221110153533.go5qs3psm75h27mx@quack3/T/
>
> Thanks!
Hi Gabriel,
Thanks for remind me of this, I will recheck my patches in the
axboe/for-next branch.

--
Best wishes
Kemeng Shi

\
 
 \ /
  Last update: 2022-12-02 01:57    [W:0.068 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site