On Mon, May 1, 2017 at 7:52 AM, Baoquan He <b...@redhat.com> wrote: > On 05/01/17 at 07:40am, Dan Williams wrote: >> On Mon, May 1, 2017 at 4:41 AM, Baoquan He <b...@redhat.com> wrote: >> > arch/x86/mm/init_64.c | 6 ++++-- >> > 1 file changed, 4 insertions(+), 2 deletions(-) >> > >> > diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c >> > index 15173d3..dbf4f00 100644 >> > --- a/arch/x86/mm/init_64.c >> > +++ b/arch/x86/mm/init_64.c >> > @@ -94,12 +94,14 @@ __setup("noexec32=", nonx32_setup); >> > */ >> > void sync_global_pgds(unsigned long start, unsigned long end) >> > { >> > - unsigned long address; >> > + unsigned long address, address_next; >> > >> > - for (address = start; address <= end; address += PGDIR_SIZE) { >> > + for (address = start; address <= end; address = address_next) { >> > const pgd_t *pgd_ref = pgd_offset_k(address); >> > struct page *page; >> > >> > + address_next = (address & PGDIR_MASK) + PGDIR_SIZE; >> > + >> >> Let's change this to put the next address calculation in the for loop >> directly and use the ALIGN macro. Something like: >> >> for (address = start; address <= end; address = ALIGN(address + 1, >> PGDIR_SIZE)) > > Hi Dan, > > Good idea! > > Do you think below change is OK for you? Taking out the initialization > can make the for loop line be shorter than 80 char. >
I would just wrap the "address = ALIGN(address + 1, PGDIR_SIZE)" if it doesn't fit. > > diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c > index 15173d3..0840311 100644 > --- a/arch/x86/mm/init_64.c > +++ b/arch/x86/mm/init_64.c > @@ -94,12 +94,14 @@ __setup("noexec32=", nonx32_setup); > */ > void sync_global_pgds(unsigned long start, unsigned long end) > { > - unsigned long address; > + unsigned long address = start; > > - for (address = start; address <= end; address += PGDIR_SIZE) { > + for (; address <= end; address = ALIGN(address + 1, PGDIR_SIZE)) > { > const pgd_t *pgd_ref = pgd_offset_k(address); > struct page *page; > > + address_next = (address & PGDIR_MASK) + PGDIR_SIZE; > + This gets deleted of course.