Re: possible deadlock in blkdev_reread_part
From: Dmitry Vyukov
Date: Wed May 02 2018 - 07:24:14 EST
On Wed, May 2, 2018 at 12:30 PM, Tetsuo Handa
<penguin-kernel@xxxxxxxxxxxxxxxxxxx> wrote:
> Dmitry Vyukov wrote:
>> > syzbot is reporting various bugs which involve /dev/loopX.
>> > Two of them
>> >
>> > INFO: rcu detected stall in lo_ioctl
>> > https://syzkaller.appspot.com/bug?id=7b49fb610af9cca78c24e9f796f2e8b0d5573997
>> >
>> > general protection fault in lo_ioctl (2)
>> > https://syzkaller.appspot.com/bug?id=f3cfe26e785d85f9ee259f385515291d21bd80a3
>>
>> /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
>>
>> Now there is a repro for this one. I've pushed it to kernel mailing lists:
>>
>> https://groups.google.com/d/msg/syzkaller-bugs/c8KUcTAzTvA/3o_7g6-tAwAJ
>
> OK, thanks. But among loop related reports, this will be a dup of
> "INFO: rcu detected stall in blkdev_ioctl" which already has C reproducer.
> Should we merge them?
Yes, sure, I will take care of it.
> INFO: rcu detected stall in blkdev_ioctl
> https://syzkaller.appspot.com/bug?id=1f7b710f4110f225aed1f4263ec2b98b8dbd472e
>
> general protection fault in lo_ioctl (2)
> https://syzkaller.appspot.com/bug?id=f3cfe26e785d85f9ee259f385515291d21bd80a3
> #syz dup: INFO: rcu detected stall in blkdev_ioctl
>
> INFO: rcu detected stall in lo_compat_ioctl
> https://syzkaller.appspot.com/bug?id=6299555c4e252b53f7a2ae2b8216cc9456c56ac0
> #syz dup: INFO: rcu detected stall in blkdev_ioctl
>
> INFO: rcu detected stall in lo_ioctl
> https://syzkaller.appspot.com/bug?id=7b49fb610af9cca78c24e9f796f2e8b0d5573997
> #syz dup: INFO: rcu detected stall in blkdev_ioctl
>
> INFO: task hung in lo_ioctl
> https://syzkaller.appspot.com/bug?id=608144371e7fc2cb6285b9ed871fb1eb817a61ce
>
> INFO: task hung in lo_open (2)
> https://syzkaller.appspot.com/bug?id=1f93b57f496d969efb9fb24167f6f9de5ee068fd
>
> possible deadlock in blkdev_reread_part
> https://syzkaller.appspot.com/bug?id=bf154052f0eea4bc7712499e4569505907d15889
>
> INFO: task hung in loop_control_ioctl
> https://syzkaller.appspot.com/bug?id=61fe32c77ea00412c5149bd34649a65b7f672b5e
>
> WARNING in sysfs_remove_group
> https://syzkaller.appspot.com/bug?id=3f86c0edf75c86d2633aeb9dd69eccc70bc7e90b
>
>>
>> > suggest that loop module is not thread safe. The former suggests that
>> > l->lo_backing_file is forming circular loop and the latter suggests that
>> > l->lo_backing_file became NULL.