Re: [PATCH -v3 14/14] x86, mm: Map ISA area with connected ram rangeat the same time

From: Jacob Shin
Date: Thu Sep 06 2012 - 10:13:15 EST


On Thu, Sep 06, 2012 at 10:22:19AM +0300, Pekka Enberg wrote:
> On Wed, Sep 5, 2012 at 1:02 AM, Pekka Enberg <penberg@xxxxxxxxxx> wrote:
> > > How significant is the speed gain? The "isa_done" flag makes code flow
> > > more difficult to follow.
>
> On Wed, 5 Sep 2012, Yinghai Lu wrote:
> > Not really much.
> >
> > when booting system:
> > memmap=16m$128m memmap=16m$512m memmap=16m$256m memmap=16m$768m memmap=16m$1024m
> >
> > with the patch
> > [ 0.000000] init_memory_mapping: [mem 0x00000000-0x07ffffff]
> > [ 0.000000] [mem 0x00000000-0x07ffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x09000000-0x0fffffff]
> > [ 0.000000] [mem 0x09000000-0x0fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x11000000-0x1fffffff]
> > [ 0.000000] [mem 0x11000000-0x1fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x21000000-0x2fffffff]
> > [ 0.000000] [mem 0x21000000-0x2fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x31000000-0x3fffffff]
> > [ 0.000000] [mem 0x31000000-0x3fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x41000000-0x7fffdfff]
> > [ 0.000000] [mem 0x41000000-0x7fdfffff] page 2M
> > [ 0.000000] [mem 0x7fe00000-0x7fffdfff] page 4k
> >
> > otherwise will have
> >
> > [ 0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff]
> > [ 0.000000] [mem 0x00000000-0x000fffff] page 4k
> > [ 0.000000] init_memory_mapping: [mem 0x00100000-0x07ffffff]
> > [ 0.000000] [mem 0x00100000-0x001fffff] page 4k
> > [ 0.000000] [mem 0x00200000-0x07ffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x09000000-0x0fffffff]
> > [ 0.000000] [mem 0x09000000-0x0fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x11000000-0x1fffffff]
> > [ 0.000000] [mem 0x11000000-0x1fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x21000000-0x2fffffff]
> > [ 0.000000] [mem 0x21000000-0x2fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x31000000-0x3fffffff]
> > [ 0.000000] [mem 0x31000000-0x3fffffff] page 2M
> > [ 0.000000] init_memory_mapping: [mem 0x41000000-0x7fffdfff]
> > [ 0.000000] [mem 0x41000000-0x7fdfffff] page 2M
> > [ 0.000000] [mem 0x7fe00000-0x7fffdfff] page 4k
>
> OK. Is there any other reason than performance to do this?

May be minor, but ..

The first range [mem 0x00000000-0x07ffffff] is covered entirely by 2M
page tables, instead of some 4K + some 2M.

-Jacob

>
> Pekka
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/