linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/11] EFI runtime services virtual mapping
@ 2013-09-19 14:54 Borislav Petkov
  2013-09-19 14:54 ` [PATCH 01/11] efi: Simplify EFI_DEBUG Borislav Petkov
                   ` (12 more replies)
  0 siblings, 13 replies; 102+ messages in thread
From: Borislav Petkov @ 2013-09-19 14:54 UTC (permalink / raw)
  To: X86 ML
  Cc: LKML, Borislav Petkov, Matt Fleming, Matthew Garrett,
	H. Peter Anvin, James Bottomley, Vivek Goyal, Dave Young,
	linux-efi

From: Borislav Petkov <bp@suse.de>

Hi all,

here's finally a new version of the runtime services VA mapping patchset
which hopefully implements hpa's idea of statically mapping EFI runtime
regions in a top-down manner starting at -4Gb virtual.

We're also using a different pagetable so as not to pollute kernel
address space. For that, we switch to that table before doing an EFI
call, and afterwards we switch back to the previous one.

To the patches:

1-2 are simple cleanups which Matt probably can take now

3-10 add the machinery to map regions into an arbitrary PGD. Those I've
split deliberately into very small bites so that they can be reviewed
more thoroughly and easily for my pagetable skills are pretty basic.

11 is the actual patch which implements that mapping so that we can use
runtime services in kexec (which is the whole reason for this fuss :))

So please take a long hard look at those, hammer on them on your
boxes and let me know. They boot fine on my Dell UEFI box and in OVMF
(obviously :)).

Thanks.

Borislav Petkov (11):
  efi: Simplify EFI_DEBUG
  efi: Remove EFI_PAGE_SHIFT and EFI_PAGE_SIZE
  x86, pageattr: Lookup address in an arbitrary PGD
  x86, pageattr: Add a PGD pagetable populating function
  x86, pageattr: Add a PUD pagetable populating function
  x86, pageattr: Add a PMD pagetable populating function
  x86, pageattr: Add a PTE pagetable populating function
  x86, pageattr: Add a PUD error unwinding path
  x86, pageattr: Add last levels of error path
  x86, cpa: Map in an arbitrary pgd
  EFI: Runtime services virtual mapping

 arch/x86/boot/compressed/eboot.c     |  12 +-
 arch/x86/boot/compressed/eboot.h     |   1 -
 arch/x86/include/asm/efi.h           |  58 +++--
 arch/x86/include/asm/pgtable_types.h |   3 +-
 arch/x86/mm/pageattr.c               | 461 +++++++++++++++++++++++++++++++++--
 arch/x86/platform/efi/efi.c          | 126 +++++-----
 arch/x86/platform/efi/efi_64.c       |  56 +----
 arch/x86/platform/efi/efi_stub_64.S  |  47 ++++
 include/linux/efi.h                  |   6 +-
 9 files changed, 615 insertions(+), 155 deletions(-)

-- 
1.8.4


^ permalink raw reply	[flat|nested] 102+ messages in thread

end of thread, other threads:[~2013-10-31  7:09 UTC | newest]

Thread overview: 102+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-19 14:54 [PATCH 00/11] EFI runtime services virtual mapping Borislav Petkov
2013-09-19 14:54 ` [PATCH 01/11] efi: Simplify EFI_DEBUG Borislav Petkov
2013-09-19 14:54 ` [PATCH 02/11] efi: Remove EFI_PAGE_SHIFT and EFI_PAGE_SIZE Borislav Petkov
2013-09-20 10:42   ` Matt Fleming
2013-09-21 15:21     ` Leif Lindholm
2013-09-21 15:41       ` Borislav Petkov
2013-09-21 15:50         ` Borislav Petkov
2013-09-21 16:01           ` Leif Lindholm
2013-09-21 16:03             ` Borislav Petkov
2013-09-21 15:59         ` Leif Lindholm
2013-09-19 14:54 ` [PATCH 03/11] x86, pageattr: Lookup address in an arbitrary PGD Borislav Petkov
2013-09-19 14:54 ` [PATCH 04/11] x86, pageattr: Add a PGD pagetable populating function Borislav Petkov
2013-09-19 14:54 ` [PATCH 05/11] x86, pageattr: Add a PUD " Borislav Petkov
2013-09-19 14:54 ` [PATCH 06/11] x86, pageattr: Add a PMD " Borislav Petkov
2013-09-19 14:54 ` [PATCH 07/11] x86, pageattr: Add a PTE " Borislav Petkov
2013-09-19 14:54 ` [PATCH 08/11] x86, pageattr: Add a PUD error unwinding path Borislav Petkov
2013-09-19 14:54 ` [PATCH 09/11] x86, pageattr: Add last levels of error path Borislav Petkov
2013-09-19 14:54 ` [PATCH 10/11] x86, cpa: Map in an arbitrary pgd Borislav Petkov
2013-09-19 14:54 ` [PATCH 11/11] EFI: Runtime services virtual mapping Borislav Petkov
2013-09-21 11:39   ` [PATCH -v2] " Borislav Petkov
2013-09-22 12:35     ` Dave Young
2013-09-22 13:37       ` Borislav Petkov
2013-09-22 14:00         ` Dave Young
2013-09-22 14:31           ` Dave Young
2013-09-22 15:27         ` H. Peter Anvin
2013-09-22 16:38           ` Borislav Petkov
2013-09-23  5:45           ` Dave Young
2013-09-24  2:52           ` Dave Young
2013-09-24  3:06             ` H. Peter Anvin
2013-09-24  4:57               ` Dave Young
2013-09-24  4:58                 ` Dave Young
2013-09-24  5:23                   ` Dave Young
2013-09-24  8:57                     ` Dave Young
2013-09-24  9:43                 ` Borislav Petkov
2013-09-24 10:01                   ` Dave Young
2013-09-24 12:45                   ` Dave Young
2013-10-02 10:04               ` Borislav Petkov
2013-10-02 15:43                 ` H. Peter Anvin
2013-10-02 17:05                   ` Borislav Petkov
2013-10-02 17:32                     ` H. Peter Anvin
2013-10-02 18:42                       ` Borislav Petkov
2013-10-02 18:46                         ` H. Peter Anvin
2013-10-04  9:42                           ` Borislav Petkov
2013-10-04 14:43                             ` H. Peter Anvin
2013-10-04 14:50                               ` Borislav Petkov
2013-09-23  5:47     ` Dave Young
2013-09-23  6:29       ` Borislav Petkov
2013-09-23  7:08         ` Dave Young
2013-09-23  8:45     ` Borislav Petkov
2013-09-25  9:24     ` Borislav Petkov
2013-09-20  7:29 ` [PATCH 00/11] EFI runtime " Dave Young
2013-09-20  8:19   ` Dave Young
2013-09-20  9:33     ` Borislav Petkov
2013-09-20 10:07       ` Dave Young
2013-09-20  9:05   ` Borislav Petkov
2013-09-20  9:44     ` Matt Fleming
2013-09-20  9:49     ` Matt Fleming
2013-09-20 10:02       ` Borislav Petkov
2013-09-20 11:51     ` Dave Young
2013-09-20 12:29     ` Matt Fleming
2013-09-20 14:04       ` Dave Young
2013-10-08 16:45 ` Borislav Petkov
2013-10-08 16:47   ` [PATCH 11/12] efi: Add an efi= kernel command line parameter Borislav Petkov
2013-10-28 11:02     ` Matt Fleming
2013-10-28 11:10       ` Borislav Petkov
2013-10-08 16:48   ` [PATCH 12/12] EFI: Runtime services virtual mapping Borislav Petkov
2013-10-10  8:06     ` Dave Young
2013-10-10  8:14       ` Dave Young
2013-10-10  8:58         ` Borislav Petkov
2013-10-10 12:34           ` Matt Fleming
2013-10-11  6:24             ` Dave Young
2013-10-11  7:41               ` Borislav Petkov
2013-10-12  7:54                 ` Dave Young
2013-10-12 10:13                   ` Matt Fleming
2013-10-12 10:30                     ` Borislav Petkov
2013-10-13  3:11                       ` Dave Young
2013-10-13  9:25                         ` Borislav Petkov
2013-10-14 15:58                           ` Borislav Petkov
2013-10-21 12:47                             ` Dave Young
2013-10-21 13:37                               ` Borislav Petkov
2013-10-21 15:04                                 ` Dave Young
2013-10-22 11:18                                   ` Borislav Petkov
2013-10-23  2:17                                     ` Dave Young
2013-10-23 12:25                                       ` Borislav Petkov
2013-10-23 12:37                                         ` Matthew Garrett
2013-10-23 12:51                                         ` Dave Young
2013-10-23 13:11                                           ` Borislav Petkov
2013-10-26 15:50                                 ` Matt Fleming
2013-10-13  3:06                     ` Dave Young
2013-10-11 10:27               ` Matt Fleming
2013-10-11 13:42                 ` Dave Young
2013-10-12  2:14                   ` Dave Young
2013-10-14 15:57                     ` Peter Jones
2013-10-16  6:27                       ` Dave Young
2013-10-28 11:22     ` Matt Fleming
2013-10-28 16:00       ` Borislav Petkov
2013-10-29  6:47     ` Dave Young
2013-10-29  9:40       ` Borislav Petkov
2013-10-30  9:32         ` Dave Young
2013-10-30 10:45           ` Borislav Petkov
2013-10-31  7:07             ` Dave Young
2013-10-14 13:04   ` [PATCH 00/11] EFI runtime " Matt Fleming

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).