diff options
Diffstat (limited to 'libbcachefs/extents.h')
-rw-r--r-- | libbcachefs/extents.h | 6 |
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: { |