Messages in this thread | | | Subject | Re: [patch]x86: arch_add_memory round up address | From | Shaohua Li <> | Date | Thu, 09 Oct 2008 14:08:05 +0800 |
| |
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@intel.com> wrote: > > Round up address to a page, otherwise the last page isn't mapped. > > > > Signed-off-by: Shaohua Li <shaohua.li@intel.com> > > --- > > 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
| |