Device removal crash problems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Christoph,

I think the reason the storage unplug crashes came back in 4.1 kernel after your work in 4.0 kernel to fix them is this commit: 6cd18e711dd8 "block: destroy bdi before blockdev is unregistered."

The fix was to basically violate the lifetime rules/reference counting you put in place and destroy the bdi before the reference count reaches zero which means we are back at square one!  The whole point of the reference count was specifically so that devices are not destroyed before the reference count becomes zero.  Or at least that was my understanding/assumption...

The solution should have perhaps been to fix MD and Loop drivers rather than to break the entire kernel all over again and then patch up ext4 again (commit bdfe0cbd746aa9b2509c2f6d6be17193cf7facd7).

The check in ext4 is not perfect because it is a race condition - if you unplug at same time as the check is happening you can still get the kernel to crash.  I grant you it is a very small race window but it is there.

What do you think?

Best regards,

	Anton
-- 
Anton Altaparmakov <anton at tuxera.com> (replace at with @)
Lead in File System Development, Tuxera Inc., http://www.tuxera.com/
Linux NTFS maintainer

--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux