Re: [PATCH v2] [net] af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag
From: Aaron Conole <hidden>
Date: 2015-09-20 19:38:40
Resending, I accidentally dropped the list.
Eric Dumazet [off-list ref] writes:quoted
On Sun, 2015-09-20 at 15:07 -0400, Aaron Conole wrote:quoted
Eric Dumazet [off-list ref] writes:quoted
On Sun, 2015-09-20 at 05:18 -0400, Aaron Conole wrote:quoted
From: Aaron Conole <redacted>I am wondering what this is expected to do, and how this code would possibly not trigger a crash.Are you suspecting it should crash from a possible double-lock case? On line 2125, there is an unconditional unlock, which should be guaranteeing that there is no longer a condition to 'double lock' the socket.Not at all. I am suggesting there is a big difference between unix_state_lock(&sk); and unix_state_lock(sk); Can you see it ?
Wow! That's an excellent catch, thank you! I did test the originally submitted patch, and got no oops, bug, panic, etc (I usually have panic_on_oops set to 1 when first testing new code). I guess I got very lucky, somehow. I'll change this, and make sure to retest. I will also try to enhance the python case attached to the bug to include a filepointer as well, and will repost a v3 when I have done this. Thanks, -Aaron