lkml.org 
[lkml]   [2023]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: Re: [PATCH v4] pipe: use __pipe_{lock,unlock} instead of spinlock
From
Date
Hi Linus,

On 2023/1/29 下午3:33, Linus Torvalds wrote:
> On Sat, Jan 28, 2023 at 10:05 PM Hongchen Zhang
> <zhanghongchen@loongson.cn> wrote:
>>
>> Use spinlock in pipe_{read,write} cost too much time,IMO
>> pipe->{head,tail} can be protected by __pipe_{lock,unlock}.
>> On the other hand, we can use __pipe_{lock,unlock} to protect
>> the pipe->{head,tail} in pipe_resize_ring and
>> post_one_notification.
>
> No, we really can't.
>
> post_one_notification() is called under the RCU lock held, *and* with
> a spinlock held.
>
> It simply cannot do a sleeping lock like __pipe_lock().
>
> So that patch is simply fundamentally buggy, I'm afraid.
>
> Linus
>
Thanks for your review,Let me find out if there is any way to solve the
problem you said.

Best Regards
Hongchen Zhang

\
 
 \ /
  Last update: 2023-03-27 00:08    [W:1.898 / U:0.736 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site