Re: [PATCH 00/89] Major reorganization of <linux/sched.h>
From: Ingo Molnar
Date: Mon Feb 06 2017 - 17:14:18 EST
* Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Mon, Feb 6, 2017 at 5:28 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
> > So 25+ years ago, in Linux-0.01, include/linux/sched.h was already
> > the biggest core kernel header file: [...]
>
> Ok, so having tried to look through this series I do like it, but I'd be
> *really* much happier if more of it was just verifiably a semantic no-op.
Yeah - that was the intention.
It's really hard to verify it in an automated fashion I think, in a cross arch
way. I did a sizeof(task_struct) before/after check on x86 defconfig, which did
not uncover the extra pointer on CONFIG_TASK_DELAY_ACCT=n, because defconfig has
that enabled...
On the latest tree I've done a wider test of sizeof(task_struct):
allnoconfig defconfig allmodconfig
-----------------------------------------------------------
before: 0x1400 0x19c0 0x3f00
after: 0x1400 0x19c0 0x3f00
Which seems to support my intention that the series should be an overall invariant
on 'struct task_struct' semantics.
> There were all those small things in there (Peter pointed out those cpumask
> things I wouldn't for the life of me have noticed) that were really subtle, and
> were really hidden by the fact that there was just a lot of non-semantic
> changes.
I think the ->cpus_allowed bugs Peter noticed are pre-existing - that patch
doesn't intend to make any semantic changes.
Thanks,
Ingo