On Fri, 2020-02-07 at 18:44 +0000, Al Viro wrote: > On Fri, Feb 07, 2020 at 09:44:10AM -0800, syzbot wrote: > > syzbot has found a reproducer for the following crash on: > > > > HEAD commit: 90568ecf Merge tag 'kvm-5.6-2' of git://git.kernel.org/pub.. > > git tree: upstream > > console output: https://syzkaller.appspot.com/x/log.txt?x=15b26831e00000 > > kernel config: https://syzkaller.appspot.com/x/.config?x=69fa012479f9a62 > > dashboard link: https://syzkaller.appspot.com/bug?extid=98704a51af8e3d9425a9 > > compiler: clang version 10.0.0 (https://github.com/llvm/llvm-project/ c2443155a0fb245c8f17f2c1c72b6ea391e86e81) > > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=172182b5e00000 > > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1590aab5e00000 > > > > IMPORTANT: if you fix the bug, please add the following tag to the commit: > > Reported-by: syzbot+98704a51af8e3d9425a9@xxxxxxxxxxxxxxxxxxxxxxxxx > > commit 4fbc0c711b2464ee1551850b85002faae0b775d5 > Author: Xiubo Li <xiubli@xxxxxxxxxx> > Date: Fri Dec 20 09:34:04 2019 -0500 > > ceph: remove the extra slashes in the server path > > is broken. You really should not do blocking allocations under spinlocks. > What's more, this is pointless - all you do with the results of two such > calls is strcmp_null, for pity sake... You could do the comparison in > one pass, no need for all of that. Or you could do a normalized copy when > you parse options, store that normalized copy in addition to what you are > storing now and compare _that_. Thanks Al, I'll take a closer look and we'll either fix this up or drop it for now. -- Jeff Layton <jlayton@xxxxxxxxxx>