Messages in this thread | | | Subject | Re: [PATCH] sock: Fix sk_sleep return invalid pointer | From | Paolo Abeni <> | Date | Tue, 22 Aug 2023 17:31:00 +0200 |
| |
On Tue, 2023-08-22 at 20:44 +0800, eadavis@sina.com wrote: > From: Edward AD <eadavis@sina.com> > > The parameter sk_sleep(sk) passed in when calling prepare_to_wait may > return an invalid pointer due to nr-release reclaiming the sock. > Here, schedule_timeout_interruptible is used to replace the combination > of 'prepare_to_wait, schedule, finish_wait' to solve the problem. > > Reported-and-tested-by: syzbot+666c97e4686410e79649@syzkaller.appspotmail.com > Signed-off-by: Edward AD <eadavis@sina.com>
This looks wrong. No syscall should race with sock_release(). It looks like you are papering over the real issue.
As the reproducer shows a disconnect on an connected socket, I'm wild guessing something alike 4faeee0cf8a5d88d63cdbc3bab124fb0e6aed08c should be more appropriate.
Cheers,
Paolo
| |