Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1730269

Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership

From Yisheng Xie <xieyisheng1@huawei.com>
Newsgroups linux.kernel
Subject Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership
Date 2017-09-11 12:40 +0200
Message-ID <uouie-1La-17@gated-at.bofh.it> (permalink)
References <un8Wu-3e6-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Tycho ,

On 2017/9/8 1:35, Tycho Andersen wrote:
> Hi all,
> 
> Here is v6 of the XPFO set; see v5 discussion here:
> https://lkml.org/lkml/2017/8/9/803
> 
> Changelogs are in the individual patch notes, but the highlights are:
> * add primitives for ensuring memory areas are mapped (although these are quite
>   ugly, using stack allocation; I'm open to better suggestions)
> * instead of not flushing caches, re-map pages using the above
> * TLB flushing is much more correct (i.e. we're always flushing everything
>   everywhere). I suspect we may be able to back this off in some cases, but I'm
>   still trying to collect performance numbers to prove this is worth doing.
> 
> I have no TODOs left for this set myself, other than fixing whatever review
> feedback people have. Thoughts and testing welcome!

According to the paper of Vasileios P. Kemerlis et al, the mainline kernel
will not set the Pro. of physmap(direct map area) to RW(X), so do we really
need XPFO to protect from ret2dir attack?

Thanks
Yisheng xie

> 
> Cheers,
> 
> Tycho
> 
> Juerg Haefliger (6):
>   mm, x86: Add support for eXclusive Page Frame Ownership (XPFO)
>   swiotlb: Map the buffer if it was unmapped by XPFO
>   arm64/mm: Add support for XPFO
>   arm64/mm, xpfo: temporarily map dcache regions
>   arm64/mm: Add support for XPFO to swiotlb
>   lkdtm: Add test for XPFO
> 
> Tycho Andersen (5):
>   mm: add MAP_HUGETLB support to vm_mmap
>   x86: always set IF before oopsing from page fault
>   xpfo: add primitives for mapping underlying memory
>   arm64/mm: disable section/contiguous mappings if XPFO is enabled
>   mm: add a user_virt_to_phys symbol
> 
>  Documentation/admin-guide/kernel-parameters.txt |   2 +
>  arch/arm64/Kconfig                              |   1 +
>  arch/arm64/include/asm/cacheflush.h             |  11 +
>  arch/arm64/mm/Makefile                          |   2 +
>  arch/arm64/mm/dma-mapping.c                     |  32 +--
>  arch/arm64/mm/flush.c                           |   7 +
>  arch/arm64/mm/mmu.c                             |   2 +-
>  arch/arm64/mm/xpfo.c                            | 127 +++++++++++
>  arch/x86/Kconfig                                |   1 +
>  arch/x86/include/asm/pgtable.h                  |  25 +++
>  arch/x86/mm/Makefile                            |   1 +
>  arch/x86/mm/fault.c                             |   6 +
>  arch/x86/mm/pageattr.c                          |  22 +-
>  arch/x86/mm/xpfo.c                              | 171 +++++++++++++++
>  drivers/misc/Makefile                           |   1 +
>  drivers/misc/lkdtm.h                            |   5 +
>  drivers/misc/lkdtm_core.c                       |   3 +
>  drivers/misc/lkdtm_xpfo.c                       | 194 +++++++++++++++++
>  include/linux/highmem.h                         |  15 +-
>  include/linux/mm.h                              |   2 +
>  include/linux/xpfo.h                            |  79 +++++++
>  lib/swiotlb.c                                   |   3 +-
>  mm/Makefile                                     |   1 +
>  mm/mmap.c                                       |  19 +-
>  mm/page_alloc.c                                 |   2 +
>  mm/page_ext.c                                   |   4 +
>  mm/util.c                                       |  32 +++
>  mm/xpfo.c                                       | 273 ++++++++++++++++++++++++
>  security/Kconfig                                |  19 ++
>  29 files changed, 1005 insertions(+), 57 deletions(-)
>  create mode 100644 arch/arm64/mm/xpfo.c
>  create mode 100644 arch/x86/mm/xpfo.c
>  create mode 100644 drivers/misc/lkdtm_xpfo.c
>  create mode 100644 include/linux/xpfo.h
>  create mode 100644 mm/xpfo.c
> 

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Tycho Andersen <tycho@docker.com> - 2017-09-07 19:40 +0200
  [PATCH v6 05/11] arm64/mm: Add support for XPFO Tycho Andersen <tycho@docker.com> - 2017-09-07 19:40 +0200
    Re: [PATCH v6 05/11] arm64/mm: Add support for XPFO Christoph Hellwig <hch@infradead.org> - 2017-09-08 10:00 +0200
      Re: [PATCH v6 05/11] arm64/mm: Add support for XPFO Tycho Andersen <tycho@docker.com> - 2017-09-08 19:30 +0200
        Re: [PATCH v6 05/11] arm64/mm: Add support for XPFO Julien Grall <julien.grall@arm.com> - 2017-09-14 12:50 +0200
          Re: [PATCH v6 05/11] arm64/mm: Add support for XPFO Juergen Gross <jgross@suse.com> - 2017-09-14 13:40 +0200
    Re: [kernel-hardening] [PATCH v6 05/11] arm64/mm: Add support for  XPFO Mark Rutland <mark.rutland@arm.com> - 2017-09-14 20:30 +0200
      Re: [kernel-hardening] [PATCH v6 05/11] arm64/mm: Add support for  XPFO Tycho Andersen <tycho@docker.com> - 2017-09-18 23:30 +0200
  [PATCH v6 01/11] mm: add MAP_HUGETLB support to vm_mmap Tycho Andersen <tycho@docker.com> - 2017-09-07 19:40 +0200
    Re: [PATCH v6 01/11] mm: add MAP_HUGETLB support to vm_mmap Christoph Hellwig <hch@infradead.org> - 2017-09-08 09:50 +0200
  [PATCH v6 02/11] x86: always set IF before oopsing from page fault Tycho Andersen <tycho@docker.com> - 2017-09-07 19:40 +0200
  Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Yisheng Xie <xieyisheng1@huawei.com> - 2017-09-11 12:40 +0200
    Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Tycho Andersen <tycho@docker.com> - 2017-09-11 17:10 +0200
      Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Yisheng Xie <xieyisheng1@huawei.com> - 2017-09-12 09:10 +0200
        Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Juerg Haefliger <juerg.haefliger@canonical.com> - 2017-09-12 09:50 +0200
          Re: [PATCH v6 00/11] Add support for eXclusive Page Frame Ownership Yisheng Xie <xieyisheng1@huawei.com> - 2017-09-12 10:20 +0200

csiph-web