Just another thought... Am Di., 17. Okt. 2023 um 02:33 Uhr schrieb Kai Krakow <kai@xxxxxxxxxxx>: > Except that in writeback mode, it won't (and cannot) return errors to > user-space although writes eventually fail later and data does not > persist. So it may be better to turn writeback off as soon as bdev IO > errors are found, or trigger an immediate writeback by temporarily > setting writeback_percent to 0. Usually, HDDs support self-healing - > which didn't work in this case because of delayed writeback. After I > switched to "none", it worked. In that light, it might be worth thinking about how bcache could be used to encourage self-healing of HDDs: 1. If a read IO error occurs, it should start flushing dirty data, maybe switch to "none" or "writethrough/writearound". 2. Cached bcache contents could be used to rewrite data - in case a sector has become bad. But I think this needs the firmware to detect a read error on that sector first - which doesn't help us because then the data would not be in bcache in the first place. 3. How does bcache handle bdev write errors in common, and in case of delayed writeback in special? Regards, Kai