On 8/3/21 8:47 AM, Sudip Mukherjee wrote: > On Mon, Aug 2, 2021 at 12:55 PM Pavel Begunkov <asml.silence@xxxxxxxxx> wrote: >> >> On 8/1/21 9:28 PM, Sudip Mukherjee wrote: >>> Hi Pavel, >>> >>> On Sun, Aug 1, 2021 at 9:52 AM Pavel Begunkov <asml.silence@xxxxxxxxx> wrote: >>>> >>>> On 8/1/21 1:10 AM, Pavel Begunkov wrote: >>>>> On 7/31/21 7:21 PM, Sudip Mukherjee wrote: >>>>>> 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: Thanks. Maybe I'm not perfectly familiar with syz, but were there any options? Like threaded, collide, etc.? > > 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) > > -- Pavel Begunkov