diff --git a/module/zfs/zap_leaf.c b/module/zfs/zap_leaf.c index 2e8489c7dfcf..38bdef17648b 100644 --- a/module/zfs/zap_leaf.c +++ b/module/zfs/zap_leaf.c @@ -288,13 +288,9 @@ zap_leaf_array_read(zap_leaf_t *l, uint16_t chunk, /* Fast path for one 8-byte integer */ if (array_int_len == 8 && buf_int_len == 8 && len == 1) { struct zap_leaf_array *la = &ZAP_LEAF_CHUNK(l, chunk).l_array; - uint8_t *ip = la->la_array; uint64_t *buf64 = buf; - *buf64 = (uint64_t)ip[0] << 56 | (uint64_t)ip[1] << 48 | - (uint64_t)ip[2] << 40 | (uint64_t)ip[3] << 32 | - (uint64_t)ip[4] << 24 | (uint64_t)ip[5] << 16 | - (uint64_t)ip[6] << 8 | (uint64_t)ip[7]; + *buf64 = BSWAP_64(*(uint64_t *)la->la_array); return; }