lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20171213003659.GA21978@ZenIV.linux.org.uk> Date: Wed, 13 Dec 2017 00:36:59 +0000 From: Al Viro <viro@...IV.linux.org.uk> To: Jakub Kicinski <kubakici@...pl> Cc: Linus Torvalds <torvalds@...ux-foundation.org>, netdev@...r.kernel.org, linux-kernel@...r.kernel.org Subject: Re: [RFC][PATCH] new byteorder primitives - ..._{replace,get}_bits() On Tue, Dec 12, 2017 at 03:59:33PM -0800, Jakub Kicinski wrote: > > +static __always_inline __##type type##_replace_bits(__##type old, \ > > + base val, base mask) \ > > +{ \ > > + __##type m = to(mask); \ > > + if (__builtin_constant_p(val) && \ > > Is the lack of a __builtin_constant_p(mask) test intentional? Sometimes > the bitfield is a packed array and people may have a helper to which > only the mask is passed as non-constant and the value is implied by the > helper, thus constant. If the mask in non-constant, we probably shouldn't be using that at all; could you show a real-world example where that would be the case?
Powered by blists - more mailing lists