[PATCHv4 4/8] linux/kernel: introduce lower_48_bits function

From: Keith Busch
Date: Thu Mar 03 2022 - 15:13:46 EST


Recent data integrity field enhancements allow reference tags to be up
to 48 bits. Introduce an inline helper function since this will be a
repeated operation.

Suggested-by: Bart Van Assche <bvanassche@xxxxxxx>
Signed-off-by: Keith Busch <kbusch@xxxxxxxxxx>
---
include/linux/kernel.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 33f47a996513..3877478681b9 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -63,6 +63,15 @@
} \
)

+/**
+ * lower_48_bits() - return bits 0-47 of a number
+ * @n: the number we're accessing
+ */
+static inline u64 lower_48_bits(u64 n)
+{
+ return n & ((1ull << 48) - 1);
+}
+
/**
* upper_32_bits - return bits 32-63 of a number
* @n: the number we're accessing
--
2.25.4