From: Kent Overstreet Date: Mon, 3 Jan 2022 03:24:43 +0000 (-0500) Subject: bcachefs: Fix an assertion X-Git-Tag: v6.7-rc1~201^2~1198 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6558e61dfe1ec1d54a39cb4604d00efa5bcaaa7e;p=thirdparty%2Fkernel%2Flinux.git bcachefs: Fix an assertion bch2_trans_commit() can legitimately return -ENOSPC with BTREE_INSERT_NOFAIL set if BTREE_INSERT_NOWAIT was also set. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/btree_update_leaf.c b/fs/bcachefs/btree_update_leaf.c index 1072acb0c9afc..60897fc70c58e 100644 --- a/fs/bcachefs/btree_update_leaf.c +++ b/fs/bcachefs/btree_update_leaf.c @@ -816,7 +816,9 @@ int bch2_trans_commit_error(struct btree_trans *trans, } BUG_ON((ret == EINTR || ret == -EAGAIN) && !trans->restarted); - BUG_ON(ret == -ENOSPC && (trans->flags & BTREE_INSERT_NOFAIL)); + BUG_ON(ret == -ENOSPC && + !(trans->flags & BTREE_INSERT_NOWAIT) && + (trans->flags & BTREE_INSERT_NOFAIL)); return ret; }