Re: [PATCH 18/89] sched/core: Move task->mm handling methods to <linux/sched/mm.h>
From: Ingo Molnar
Date: Mon Feb 06 2017 - 17:44:03 EST
* Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> On Mon, Feb 06, 2017 at 02:28:21PM +0100, Ingo Molnar wrote:
> > Move the following task->mm helper APIs into a new header file,
> > <linux/sched/mm.h>, to further reduce the size and complexity
> > of <linux/sched.h>:
>
> Is there any good reason why they can't just go into linux/mm.h?
So mm.h is pretty large already, and I wanted to preserve the natural API and
header separation that was the result of these APIs being in sched.h. Many smaller
headers are so much easier to maintain, and they are much more readable as well in
my experience.
mm.h and mm_types.h should probably be split up some more: on a defconfig kernel
mm.i is about 18,800 lines long, with a size of 0.65 MB. There's a lot of wasted
energy building all that again and again, while drivers typically need only a
small fraction of those definitions. Not to mention that large headers typically
result in lower code quality and poorer code organization as well.
But we could move the new header to <linux/mm_task.h> or so?
Thanks,
Ingo