Re: [patch]x86: arch_add_memory round up address

From: Yinghai Lu
Date: Thu Oct 09 2008 - 02:23:10 EST


On Wed, Oct 8, 2008 at 11:08 PM, Shaohua Li <shaohua.li@xxxxxxxxx> wrote:
> On Thu, 2008-10-09 at 14:04 +0800, Yinghai Lu wrote:
>> On Wed, Oct 8, 2008 at 10:31 PM, Shaohua Li <shaohua.li@xxxxxxxxx> wrote:
>> > Round up address to a page, otherwise the last page isn't mapped.
>> >
>> > Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>
>> > ---
>> > arch/x86/mm/init_64.c | 3 ++-
>> > 1 file changed, 2 insertions(+), 1 deletion(-)
>> >
>> > Index: linux/arch/x86/mm/init_64.c
>> > ===================================================================
>> > --- linux.orig/arch/x86/mm/init_64.c 2008-10-09 11:42:33.000000000 +0800
>> > +++ linux/arch/x86/mm/init_64.c 2008-10-09 11:43:22.000000000 +0800
>> > @@ -721,7 +721,8 @@ int arch_add_memory(int nid, u64 start,
>> > unsigned long nr_pages = size >> PAGE_SHIFT;
>> > int ret;
>> >
>> > - last_mapped_pfn = init_memory_mapping(start, start + size-1);
>> > + last_mapped_pfn = init_memory_mapping(start,
>> > + round_up(start + size-1, PAGE_SIZE));
>> > if (last_mapped_pfn > max_pfn_mapped)
>> > max_pfn_mapped = last_mapped_pfn;
>>
>> should use
>>
>> last_mapped_pfn = init_memory_mapping(start, start + size);
> No, this still can't guarantee page aligned, though this works in my
> test

who will call arch_add_memory? that should be start and size already
be page aligned.

YH
--
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/