On Thu, Oct 06 2016, Francesco Dolcini wrote: > On Thu, Oct 06, 2016 at 04:42:52PM +1100, NeilBrown wrote: > cc >> Maybe there is a race, but that seems unlikely. > > Consider that just hot removal while writing is not enough to > reproduce systematically the bug. > > while true; do [ ! -f /media/usb/.not_mounted ] \ > && dd if=/dev/zero of=/media/usb/aaa bs=1k \ > count=1 2>/dev/null && echo -n '*' ; done > > with lazy umount by mdev on USB flash drive removal > > reproduce the problem pretty always > >> The vfat issue is different, and is only a warning. > Why you say is only a warning? Here the Oops with vfat on ARM/i.MX6:
I looked at:
x86 Oops information (with vfat):
in the bugzilla and didn't realized there was another one further down.
That first vfat on is just a warning.
>
>> > Regression is on commit 6cd18e7 ("block: destroy bdi before blockdev is
>> > unregistered.")
>> >
>> > Commit: bdfe0cbd746a ("Revert "ext4: remove block_device_ejected") is
>> > already present on 4.1 stable I am currently working on (2a6f417 on 4.1
>> > branch)
>> >
>> > I wonder if commit b02176f ("block: don't release bdi while request_queue
>> > has live references") is the correct fix for this also in kernel 4.1.
>>
>> Maybe. It is worth a try.
>>
>> Below is a a backport to 4.1.33. It compiles, but I haven't tested.
>> If it works for you, I can recommend it for -stable.
>
> I confirm that it works!
Thanks.
NeilBrown
signature.asc
Description: PGP signature
