diff options
Diffstat (limited to 'fs/bcachefs/bset.c')
-rw-r--r-- | fs/bcachefs/bset.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/bcachefs/bset.c b/fs/bcachefs/bset.c index 5c9b016f7706..9a27477409ba 100644 --- a/fs/bcachefs/bset.c +++ b/fs/bcachefs/bset.c @@ -439,6 +439,10 @@ void bch2_btree_keys_free(struct btree *b) b->aux_data = NULL; } +#ifndef PAGE_KERNEL_EXEC +# define PAGE_KERNEL_EXEC PAGE_KERNEL +#endif + int bch2_btree_keys_alloc(struct btree *b, unsigned page_order, gfp_t gfp) { b->page_order = page_order; @@ -673,7 +677,7 @@ static inline unsigned bkey_mantissa(const struct bkey_packed *k, * (and then the bits we want are at the high end, so we shift them * back down): */ -#ifdef __LITTLE_ENDIAN +#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ v >>= f->exponent & 7; #else v >>= 64 - (f->exponent & 7) - (idx < BFLOAT_32BIT_NR ? 32 : 16); @@ -762,7 +766,7 @@ static void make_bfloat(struct btree *b, struct bset_tree *t, * Then we calculate the actual shift value, from the start of the key * (k->_data), to get the key bits starting at exponent: */ -#ifdef __LITTLE_ENDIAN +#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ shift = (int) (b->format.key_u64s * 64 - b->nr_key_bits) + exponent; EBUG_ON(shift + bits > b->format.key_u64s * 64); |