Re: [PATCH 5.13] io_uring: Check current->io_uring in io_uring_cancel_sqpoll

From: Pavel Begunkov
Date: Tue Apr 27 2021 - 13:04:24 EST


On 4/27/21 6:00 PM, Jens Axboe wrote:
> On 4/27/21 11:00 AM, Pavel Begunkov wrote:
>> On 4/27/21 2:37 PM, Jens Axboe wrote:
>>> On 4/27/21 6:51 AM, Palash Oswal wrote:
>>>> syzkaller identified KASAN: null-ptr-deref Write in
>>>> io_uring_cancel_sqpoll on v5.12
>>>>
>>>> io_uring_cancel_sqpoll is called by io_sq_thread before calling
>>>> io_uring_alloc_task_context. This leads to current->io_uring being
>>>> NULL. io_uring_cancel_sqpoll should not have to deal with threads
>>>> where current->io_uring is NULL.
>>>>
>>>> In order to cast a wider safety net, perform input sanitisation
>>>> directly in io_uring_cancel_sqpoll and return for NULL value of
>>>> current->io_uring.
>>>
>>> Thanks applied - I augmented the commit message a bit.
>>
>> btw, does it fixes the replied before syz report? Should
>> syz fix or tag it if so.
>> Reported-by: syzbot+be51ca5a4d97f017cd50@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> That tag was already there.

Oh, right, missed it

--
Pavel Begunkov