diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2021-10-20 13:43:31 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2021-10-20 13:43:31 -0400 |
commit | 7fa98d93f6255e5d8a5cbd7427a605399435e00c (patch) | |
tree | cfb2f97110d4e888f6cc5736866fa38f82602c3f /libbcachefs/reflink.c | |
parent | 3db6ec44c5c7c39cb0067a6b02ef22090ecbaa98 (diff) |
Update bcachefs sources to 4dd9a5a488 bcachefs: Fix for leaking of reflinked extentsv0.16
Diffstat (limited to 'libbcachefs/reflink.c')
-rw-r--r-- | libbcachefs/reflink.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libbcachefs/reflink.c b/libbcachefs/reflink.c index 9bcf4216..2827d0ef 100644 --- a/libbcachefs/reflink.c +++ b/libbcachefs/reflink.c @@ -32,6 +32,10 @@ const char *bch2_reflink_p_invalid(const struct bch_fs *c, struct bkey_s_c k) if (bkey_val_bytes(p.k) != sizeof(*p.v)) return "incorrect value size"; + if (c->sb.version >= bcachefs_metadata_version_reflink_p_fix && + le64_to_cpu(p.v->idx) < le32_to_cpu(p.v->front_pad)) + return "idx < front_pad"; + return NULL; } |