Thread (9 messages) 9 messages, 2 authors, 2021-08-03

Re: KASAN: stack-out-of-bounds in iov_iter_revert

From: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Date: 2021-08-03 07:47:45
Also in: lkml

On Mon, Aug 2, 2021 at 12:55 PM Pavel Begunkov [off-list ref] wrote:
On 8/1/21 9:28 PM, Sudip Mukherjee wrote:
quoted
Hi Pavel,

On Sun, Aug 1, 2021 at 9:52 AM Pavel Begunkov [off-list ref] wrote:
quoted
On 8/1/21 1:10 AM, Pavel Begunkov wrote:
quoted
On 7/31/21 7:21 PM, Sudip Mukherjee wrote:
quoted
Hi Jens, Pavel,

We had been running syzkaller on v5.10.y and a "KASAN:
stack-out-of-bounds in iov_iter_revert" was being reported on it. I
got some time to check that today and have managed to get a syzkaller
reproducer. I dont have a C reproducer which I can share but I can use
the syz-reproducer to reproduce this with v5.14-rc3 and also with
next-20210730.
Can you try out the diff below? Not a full-fledged fix, but need to
check a hunch.

If that's important, I was using this branch:
git://git.kernel.dk/linux-block io_uring-5.14
Or better this one, just in case it ooopses on warnings.
I tested this one on top of "git://git.kernel.dk/linux-block
io_uring-5.14" and the issue was still seen, but after the BUG trace I
got lots of "truncated wr" message. The trace is:
That's interesting, thanks
Can you share the syz reproducer?
Unfortunately I dont have a C reproducer, but this is the reproducer
for syzkaller:

r0 = syz_io_uring_setup(0x4d4f, &(0x7f0000000080)={0x0, 0x0, 0x1},
&(0x7f00000a0000)=nil, &(0x7f0000ffc000/0x1000)=nil,
&(0x7f0000000000)=<r1=>0x0, &(0x7f0000000140))
r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x46e2, 0x0)
syz_io_uring_setup(0x1, &(0x7f0000000080),
&(0x7f0000ffd000/0x2000)=nil, &(0x7f0000ffc000/0x2000)=nil,
&(0x7f0000000100), &(0x7f0000000140)=<r3=>0x0)
syz_io_uring_submit(r1, r3, &(0x7f0000000100)=@IORING_OP_WRITE={0x17,
0x0, 0x0, @fd=r2, 0x0, &(0x7f0000000200)="e2", 0xffffffffffffff98},
0x200)
io_uring_enter(r0, 0x58ab, 0x0, 0x0, 0x0, 0x0)


-- 
Regards
Sudip
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help