[Bug 215781] New: Highmem support broken on kernels greater 5.15.x on ppc32?

bugzilla-daemon at kernel.org bugzilla-daemon at kernel.org
Thu Mar 31 09:52:20 AEDT 2022


https://bugzilla.kernel.org/show_bug.cgi?id=215781

            Bug ID: 215781
           Summary: Highmem support broken on kernels greater 5.15.x on
                    ppc32?
           Product: Platform Specific/Hardware
           Version: 2.5
    Kernel Version: 5.16.18
          Hardware: PPC-32
                OS: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: PPC-32
          Assignee: platform_ppc-32 at kernel-bugs.osdl.org
          Reporter: erhard_f at mailbox.org
        Regression: Yes

Created attachment 300664
  --> https://bugzilla.kernel.org/attachment.cgi?id=300664&action=edit
dmesg (5.16.18, PowerMac G4 DP)

Noticed my G4 DP ran a bit sluggish... Turned out it uses only 614664K of
2097152K RAM. Happens on both kernel 5.16.18 and 5.17.1. Kernels 5.15 and
before work as expected.

It seems to be a problem with highmem as 5.16.18 and 5.1.7.1 show 0K highmem.
CONFIG_HIGHMEM=y is of course set.

Kernel 5.16.18 says:
[...]
Top of RAM: 0x80000000, Total RAM: 0x80000000
Memory hole size: 0MB
Zone ranges:
  DMA      [mem 0x0000000000000000-0x0000000027ffffff]
  Normal   empty
  HighMem  [mem 0x0000000028000000-0x000000007fffffff]
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000000000000-0x000000007fffffff]
Initmem setup node 0 [mem 0x0000000000000000-0x000000007fffffff]
percpu: Embedded 12 pages/cpu s19404 r8192 d21556 u49152
pcpu-alloc: s19404 r8192 d21556 u49152 alloc=12*4096
pcpu-alloc: [0] 0 [0] 1 
Built 1 zonelists, mobility grouping on.  Total pages: 522848
Kernel command line: ro root=/dev/sda5 zswap.max_pool_percent=16
zswap.zpool=z3fold slub_debug=FZP page_poison=1
netconsole=6666 at 192.168.2.5/eth0,6666 at 192.168.2.2/70:85:C2:30:EC:01 
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
mem auto-init: stack:__user(zero), heap alloc:off, heap free:off
Kernel virtual memory layout:
  * 0xffbbf000..0xfffff000  : fixmap
  * 0xff400000..0xff800000  : highmem PTEs
  * 0xff115000..0xff400000  : early ioremap
  * 0xe9000000..0xff115000  : vmalloc & ioremap
  * 0xb0000000..0xc0000000  : modules
Memory: 614664K/2097152K available (8828K kernel code, 488K rwdata, 1664K
rodata, 1316K init, 381K bss, 1482488K reserved, 0K cma-reserved, 0K highmem)
[...]

On kernel 5.15.23 I got highmem as expected:
[...]
Top of RAM: 0x80000000, Total RAM: 0x80000000
Memory hole size: 0MB
Zone ranges:
  DMA      [mem 0x0000000000000000-0x0000000027ffffff]
  Normal   empty
  HighMem  [mem 0x0000000028000000-0x000000007fffffff]
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000000000000-0x000000007fffffff]
Initmem setup node 0 [mem 0x0000000000000000-0x000000007fffffff]
percpu: Embedded 12 pages/cpu s19404 r8192 d21556 u49152
pcpu-alloc: s19404 r8192 d21556 u49152 alloc=12*4096
pcpu-alloc: [0] 0 [0] 1 
Built 1 zonelists, mobility grouping on.  Total pages: 522848
Kernel command line: ro root=/dev/sda5 zswap.max_pool_percent=16
zswap.zpool=z3fold slub_debug=FZP page_poison=1
netconsole=6666 at 192.168.2.5/eth0,6666 at 192.168.2.2/70:85:C2:30:EC:01 
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
mem auto-init: stack:__user(zero), heap alloc:off, heap free:off
Kernel virtual memory layout:
  * 0xffbbf000..0xfffff000  : fixmap
  * 0xff400000..0xff800000  : highmem PTEs
  * 0xff115000..0xff400000  : early ioremap
  * 0xe9000000..0xff115000  : vmalloc & ioremap
  * 0xb0000000..0xc0000000  : modules
Memory: 2056460K/2097152K available (8688K kernel code, 488K rwdata, 1644K
rodata, 1316K init, 377K bss, 40692K reserved, 0K cma-reserved, 1441792K
highmem)
[...]

For testing I used the kernel .config from 5.15.32 for 5.16.18 via make
oldconfig and selecting =n for all questions.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.


More information about the Linuxppc-dev mailing list