(Palmer is a super-smart and nice guy who I have worked with, and IMHO didn't deserve this little rant from Linus, but he made a mistake, owned up to it, and didn't make a fuss.)
I'd generally agree with Linus that these are confusing to use. It's not clear if you would pass (hi, lo) or (lo, hi) without looking at the definition of the macro; all of the other macros in that function are very clear about what they will produce.
(Palmer is a super-smart and nice guy who I have worked with, and IMHO didn't deserve this little rant from Linus, but he made a mistake, owned up to it, and didn't make a fuss.)
The offending macros are defined in include/linux/wordpart.h: https://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux....
I'd generally agree with Linus that these are confusing to use. It's not clear if you would pass (hi, lo) or (lo, hi) without looking at the definition of the macro; all of the other macros in that function are very clear about what they will produce.