On 05/07/19 14:37, Liran Alon wrote:
>> + u64 rmask = 0x43ff01ffffffe70cULL;
> Why not rename this to “used_bits_mask” and calculate it properly by macros?
> It seems a lot nicer than having a pre-calculated magic.
Yes, I wanted to do the same but I didn't have time right now. I am
planning to cleanup after the merge window, but if a patch comes soon I
can apply it instead of course. :)
Something like
#define APIC_VALID_REG_MASK(reg) (1ull << ((reg) >> 4))
#define APIC_VALID_REGS_MASK(first, count) \
(APIC_VALID_REG_MASK(first) * (1ull << ((count) - 1)))
followed by
if (offset > 0x3f0 ||
!(valid_regs_mask & APIC_VALID_REG_MASK(offset))
Paolo
> -Liran
>