Re: [PATCH] staging: rtl8723bs: remove unused BIT macros definitions
From: Greg KH <gregkh@linuxfoundation.org>
Date: 2021-07-30 13:32:42
Also in:
lkml
From: Greg KH <gregkh@linuxfoundation.org>
Date: 2021-07-30 13:32:42
Also in:
lkml
On Fri, Jul 30, 2021 at 03:21:03PM +0200, Fabio Aiuto wrote:
BIT(x) macro used all over the driver is defined in
include/vsdo/bit.h as
- #define BIT(nr) (UL(1) << (nr))
which is safer than the local BIT macros declared.
Local macros shift a signed integer which brings
unespected results. For example:
(unsigned long)(1 << 31) => 0xffffffff80000000
shift.c:
int main() {
printf("%lx\n", (unsigned long)(1 << 31));
printf("%lx\n", (unsigned long)(1U << 31));
return 0;
}
---
$ ./shift
ffffffff80000000
80000000
---Don't put "---" in a changelog text, otherwise the signed-off-by will be cut off. Can you resend it with that changed to something else like "---------------" or anything else? thanks, greg k-h