Re: [PATCH] drbd: always set BLK_FEAT_STABLE_WRITES
Christoph Hellwig <[email protected]> Thu, 5 Feb 2026 22:43:18 -0800
| Newsgroups | dev.linux.lists.drbd-dev,org.kernel.vger.linux-block,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On Thu, Feb 05, 2026 at 06:39:29PM +0100, Christoph Böhmwalder wrote: > DRBD requires stable pages because it may read the same bio data > multiple times for local disk I/O and network transmission, and in > some cases for calculating checksums. > > The BLK_FEAT_STABLE_WRITES flag is set when the device is first > created, but blk_set_stacking_limits() clears it whenever a > backing device is attached. In some cases the flag may be > inherited from the backing device, but we want it to be enabled > at all times. This looks like a bug. If an underlying device requires BLK_FEAT_STABLE_WRITES, the upper device needs to inherit it. > Note: this commit is based on the for-6.19/block tree in case it is > still possible to take it into the 6.19 release as this *could* lead > to silent data corruption. However, due to other protection > mechanisms in DRBD, this is relatively unlikely to happen in the > real world and we have not seen any corresponding reports from users. > So if this only lands in 6.20/7.0, it is also fine. I'm fine with this as a hot fix for 6.19 and -stable: Reviewed-by: Christoph Hellwig <[email protected]> But can you please also do the proper block layer fix and then revert the drbd one?