bcachefs: Fix a spurious warning
authorKent Overstreet <kent.overstreet@linux.dev>
Mon, 24 Oct 2022 19:10:14 +0000 (15:10 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:45 +0000 (17:09 -0400)
Fixes fstests generic/648

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/fs-io.c

index 49b0fb6522e7028e8a34aa7cb41b74882c308d25..9e9ada8f007a242c62613bfce5a87cbfff0e5cbf 100644 (file)
@@ -1428,7 +1428,8 @@ do_io:
 
                /* Check for writing past i_size: */
                WARN_ON_ONCE((bio_end_sector(&w->io->op.wbio.bio) << 9) >
-                            round_up(i_size, block_bytes(c)));
+                            round_up(i_size, block_bytes(c)) &&
+                            !test_bit(BCH_FS_EMERGENCY_RO, &c->flags));
 
                w->io->op.res.sectors += reserved_sectors;
                w->io->op.i_sectors_delta -= dirty_sectors;