summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Busch <kbusch@kernel.org>2022-03-03 12:13:08 -0800
committerJens Axboe <axboe@kernel.dk>2022-03-07 12:48:35 -0700
commit7ee8809df990d1de379002973baee1681e8d7dd3 (patch)
tree2e1e065fd9386255e0987af616ed4c296a366ca3
parentc2ea5fcf53d5f21e6aff0de11d55bc202822df6a (diff)
linux/kernel: introduce lower_48_bits function
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@acm.org> Signed-off-by: Keith Busch <kbusch@kernel.org> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Link: https://lore.kernel.org/r/20220303201312.3255347-5-kbusch@kernel.org Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--include/linux/kernel.h9
1 files changed, 9 insertions, 0 deletions
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
@@ -64,6 +64,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
*