Thread (4 messages) 4 messages, 3 authors, 2017-10-16

architecture conditional

From: Tobin C. Harding <hidden>
Date: 2017-10-16 20:36:42

On Mon, Oct 16, 2017 at 06:10:53PM +0200, Greg KH wrote:
On Mon, Oct 16, 2017 at 09:37:17PM +1100, Tobin C. Harding wrote:
quoted
What is the correct way to write code that is conditionally compiled depending on 32/64 bit?
Not to write code that is dependent on such a thing in the first place
:)
quoted
I found

CONFIG_X86_64
CONFIG_64BIT

Do we still support other word sizes?
No, but those are not what you should be looking for, it all depends on
the architecture and where in the kernel you need to do this (arch
specific code, driver, kernel, networking, etc.)

Any specific hints on why you think you need this?
Hashing the kernel pointers. Wanting to call the SipHash functions. We need to call a different
function depending on the size of the pointer.

u64 siphash_1u64(const u64 a, const siphash_key_t *key);
u64 siphash_1u32(const u32 a, const siphash_key_t *key);

Jason A. Donenfeld suggested (offered to) add a helper function in siphash, along the lines of
siphash_1u() but we still need to know the exact size of the return value (so we can drop half of it
if it is 64 bits). We just want a 32 bit identifier returned after hashing the address.

thanks,
Tobin.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help