From 86cbeaf1c2b76b1b1d9e440d2f021df66d868b2e Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Sat, 22 Feb 2025 09:29:56 -0500 Subject: [PATCH] fix bch2_super_write() for bs > 4096 Signed-off-by: Kent Overstreet --- c_src/libbcachefs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/c_src/libbcachefs.c b/c_src/libbcachefs.c index ea5629e4..9553ed9e 100644 --- a/c_src/libbcachefs.c +++ b/c_src/libbcachefs.c @@ -352,9 +352,9 @@ void bch2_super_write(int fd, struct bch_sb *sb) if (sb->offset == BCH_SB_SECTOR) { /* Write backup layout */ - BUG_ON(bs > 4096); + unsigned buflen = max(bs, 4096); - char *buf = aligned_alloc(bs, bs); + char *buf = aligned_alloc(buflen, buflen); xpread(fd, buf, bs, 4096 - bs); memcpy(buf + bs - sizeof(sb->layout), &sb->layout,