On 02/09/18 08:24, Jason Gunthorpe wrote:
On Fri, Feb 09, 2018 at 04:19:23PM +0000, Bart Van Assche wrote:
On Fri, 2018-02-09 at 16:12 +0000, Parav Pandit wrote:
Any reason to use open code instead of using BIT() macro from
include/linux/bitops.h which does the same thing?
Personally I'm in favor of removing the BIT() macro from the kernel. That macro
is not useful and only adds confusion. Code that does not use that macro is
easier to read because one does not have to look up whether the BIT() macro
is defined as 1U << x, 1UL << x or 1ULL << x.
Really? The rule is pretty simple:
BIT(x) for x < 32
BIT_ULL(x) for x >= 32 && x < 64
Why do you care about what specific type the macro produces?
That's something additional kernel developers have to memorize. If the
BIT() macro is not used but the shift operation is explicit then that
saves the lookup of the BIT() definition in case one would have
forgotten what the BIT() definition looks like.
Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html