Messages in this thread | | | From | Dipanjan Das <> | Date | Tue, 2 Aug 2022 21:10:50 -0700 | Subject | Re: [PATCH v3] kernel/watch_queue: Make pipe NULL while clearing watch_queue |
| |
On Mon, Aug 1, 2022 at 11:49 AM Siddh Raman Pant <code@siddh.me> wrote: > > On Mon, 01 Aug 2022 21:46:42 +0530 Dipanjan Das <mail.dipanjan.das@gmail.com> wrote: > > Are you referring to the reproducer attached to our original report? > > https://lore.kernel.org/all/CANX2M5bHye2ZEEhEV6PUj1kYL2KdWYeJtgXw8KZRzwrNpLYz+A@mail.gmail.com/ > > Yes, I meant the reproducer you gave. > > I suspect I must have missed CONFIG_WATCH_QUEUE=y while setting the kernel > up, extremely sorry for it. > > I now tried 5.10.y with it (using a modification of syzkaller's dashboard > config I had been using[1]), and I'm getting a __post_watch_notification() > crash (which is a related crash, as the fix[2][3] for that causes the > reproducer to not reproduce the post_one_notification crash on mainline), > but not the post_one_notification() crash you had reported. It seems if I > apply my patch, it doesn't trigger this related crash, so these bugs are > seem to be very related maybe due to racing? I haven't looked at that yet. > > I then tried on v5.10.131 since that was the exact version you had > reproduced on, and it reproduces the post_one_notification() error > successfully. Applying 353f7988dd84 causes __post_watch_notification() > crash, and then applying this v3 patch does not trigger the issue, but > the patch to fix __post_watch_notification() crash is [2], which does > not really address the issue of post_one_notification() crash which > is due to the dangling reference to a freed pipe. > > Can you please try reproducer at your end?
We can confirm that the repro triggers the `post_watch_notification` crash on 5.10.134 (7a62a4b6212a7f04251fdaf8b049c47aec59c54a). After applying your v3 patch, the repro did not trigger the bug.
> > [1] https://gist.github.com/siddhpant/06c7d64ca83273f0fd6604e4677f7c0d > [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e64ab2dbd882933b65cd82ff6235d705ad65dbb6 > [3] https://lore.kernel.org/linux-mm/18259769e5e.52eb2082293078.3991591702430862151@siddh.me/
-- Thanks and Regards,
Dipanjan
| |