Thread (7 messages) flat view 7 messages, 3 authors, 2016-06-21

Re: [v2,2/2] powerpc/mm: Ensure "special" zones are empty

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-05-09 23:55:57
Also in: linux-mm

On Thu, 2016-05-05 at 07:54:09 UTC, Oliver O'Halloran wrote:
The mm zone mechanism was traditionally used by arch specific code to
partition memory into allocation zones. However there are several zones
that are managed by the mm subsystem rather than the architecture. Most
architectures set the max PFN of these special zones to zero, however on
powerpc we set them to ~0ul. This, in conjunction with a bug in
free_area_init_nodes() results in all of system memory being placed in
ZONE_DEVICE when enabled. Device memory cannot be used for regular kernel
memory allocations so this will cause a kernel panic at boot.
This is breaking my freescale machine:

  Sorting __ex_table...
  Unable to handle kernel paging request for data at address 0xc000000101e28020
  Faulting instruction address: 0xc0000000009ab698
  cpu 0x0: Vector: 300 (Data Access) at [c000000000acbb30]
      pc: c0000000009ab698: .reserve_bootmem_region+0x64/0x8c
      lr: c0000000009883d0: .free_all_bootmem+0x70/0x200
      sp: c000000000acbdb0
     msr: 80021000
     dar: c000000101e28020
   dsisr: 800000
    current = 0xc000000000a07640
    paca    = 0xc00000003fff5000	 softe: 0	 irq_happened: 0x01
      pid   = 0, comm = swapper
  Linux version 4.6.0-rc3-00160-gc09920947f23 (michael@ka1) (gcc version 5.3.0 (GCC) ) #5 SMP Tue May 10 09:44:11 AEST 2016
  enter ? for help
  [link register   ] c0000000009883d0 .free_all_bootmem+0x70/0x200
  [c000000000acbdb0] c000000000988398 .free_all_bootmem+0x38/0x200 (unreliable)
  [c000000000acbe80] c00000000097b700 .mem_init+0x5c/0x7c
  [c000000000acbef0] c000000000971a0c .start_kernel+0x28c/0x4e4
  [c000000000acbf90] c000000000000544 start_here_common+0x20/0x5c
  0:mon> ? 

I can give you access some time if you need to debug it.

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help