On Tue 10-05-11 22:12:54, OGAWA Hirofumi wrote: > Jan Kara <jack@xxxxxxx> writes: > > >> I'd like to know those patches are on what state. Waiting in writeback > >> page makes slower, like you mentioned it (I guess it would more > >> noticeable if device was slower that like FAT uses). And I think > >> currently it doesn't help anything others for blk-integrity stuff > >> (without other technic, it doesn't help FS consistency)? > >> > >> So, why is this locking stuff enabled always? I think it would be better > >> to enable only if blk-integrity stuff was enabled. > >> > >> If it was more sophisticate but more complex stuff (e.g. use > >> copy-on-write technic for it), I would agree always enable though. > > Well, also software RAID generally needs this feature (so that parity > > information / mirror can be properly kept in sync). Not that I'd advocate > > that this feature must be always enabled, it's just that there are also > > other users besides blk-integrity. > > I see. So many block layer stuff sounds like broken on corner case? If > so, I more feel this approach should be temporary workaround, and should > use another less-blocking approach. Not many but some... The alternative to less blocking approach is to do copy-out before a page is submitted for IO (or various middle ground alternatives of doing sometimes copyout, sometimes blocking...). That costs some performance as well. We talked about it at LSF and the approach Darrick is implementing was considered the least intrusive. There's really no way to fix these corner cases and keep performance. But indeed a plain SATA drive or a USB stick don't need stable pages so they wouldn't need to pay the cost. So it would be beneficial if the underlying block device propagated whether it needs stable writes or not and filesystem could turn on stable pages accordingly. Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html