Re: [PATCH 0/3] nohz: Convert tick dependency mask to atomic_t
From: Linus Torvalds
Date: Tue Mar 29 2016 - 08:23:36 EST
On Tue, Mar 29, 2016 at 4:44 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
> Harmonizing thread_info::flags does not look easy, given how much assembly code
> accesses this field.
It might not be too bad.
For 32-bit architectures (which is still most of them), it's just a
unsigned int/long -> atomic_t
and for 64-bit architectures you end up with three choices:
- it's already 32-bit (alpha, ia64, x86):
unsigned int -> atomic_t
- little-endian long:
atomic_t flags
unsigned int padding;
- big-endian long (only powerpc? Maybe there's a big-endian MIPS still?)
unsigned int padding;
atomic_t flags;
so you could do that fairly mindlessly. You *could* even use a nasty
macro from hell to do it automatically, with the above rules in some .
Then each architecture could clean itself up and get rid of the
padding field if they want to.
Linus