mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Oops in __change_page_attr Re: (was 2.5.73-mm2)
@ 2003-06-29 12:08 Zwane Mwaikambo
  2003-06-29 12:30 ` Zwane Mwaikambo
  0 siblings, 1 reply; 4+ messages in thread
From: Zwane Mwaikambo @ 2003-06-29 12:08 UTC (permalink / raw)
  To: Manfred Spraul; +Cc: Linux Kernel, William Lee Irwin III

On Sat, 28 Jun 2003, William Lee Irwin III wrote:

> On Sat, Jun 28, 2003 at 04:00:13PM -0700, Andrew Morton wrote:
> > What architectures has this been tested on?
> 
> i386 only, CONFIG_HIGHMEM64G with various combinations of highpte &
> highpmd, and nohighmem. No CONFIG_HIGHMEM4G or non-i386 machines that
> can run 2.5.x are within my grasp (obviously CONFIG_HIGHMEM4G machines
> could, I just don't have them, and the discontig code barfs on mem=).

Well i just tried it on a 16G box with CONFIG_HIGHMEM4G;

Manfred, Bill said this would be best routed your way.

Warning only 4GB will be used.
Use a PAE enabled kernel.
3200MB HIGHMEM available.
896MB LOWMEM available.
found SMP MP-table at 0009e140
...
Calibrating delay loop... 1395.91 BogoMIPS
------------[ cut here ]------------
kernel BUG at arch/i386/mm/pageattr.c:110!
invalid operand: 0000 [#1]
PREEMPT SMP DEBUG_PAGEALLOC
CPU:    0
EIP:    0060:[<c011c443>]    Not tainted VLI
EFLAGS: 00010046
EIP is at __change_page_attr+0x13/0x1a0
eax: c03b4000   ebx: c18c0000   ecx: 00000000   edx: 00000001
esi: c18c0000   edi: 00000000   ebp: 00000246   esp: c03b5f14
ds: 007b   es: 007b   ss: 0068
Process swapper (pid: 0, threadinfo=c03b4000 task=c03380e0)
Stack: c0111f51 00000000 c18c0000 00000000 00000246 c011c645 c18c0000 00000000 
       00000000 c18c0000 00000003 c18c0000 c011c80f c18c0000 00000001 00000000 
       c0142964 c18c0000 00000001 00000000 00000002 c033d4a0 00000000 00000000 
Call Trace:
 [<c0111f51>] timer_interrupt+0xc1/0x1a0
 [<c011c645>] change_page_attr+0x75/0xe0
 [<c011c80f>] kernel_map_pages+0x1f/0x57
 [<c0142964>] free_hot_cold_page+0x24/0x110
 [<c010d552>] do_IRQ+0x1f2/0x220
 [<c03c1feb>] one_highpage_init+0xab/0xd0
 [<c03c2046>] set_highmem_pages_init+0x36/0x50
 [<c03c2386>] mem_init+0x156/0x1f0
 [<c0105000>] _stext+0x0/0x80
 [<c03b6861>] start_kernel+0x121/0x1b0

Code: 08 83 e0 08 74 05 e8 bd 20 00 00 5b 5e 5f 5d c3 90 8d b4 26 00 00 00 
00 55 57 56 53 83 ec 04 8b 5c 24 18 3b 1d d0 86 40 c0 72 08 <0f> 0b 6e 00 
60 8f 2f c0 53 31 ed e8 4d 14 03 00 8b 15 50 7f 33 
 <0>Kernel panic: Attempted to kill the idle task!
In idle task - not syncing
 -- 
function.linuxpower.ca

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Oops in __change_page_attr Re: (was 2.5.73-mm2)
  2003-06-29 12:08 Oops in __change_page_attr Re: (was 2.5.73-mm2) Zwane Mwaikambo
@ 2003-06-29 12:30 ` Zwane Mwaikambo
  2003-06-29 13:03   ` Manfred Spraul
  0 siblings, 1 reply; 4+ messages in thread
From: Zwane Mwaikambo @ 2003-06-29 12:30 UTC (permalink / raw)
  To: Manfred Spraul; +Cc: Linux Kernel, William Lee Irwin III

On Sun, 29 Jun 2003, Zwane Mwaikambo wrote:

> On Sat, 28 Jun 2003, William Lee Irwin III wrote:
> 
> > On Sat, Jun 28, 2003 at 04:00:13PM -0700, Andrew Morton wrote:
> > > What architectures has this been tested on?
> > 
> > i386 only, CONFIG_HIGHMEM64G with various combinations of highpte &
> > highpmd, and nohighmem. No CONFIG_HIGHMEM4G or non-i386 machines that
> > can run 2.5.x are within my grasp (obviously CONFIG_HIGHMEM4G machines
> > could, I just don't have them, and the discontig code barfs on mem=).
> 
> Well i just tried it on a 16G box with CONFIG_HIGHMEM4G;
> 
> Manfred, Bill said this would be best routed your way.

Just to isolate things, this still occurs without highpmd.

-- 
function.linuxpower.ca

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Oops in __change_page_attr Re: (was 2.5.73-mm2)
  2003-06-29 12:30 ` Zwane Mwaikambo
@ 2003-06-29 13:03   ` Manfred Spraul
  2003-06-29 13:04     ` Zwane Mwaikambo
  0 siblings, 1 reply; 4+ messages in thread
From: Manfred Spraul @ 2003-06-29 13:03 UTC (permalink / raw)
  To: Zwane Mwaikambo; +Cc: Linux Kernel, William Lee Irwin III

[-- Attachment #1: Type: text/plain, Size: 161 bytes --]

Could you try the attached patch?
The code tries to map/unmap highmem pages on the fly, and that fails, 
because highmem pages are never mapped.

--
    Manfred

[-- Attachment #2: patch-dbg-4-unmap-fix --]
[-- Type: text/plain, Size: 418 bytes --]

--- 2.5/arch/i386/mm/pageattr.c	2003-06-29 14:45:19.000000000 +0200
+++ build-2.5/arch/i386/mm/pageattr.c	2003-06-29 14:58:11.000000000 +0200
@@ -197,6 +197,8 @@
 #ifdef CONFIG_DEBUG_PAGEALLOC
 void kernel_map_pages(struct page *page, int numpages, int enable)
 {
+	if (page >= highmem_start_page) 
+		return;
 	/* the return value is ignored - the calls cannot fail,
 	 * large pages are disabled at boot time.
 	 */

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Oops in __change_page_attr Re: (was 2.5.73-mm2)
  2003-06-29 13:03   ` Manfred Spraul
@ 2003-06-29 13:04     ` Zwane Mwaikambo
  0 siblings, 0 replies; 4+ messages in thread
From: Zwane Mwaikambo @ 2003-06-29 13:04 UTC (permalink / raw)
  To: Manfred Spraul; +Cc: Linux Kernel, William Lee Irwin III

On Sun, 29 Jun 2003, Manfred Spraul wrote:

> Could you try the attached patch?
> The code tries to map/unmap highmem pages on the fly, and that fails, 
> because highmem pages are never mapped.

Thanks, that fixes it =)

-- 
function.linuxpower.ca

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-06-29 13:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-29 12:08 Oops in __change_page_attr Re: (was 2.5.73-mm2) Zwane Mwaikambo
2003-06-29 12:30 ` Zwane Mwaikambo
2003-06-29 13:03   ` Manfred Spraul
2003-06-29 13:04     ` Zwane Mwaikambo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®