Asrock P4V88 and 4 GB barrier – Part 2

New day, new luck… and next try… 😉

Today I received two emails with even newer BIOS updates for my problem. The second, latest version 1.80p did actually fix the problem of not booting with 4 GB of RAM. I haven’t tried the first, previous version 1.80k yet, so I can’t tell if that worked as well.

Anyway, despite the fact that the machine now recognizes 4 GB dual-ranked memory, Linux uses 3.1 GB of it – at least when not using Xen… But first without Xen, standard Debian 2.6.26-1-686 kernel:

[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.26-1-686 (Debian 2.6.26-13) (waldi@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-24)) #1 SMP Sat Jan 10 18:29:31 UTC 2009
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: 0000000000000000 – 000000000009fc00 (usable)
[ 0.000000] BIOS-e820: 000000000009fc00 – 00000000000a0000 (reserved)
[ 0.000000] BIOS-e820: 00000000000e4000 – 0000000000100000 (reserved)
[ 0.000000] BIOS-e820: 0000000000100000 – 00000000bff30000 (usable)
[ 0.000000] BIOS-e820: 00000000bff30000 – 00000000bff40000 (ACPI data)
[ 0.000000] BIOS-e820: 00000000bff40000 – 00000000bfff0000 (ACPI NVS)
[ 0.000000] BIOS-e820: 00000000bfff0000 – 00000000c0000000 (reserved)
[ 0.000000] BIOS-e820: 00000000fffc0000 – 0000000100000000 (reserved)
[ 0.000000] BIOS-e820: 0000000100000000 – 0000000140000000 (usable)
[ 0.000000] WARNING: BIOS bug: CPU MTRRs don’t cover all of memory, losing 2048MB of RAM.
[ 0.000000] ————[ cut here ]————
[ 0.000000] WARNING: at arch/x86/kernel/cpu/mtrr/main.c:706 mtrr_trim_uncached_memory+0x123/0x183()
[ 0.000000] Modules linked in:
[ 0.000000] Pid: 0, comm: swapper Not tainted 2.6.26-1-686 #1
[ 0.000000] [] warn_on_slowpath+0x40/0x66
[ 0.000000] [] _spin_lock_irqsave+0x16/0x2f
[ 0.000000] [] _spin_unlock_irqrestore+0xd/0x10
[ 0.000000] [] release_console_sem+0x173/0x18c
[ 0.000000] [] vprintk+0x2d2/0x2de
[ 0.000000] [] generic_get_mtrr+0x2e/0x11e
[ 0.000000] [] printk+0x14/0x18
[ 0.000000] [] mtrr_trim_uncached_memory+0x123/0x183
[ 0.000000] [] mtrr_bp_init+0x20c/0x214
[ 0.000000] [] setup_arch+0x254/0x6bb
[ 0.000000] [] printk+0x14/0x18
[ 0.000000] [] start_kernel+0x62/0x2d7
[ 0.000000] =======================
[ 0.000000] —[ end trace 4eaa2a86a8e2da22 ]—
[ 0.000000] update e820 for mtrr
[ 0.000000] modified physical RAM map:
[ 0.000000] modified: 0000000000000000 – 000000000009fc00 (usable)
[ 0.000000] modified: 000000000009fc00 – 00000000000a0000 (reserved)
[ 0.000000] modified: 00000000000e4000 – 0000000000100000 (reserved)
[ 0.000000] modified: 0000000000100000 – 00000000bff30000 (usable)
[ 0.000000] modified: 00000000bff30000 – 00000000bff40000 (ACPI data)
[ 0.000000] modified: 00000000bff40000 – 00000000bfff0000 (ACPI NVS)
[ 0.000000] modified: 00000000bfff0000 – 00000000c0000000 (reserved)
[ 0.000000] modified: 00000000fffc0000 – 0000000140000000 (reserved)
[ 0.000000] 2175MB HIGHMEM available.
[ 0.000000] 896MB LOWMEM available.
[ 0.000000] Entering add_active_range(0, 0, 786224) 0 entries of 256 used

Now, when I try to boot Xen hypervisor & kernel, Linux recognizes 4 GB of memory:

[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.26-1-xen-686 (Debian 2.6.26-13) (waldi@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-24)) #1 SMP Sat Jan 10 22:52:47 UTC 2009
[ 0.000000] Reserving virtual address space above 0xf5800000
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] Xen: 0000000000000000 – 00000000f5730000 (usable)
[ 0.000000] 3199MB HIGHMEM available.
[ 0.000000] 728MB LOWMEM available.
[ 0.000000] Entering add_active_range(0, 0, 1005360) 0 entries of 256 used
[ 0.000000] Zone PFN ranges:
[ 0.000000] DMA 0 -> 4096
[ 0.000000] Normal 4096 -> 186368
[ 0.000000] HighMem 186368 -> 1005360
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] early_node_map[1] active PFN ranges
[ 0.000000] 0: 0 -> 1005360
[ 0.000000] On node 0 totalpages: 1005360
[ 0.000000] DMA zone: 32 pages used for memmap
[ 0.000000] DMA zone: 0 pages reserved
[ 0.000000] DMA zone: 4064 pages, LIFO batch:0
[ 0.000000] Normal zone: 1424 pages used for memmap
[ 0.000000] Normal zone: 180848 pages, LIFO batch:31
[ 0.000000] HighMem zone: 6399 pages used for memmap
[ 0.000000] HighMem zone: 812593 pages, LIFO batch:31
[ 0.000000] Movable zone: 0 pages used for memmap
[ 0.000000] DMI 2.3 present.
[ 0.000000] ACPI: RSDP 000F9BC0, 0014 (r0 ACPIAM)
[ 0.000000] ACPI: RSDT BFF30000, 0030 (r1 A M I OEMRSDT 6000816 MSFT 97)
[ 0.000000] ACPI: FACP BFF30200, 0081 (r2 A M I OEMFACP 6000816 MSFT 97)
[ 0.000000] ACPI: DSDT BFF30360, 3417 (r1 P4V88 P4V88001 1 INTL 2002026)
[ 0.000000] ACPI: FACS BFF40000, 0040
[ 0.000000] ACPI: APIC BFF30300, 0052 (r1 A M I OEMAPIC 6000816 MSFT 97)
[ 0.000000] ACPI: OEMB BFF40040, 003F (r1 A M I OEMBIOS 6000816 MSFT 97)
[ 0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
[ 0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
[ 0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
[ 0.000000] IOAPIC[0]: apic_id 2, version 3, address 0xfec00000, GSI 0-23
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[ 0.000000] ACPI: IRQ0 used by override.
[ 0.000000] ACPI: IRQ2 used by override.
[ 0.000000] ACPI: IRQ9 used by override.
[ 0.000000] Using ACPI (MADT) for SMP configuration information
[ 0.000000] Allocating PCI resources starting at c4000000 (gap: c0000000:3ffc0000)
[ 0.000000] PERCPU: Allocating 28552 bytes of per cpu data
[ 0.000000] NR_CPUS: 32, nr_cpu_ids: 2
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 997505
[ 0.000000] Kernel command line: root=/dev/md2 console=tty0
[ 0.000000] Enabling fast FPU save and restore… done.
[ 0.000000] Enabling unmasked SIMD FPU exception support… done.
[ 0.000000] Initializing CPU#0
[ 0.000000] PID hash table entries: 4096 (order: 12, 16384 bytes)
[ 0.000000] Xen reported: 2792.268 MHz processor.
[ 0.004000] Console: colour VGA+ 80×25
[ 0.004000] console [tty0] enabled
[ 0.004000] console [hvc-1] enabled
[ 0.004000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.004000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.004000] Software IO TLB enabled:
[ 0.004000] Aperture: 64 megabytes
[ 0.004000] Kernel range: c3bce000 – c7bce000
[ 0.004000] Address size: 27 bits
[ 0.004000] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[ 0.004000] Memory: 3888208k/4021440k available (1843k kernel code, 124136k reserved, 742k data, 196k init, 3275968k highmem)

Sadly, the machine gets so slow that it needs >20 mins (1100 secs) to boot. Most likely something is broken with PAE on this machine so it get’s awfully slow.
I’m curious what the Asrock support will say about this!? 😉

Side note: I’m really satisfied with the good response from Asrock Support. Asrock might not be the company with the best mainboards available, but its support seems very good to me: very responsive and care taking!

Uncategorized

2 thoughts on “Asrock P4V88 and 4 GB barrier – Part 2

  1. After reading the other comments and your responses, I was going to post again relative to the memory speed adjustment.
    I've never tested this myself other than swapping out hardware when spec hasn't been followed, especially where clock adjustments are concerned.
    It would be interesting if 4 GB of pc2700 would powerup when the 4 GB of pc3200 would not.

    I wish the price of this stuff would start to fall in line with what ddr2 is selling for…..

  2. True, it would be interesting to test PC2700 modules as well, but I doubt that the dealer would have had 4 DIMMs available for testing.

    This machine is just an quick solution between my old trusty PegasosII PPC machine and a new-to-buy machine when I know what I want/need, maybe end of this year or begin of next year. So I didn't want to invest that much money into stuff I can't reuse in the new machine, which ought to be something like a QuadCore, 6x SATA, 8 GB RAM thingie… 😉

Comments are closed.