summaryrefslogtreecommitdiff
path: root/libbcachefs/reflink.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2023-03-06 02:35:56 -0500
committerKent Overstreet <kent.overstreet@linux.dev>2023-03-06 04:11:50 -0500
commit0206d42daf4c4bd3bbcfa15a2bef34319524db49 (patch)
treea51d233e8ad9e9e730d1582519950f5af10532cd /libbcachefs/reflink.c
parent61b25f2dd21e1abe11572f4065e75c9c4c304599 (diff)
Update bcachefs sources to 3856459b1b bcachefs: bch2_btree_iter_peek_node_and_restart()
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'libbcachefs/reflink.c')
-rw-r--r--libbcachefs/reflink.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libbcachefs/reflink.c b/libbcachefs/reflink.c
index 87446f7b..d2e6adc1 100644
--- a/libbcachefs/reflink.c
+++ b/libbcachefs/reflink.c
@@ -233,7 +233,13 @@ static int bch2_make_extent_indirect(struct btree_trans *trans,
orig->k.type = KEY_TYPE_reflink_p;
r_p = bkey_i_to_reflink_p(orig);
set_bkey_val_bytes(&r_p->k, sizeof(r_p->v));
+
+ /* FORTIFY_SOURCE is broken here, and doesn't provide unsafe_memset() */
+#if !defined(__NO_FORTIFY) && defined(__OPTIMIZE__) && defined(CONFIG_FORTIFY_SOURCE)
+ __underlying_memset(&r_p->v, 0, sizeof(r_p->v));
+#else
memset(&r_p->v, 0, sizeof(r_p->v));
+#endif
r_p->v.idx = cpu_to_le64(bkey_start_offset(&r_v->k));