Re: Top kernel oopses/warnings for the week of May 30th 2008

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Arjan van de Ven <arjan@...>
Cc: Hugh Dickins <hugh@...>, Linux Kernel Mailing List <linux-kernel@...>, Andrew Morton <akpm@...>, Ingo Molnar <mingo@...>, Greg KH <greg@...>, Jeff Garzik <jeff@...>
Date: Friday, May 30, 2008 - 6:30 pm

On Fri, 30 May 2008, Arjan van de Ven wrote:

That's just _odd_. The call chain actually has kmap() in it, and kmap 
does:

	if (!PageHighMem(page))
		return page_address(page);
	return kmap_high(page);

so if it's the one at line 319, which says

	BUG_ON(!PageHighMem(page));

then I wonder what happened to that PageHighMem() test of the page in 
between..

Ahh.. Not the same "page". It looks like it's in the 
flush_all_zero_pkmaps() path, and it's clearing some _other_ page in the 
pkmap table in order to make room for the new one. So the page that causes 
problems is from here:

	 page = pte_page(pkmap_page_table[i]);

rather than the one we're trying to map.

Not that it explains the BUG_ON(). We should only insert page table 
entries into the pkmap_page_table[] array in map_new_virtual(), which in 
turn is only called from kmap_high(), which in turn means that *those* 
pages have also gine through the PageHighMem() test.

So it sounds like we either
 - have corruption in pkmap_page_table[]
 - or pte_page() doesn't reverse mk_pte(page) propely, and one or the 
   other is broken.

Does anybody know if the fc9 x86-32 kernel is built with PAE enabled? 
Might this be another PAE bit-masking bug and thus possibly fixed by the 
PTE_MASK changes?

		Linus

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 12:39 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Sun Jun 1, 10:27 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 6:36 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 6:00 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Linus Torvalds, (Fri May 30, 6:30 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 6:34 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 5:49 pm)
Re: Top kernel oopses/warnings for the week of May 30th 2008, Arjan van de Ven, (Fri May 30, 6:17 pm)