summaryrefslogtreecommitdiff
path: root/libbcachefs/extents.h
diff options
context:
space:
mode:
Diffstat (limited to 'libbcachefs/extents.h')
-rw-r--r--libbcachefs/extents.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/libbcachefs/extents.h b/libbcachefs/extents.h
index 6e9d23a0..7ee8d031 100644
--- a/libbcachefs/extents.h
+++ b/libbcachefs/extents.h
@@ -155,7 +155,7 @@ bch2_extent_crc_unpack(const struct bkey *k, const union bch_extent_crc *crc)
common_fields(crc->crc32),
};
- memcpy(&ret.csum.lo, &crc->crc32.csum, sizeof(crc->crc32.csum));
+ *((__le32 *) &ret.csum.lo) = (__le32 __force) crc->crc32.csum;
return ret;
}
case BCH_EXTENT_ENTRY_crc64: {
@@ -165,8 +165,8 @@ bch2_extent_crc_unpack(const struct bkey *k, const union bch_extent_crc *crc)
.csum.lo = (__force __le64) crc->crc64.csum_lo,
};
- u16 hi = crc->crc64.csum_hi;
- memcpy(&ret.csum.hi, &hi, sizeof(hi));
+ *((__le16 *) &ret.csum.hi) = (__le16 __force) crc->crc64.csum_hi;
+
return ret;
}
case BCH_EXTENT_ENTRY_crc128: {