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:	Thu, 10 May 2007 14:22:11 -0700
From:	Jeremy Fitzhardinge <jeremy@...p.org>
To:	Christoph Lameter <clameter@....com>
CC:	William Lee Irwin III <wli@...omorphy.com>,
	Hugh Dickins <hugh@...itas.com>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	Andi Kleen <ak@...e.de>, linux-kernel@...r.kernel.org
Subject: Re: slub-i386-support.patch

Christoph Lameter wrote:
>> This is wrong; pgd's are smaller than PAGE_SIZE on PAE. Burning lowmem
>> like this is very, very bad for such systems. pmd_cache is rather
>> trivial to convert to quicklists, since all it does is zero pages. I
>> still don't approve of even the !SHARED_KERNEL_PMD case using PAGE_SIZE
>> -sized pgd's. Xen should really be fixed to avoid requiring guests to
>> have recursive pagetables or whatever it's doing.
>>     
>
> But the Xen guys need the full sized pgd?
>   

Yes, Xen needs a page-sized PGD.  There are two reasons:

   1. Xen inherently needs a whole page for the pgd, because it
      classifies pages by type, and the pgd is a pagetable-typed page.
   2. When the kernel mappings are not being shared between processes,
      as in non-PAE or PAE with !SHARED_KERNEL_PMD, it maintains a
      pgd_list linked though the index field in the page structure's
      index field.  For this to work, you can't have more than one pgd
      per page.  The pgd_list is needed to sync the vmalloc mappings
      across all the pagetables.

Xen needs to set !SHARED_KERNEL_PMD for PAE when running a 32-bit kernel
under a 32-bit hypervisor; when running under a 64-bit hypervisor,
there's no need to steal any guest address space for the hypervisor.  (I
haven't implemented this on the Linux side yet.)

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