kernel/printk/printk_ringbuffer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
sizeof(unsigned long) * 8 is the number of bits in an unsigned long
variable, replace it with BITS_PER_LONG macro to make it simpler.
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
---
kernel/printk/printk_ringbuffer.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/printk/printk_ringbuffer.h b/kernel/printk/printk_ringbuffer.h
index bd2a892deac1..7433fe477e08 100644
--- a/kernel/printk/printk_ringbuffer.h
+++ b/kernel/printk/printk_ringbuffer.h
@@ -122,7 +122,7 @@ enum desc_state {
#define _DATA_SIZE(sz_bits) (1UL << (sz_bits))
#define _DESCS_COUNT(ct_bits) (1U << (ct_bits))
-#define DESC_SV_BITS (sizeof(unsigned long) * 8)
+#define DESC_SV_BITS BITS_PER_LONG
#define DESC_FLAGS_SHIFT (DESC_SV_BITS - 2)
#define DESC_FLAGS_MASK (3UL << DESC_FLAGS_SHIFT)
#define DESC_STATE(sv) (3UL & (sv >> DESC_FLAGS_SHIFT))
--
2.34.1
On 2024-09-02, Jinjie Ruan <ruanjinjie@huawei.com> wrote:
> sizeof(unsigned long) * 8 is the number of bits in an unsigned long
> variable, replace it with BITS_PER_LONG macro to make it simpler.
>
> Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
> ---
> kernel/printk/printk_ringbuffer.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/printk/printk_ringbuffer.h b/kernel/printk/printk_ringbuffer.h
> index bd2a892deac1..7433fe477e08 100644
> --- a/kernel/printk/printk_ringbuffer.h
> +++ b/kernel/printk/printk_ringbuffer.h
> @@ -122,7 +122,7 @@ enum desc_state {
>
> #define _DATA_SIZE(sz_bits) (1UL << (sz_bits))
> #define _DESCS_COUNT(ct_bits) (1U << (ct_bits))
> -#define DESC_SV_BITS (sizeof(unsigned long) * 8)
> +#define DESC_SV_BITS BITS_PER_LONG
We should also add:
#include <linux/bits.h>
John Ogness
On 2024/9/2 20:07, John Ogness wrote:
> On 2024-09-02, Jinjie Ruan <ruanjinjie@huawei.com> wrote:
>> sizeof(unsigned long) * 8 is the number of bits in an unsigned long
>> variable, replace it with BITS_PER_LONG macro to make it simpler.
>>
>> Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
>> ---
>> kernel/printk/printk_ringbuffer.h | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/kernel/printk/printk_ringbuffer.h b/kernel/printk/printk_ringbuffer.h
>> index bd2a892deac1..7433fe477e08 100644
>> --- a/kernel/printk/printk_ringbuffer.h
>> +++ b/kernel/printk/printk_ringbuffer.h
>> @@ -122,7 +122,7 @@ enum desc_state {
>>
>> #define _DATA_SIZE(sz_bits) (1UL << (sz_bits))
>> #define _DESCS_COUNT(ct_bits) (1U << (ct_bits))
>> -#define DESC_SV_BITS (sizeof(unsigned long) * 8)
>> +#define DESC_SV_BITS BITS_PER_LONG
>
> We should also add:
>
> #include <linux/bits.h>
maybe #include <asm/bitsperlong.h> ?
>
> John Ogness
© 2016 - 2026 Red Hat, Inc.