[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090627171714.GD21595@elte.hu>
Date: Sat, 27 Jun 2009 19:17:14 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Yinghai Lu <yinghai@...nel.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>, cl@...ux-foundation.org,
tglx@...utronix.de, hpa@...or.com, ntl@...ox.com, mel@....ul.ie,
suresh.b.siddha@...el.com, linux-kernel@...r.kernel.org,
viro@...iv.linux.org.uk, rusty@...tcorp.com.au, steiner@....com,
rientjes@...gle.com, containers@...ts.linux-foundation.org
Subject: Re: [PATCH] x86: only clear node_states for 64bit
* Yinghai Lu <yinghai@...nel.org> wrote:
> Andrew Morton wrote:
> > On Mon, 22 Jun 2009 08:38:50 -0700
> > Yinghai Lu <yinghai@...nel.org> wrote:
> >
> >> Nathan reported that
> >> | commit 73d60b7f747176dbdff826c4127d22e1fd3f9f74
> >> | Author: Yinghai Lu <yinghai@...nel.org>
> >> | Date: Tue Jun 16 15:33:00 2009 -0700
> >> |
> >> | page-allocator: clear N_HIGH_MEMORY map before we set it again
> >> |
> >> | SRAT tables may contains nodes of very small size. The arch code may
> >> | decide to not activate such a node. However, currently the early boot
> >> | code sets N_HIGH_MEMORY for such nodes. These nodes therefore seem to be
> >> | active although these nodes have no present pages.
> >> |
> >> | For 64bit N_HIGH_MEMORY == N_NORMAL_MEMORY, so that works for 64 bit too
> >>
> >> the cpuset.mems cgroup attribute on an i386 kvm guest
> >>
> >> fix it by only clearing node_states[N_NORMAL_MEMORY] for 64bit only.
> >> and need to do save/restore for that in find_zone_movable_pfn
> >>
> >
> > There appear to be some words omitted from this changelog - it doesn't
> > make sense.
> >
> > I think that perhaps a line got deleted before "the cpuset.mems cgroup
> > ...". That was the line which actualy describes the bug which we're
> > fixing. Or perhaps it was a single word? "zeroes".
> >
> >
> > I did this:
> >
> > Nathan reported that
> > :
> > : | commit 73d60b7f747176dbdff826c4127d22e1fd3f9f74
> > : | Author: Yinghai Lu <yinghai@...nel.org>
> > : | Date: Tue Jun 16 15:33:00 2009 -0700
> > : |
> > : | page-allocator: clear N_HIGH_MEMORY map before we set it again
> > : |
> > : | SRAT tables may contains nodes of very small size. The arch code may
> > : | decide to not activate such a node. However, currently the early boot
> > : | code sets N_HIGH_MEMORY for such nodes. These nodes therefore seem to be
> > : | active although these nodes have no present pages.
> > : |
> > : | For 64bit N_HIGH_MEMORY == N_NORMAL_MEMORY, so that works for 64 bit too
> > :
>
> "
> > : unintentionally and incorrectly clears the cpuset.mems cgroup attribute on
> > : an i386 kvm guest
> "
> ==>
>
> 32bit assume NORMAL_MEMORY bit and HIGH_MEMORY bit are set for
> Node0 always.
Where in the code is this assumption?
> and some code only check if HIGH_MEMORY is there to know if
> NORMAL_MEMORY is there.
Which code is that exactly?
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists