lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 18 May 2021 11:35:46 +0100
From:   "Russell King (Oracle)" <linux@...linux.org.uk>
To:     Corentin Labbe <clabbe.montjoie@...il.com>
Cc:     linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: REGRESSION: initrd is disabled due to memory overlap

On Tue, May 18, 2021 at 12:24:12PM +0200, Corentin Labbe wrote:
> Hello
> 
> On my SSI1328 gemini board, I use initrd=0x800000,9M in cmdline.
> On next-20210518 and 5.13-rc1 I got:
> Booting Linux on physical CPU 0x0
> Linux version 5.13.0-rc2-next-20210518+ (compile@Red) (armv7a-unknown-linux-gnueabihf-gcc (Gentoo 10.2.0-r5 p6) 10.2.0, GNU ld (Gentoo 2.35.2 p1) 2.35.2) #77 PREEMPT Tue May 18 12:14:41 CEST 2021
> CPU: FA526 [66015261] revision 1 (ARMv4), cr=0000397f
> CPU: VIVT data cache, VIVT instruction cache
> OF: fdt: Machine model: SSI 1328
> Memory policy: Data cache writeback
> INITRD: 0x00800000+0x00900000 overlaps in-use memory region - disabling initrd
> Zone ranges:
>   Normal   [mem 0x0000000000000000-0x0000000007ffffff]
>   HighMem  empty
> Movable zone start for each node
> Early memory node ranges
>   node   0: [mem 0x0000000000000000-0x0000000007ffffff]
> Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
> Built 1 zonelists, mobility grouping on.  Total pages: 32512
> Kernel command line: console=ttyS0,19200n8 initrd=0x800000,9M
> Dentry cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
> Inode-cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
> mem auto-init: stack:off, heap alloc:off, heap free:off
> Memory: 117480K/131072K available (5459K kernel code, 595K rwdata, 1508K rodata, 180K init, 376K bss, 13592K reserved, 0K cma-reserved, 0K highmem)
> 
> On 5.12, initrd is used and works.

I think this is caused by the normal growth of the size of the kernel.
If you look in the System.map for the _end symbol, I think you'll find
that its address is larger than PAGE_OFFSET + 0x800000, causing the
overlap.

If so, the only realistic thing to do is to move the initrd higher up
in memory - I don't think you'll get much traction with the idea of
reducing the kernel's memory footprint.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ