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, 06 Apr 2010 13:04:18 -0700
From:	"H. Peter Anvin" <hpa@...or.com>
To:	Joel Fernandes <agnel.joel@...il.com>
CC:	Frank Hu <frank.hu.2001@...il.com>,
	hayfeng Lee <teklife.kernel@...il.com>,
	linux-kernel@...r.kernel.org, linux-kernel@...kernel.org,
	kernelnewbies@...linux.org
Subject: Re: why choose 896MB to the start point of ZONE_HIGHMEM

On 04/06/2010 01:01 PM, Joel Fernandes wrote:
> Hi Peter,
> 
> On Wed, Apr 7, 2010 at 1:14 AM, H. Peter Anvin <hpa@...or.com> wrote:
>> On 04/06/2010 12:20 PM, Frank Hu wrote:
>>>>
>>>> The ELF ABI specifies that user space has 3 GB available to it.  That
>>>> leaves 1 GB for the kernel.  The kernel, by default, uses 128 MB for I/O
>>>> mapping, vmalloc, and kmap support, which leaves 896 MB for LOWMEM.
>>>>
>>>> All of these boundaries are configurable; with PAE enabled the user
>>>> space boundary has to be on a 1 GB boundary.
>>>>
>>>
>>> the VM split is also configurable when building the kernel (for 32-bit
>>> processors).
>>
>> I did say "all these boundaries are configurable".  Rather explicitly.
>>
> 
> I thought the 896 MB was a hardware limitation on 32 bit architectures
> and something that cannot be configured? Or am I missing something
> here? Also the vm-splits refer to "virtual memory" . While ZONE_* and
> the 896MB we were discussing refers to "physical memory". How then is
> discussing about vm splits pertinent here?
> 

It's not a hardware limitation.  Rather, it has to do with how the 4 GB
of virtual address space is carved up.  LOWMEM specifically refers to
the amount of memory which is permanently mapped into the virtual
address space, whereas HIGHMEM is mapped in and out on demand -- a
fairly expensive operation.

	-hpa
--
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