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]
Message-ID: <20130629172123.GA3353@n2100.arm.linux.org.uk>
Date:	Sat, 29 Jun 2013 18:21:24 +0100
From:	Russell King - ARM Linux <linux@....linux.org.uk>
To:	Tejun Heo <tj@...nel.org>
Cc:	Santosh Shilimkar <santosh.shilimkar@...com>,
	linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
	Catalin Marinas <catalin.marinas@....com>,
	Will Deacon <will.deacon@....com>,
	Nicolas Pitre <nicolas.pitre@...aro.org>
Subject: Re: [PATCH] WIP: HACK: LPAE, BOOTMEM and NO_BOOTMEM

On Sat, Jun 29, 2013 at 08:29:59AM -0700, Tejun Heo wrote:
> I suppose LPAE on arm is analogous to PAE on x86, IOW, high memory?
> This does affect memory initilization as you need to register memory
> areas which aren't addressable directly; however, why does it affect
> generic code which is just allocating memory?  Note that x86 already
> does highmem and the existing code works fine.  Once all bootmem users
> are gone, we can remove the bootmem wrappers but I don't what the
> point is with introducing yet another wrapper.

The reason is actually quite simple: on x86 you always have memory
starting at physical address zero.

Unfortunately, that has not been true on ARM - it's very common for
there to be an offset on physical memory, sometimes of the order of
3GB or more.  This is because on reset, ARMs start executing the code
at physical address zero, which therefore can't be RAM - and there's
a desire to avoid complex switching games in hardware to temporarily
map ROM there instead of RAM.

On these SoCs which Santosh is working on, the main physical memory
mapping is above 4GB, with just a small alias below 4GB to allow the
system to boot without the MMU being on, as they may have more than
4GB of RAM.  As I understand it, the small alias below 4GB is not
suitable for use as a "lowmem" mapping.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ