Messages in this thread | | | Date | Mon, 3 Mar 2008 09:51:09 -0800 | From | "Nish Aravamudan" <> | Subject | Re: bisected boot regression post 2.6.25-rc3.. please revert |
| |
On 3/3/08, Ingo Molnar <mingo@elte.hu> wrote: > > * Arjan van de Ven <arjan@linux.intel.com> wrote: > > > > ------------[ cut here ]------------ > > WARNING: at arch/x86/mm/pgtable_32.c:387 pmd_bad+0x44/0x53() > > Modules linked in: > > Pid: 1, comm: swapper Not tainted 2.6.25-rc3 #14 > > [<c0424ba5>] warn_on_slowpath+0x41/0x67 > > [<c0408c5c>] ? native_sched_clock+0x94/0xa6 > > [<c043f432>] ? lock_release_holdtime+0x1a/0x115 > > [<c04702d4>] ? handle_mm_fault+0x297/0x7e2 > > [<c063eee6>] ? _spin_unlock+0x1d/0x20 > > [<c04707f0>] ? handle_mm_fault+0x7b3/0x7e2 > > [<c04851c1>] ? do_sync_read+0xab/0xe9 > > [<c0417223>] pmd_bad+0x44/0x53 > > [<c046f37f>] follow_page+0x8b/0x1f2 > > [<c0470aa0>] get_user_pages+0x281/0x2ef > > > hm. I suspect some gcc related difference related to the handling of > this masking: > > > pmd_val(x) & ~(PAGE_MASK | _PAGE_USER | _PAGE_PSE | _PAGE_NX) > > > versus: > > > pmd_val(x) & (~PAGE_MASK & ~_PAGE_USER) > > > perhaps it will work if you change it to: > > > pmd_val(x) & (~PAGE_MASK & ~_PAGE_USER & ~_PAGE_PSE & ~_PAGE_NX) > > > ? > > in any case, the commit has to be reverted as it clearly isnt a NOP on > your box as it was intended to be. (it should only have made a > difference in a rare hugetlbfs case)
On x86/{,_64}, _PAGE_PSE and _PAGE_PROTNONE are the same bit. Would that have any effect here? We encountered that collision when adding mprotect() support for hugepages.
Thanks, Nish
| |