All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Williamson <alex.williamson@redhat.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Matthew Garrett <matthew.garrett@nebula.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-security-module@vger.kernel.org" 
	<linux-security-module@vger.kernel.org>,
	"linux-efi@vger.kernel.org" <linux-efi@vger.kernel.org>,
	"kexec@lists.infradead.org" <kexec@lists.infradead.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>
Subject: Re: [PATCH 01/12] Security: Add CAP_COMPROMISE_KERNEL
Date: Tue, 19 Mar 2013 21:18:23 -0600	[thread overview]
Message-ID: <1363749503.24132.482.camel@bling.home> (raw)
In-Reply-To: <51492828.5070803@zytor.com>

On Tue, 2013-03-19 at 20:08 -0700, H. Peter Anvin wrote:
> On 03/19/2013 07:48 PM, H. Peter Anvin wrote:
> > On 03/19/2013 06:28 PM, Matthew Garrett wrote:
> >> Mm. The question is whether we can reliably determine the ranges a
> device should be able to access without having to trust userspace
> (and, ideally, without having to worry about whether iommu vendors
> have done their job). It's pretty important for PCI passthrough, so we
> do need to care. 
> > 
> > It is actually very simple: the device should be able to DMA into/out of:
> > 
> > 1. pinned pages
> > 2. owned by the process controlling the device
> > 
> > ... and nothing else.
> > 
> 
> The "pinning" process needs to involve a call to the kernel to process
> the page for DMA (pinning the page and opening it in the iommu) and
> return a transaction address, of course.
> 
> I think we have the interface for that in vfio, but I haven't followed
> that work.

Yes, vfio does this and is meant to provide a secure-boot-friendly PCI
passthrough interface.  Thanks,

Alex


WARNING: multiple messages have this Message-ID (diff)
From: Alex Williamson <alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: "H. Peter Anvin" <hpa-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
Cc: Matthew Garrett
	<matthew.garrett-05XSO3Yj/JvQT0dZR+AlfA@public.gmane.org>,
	"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-security-module-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-security-module-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	"linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 01/12] Security: Add CAP_COMPROMISE_KERNEL
Date: Tue, 19 Mar 2013 21:18:23 -0600	[thread overview]
Message-ID: <1363749503.24132.482.camel@bling.home> (raw)
In-Reply-To: <51492828.5070803-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>

On Tue, 2013-03-19 at 20:08 -0700, H. Peter Anvin wrote:
> On 03/19/2013 07:48 PM, H. Peter Anvin wrote:
> > On 03/19/2013 06:28 PM, Matthew Garrett wrote:
> >> Mm. The question is whether we can reliably determine the ranges a
> device should be able to access without having to trust userspace
> (and, ideally, without having to worry about whether iommu vendors
> have done their job). It's pretty important for PCI passthrough, so we
> do need to care. 
> > 
> > It is actually very simple: the device should be able to DMA into/out of:
> > 
> > 1. pinned pages
> > 2. owned by the process controlling the device
> > 
> > ... and nothing else.
> > 
> 
> The "pinning" process needs to involve a call to the kernel to process
> the page for DMA (pinning the page and opening it in the iommu) and
> return a transaction address, of course.
> 
> I think we have the interface for that in vfio, but I haven't followed
> that work.

Yes, vfio does this and is meant to provide a secure-boot-friendly PCI
passthrough interface.  Thanks,

Alex

WARNING: multiple messages have this Message-ID (diff)
From: Alex Williamson <alex.williamson@redhat.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Matthew Garrett <matthew.garrett@nebula.com>,
	"linux-efi@vger.kernel.org" <linux-efi@vger.kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"kexec@lists.infradead.org" <kexec@lists.infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-security-module@vger.kernel.org"
	<linux-security-module@vger.kernel.org>
Subject: Re: [PATCH 01/12] Security: Add CAP_COMPROMISE_KERNEL
Date: Tue, 19 Mar 2013 21:18:23 -0600	[thread overview]
Message-ID: <1363749503.24132.482.camel@bling.home> (raw)
In-Reply-To: <51492828.5070803@zytor.com>

On Tue, 2013-03-19 at 20:08 -0700, H. Peter Anvin wrote:
> On 03/19/2013 07:48 PM, H. Peter Anvin wrote:
> > On 03/19/2013 06:28 PM, Matthew Garrett wrote:
> >> Mm. The question is whether we can reliably determine the ranges a
> device should be able to access without having to trust userspace
> (and, ideally, without having to worry about whether iommu vendors
> have done their job). It's pretty important for PCI passthrough, so we
> do need to care. 
> > 
> > It is actually very simple: the device should be able to DMA into/out of:
> > 
> > 1. pinned pages
> > 2. owned by the process controlling the device
> > 
> > ... and nothing else.
> > 
> 
> The "pinning" process needs to involve a call to the kernel to process
> the page for DMA (pinning the page and opening it in the iommu) and
> return a transaction address, of course.
> 
> I think we have the interface for that in vfio, but I haven't followed
> that work.

Yes, vfio does this and is meant to provide a secure-boot-friendly PCI
passthrough interface.  Thanks,

Alex


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  reply	other threads:[~2013-03-20  3:18 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-20  1:28 [PATCH 01/12] Security: Add CAP_COMPROMISE_KERNEL Matthew Garrett
2013-03-20  1:28 ` Matthew Garrett
2013-03-20  1:28 ` Matthew Garrett
2013-03-20  1:28 ` Matthew Garrett
2013-03-20  2:48 ` H. Peter Anvin
2013-03-20  2:48   ` H. Peter Anvin
2013-03-20  2:48   ` H. Peter Anvin
2013-03-20  3:08   ` H. Peter Anvin
2013-03-20  3:08     ` H. Peter Anvin
2013-03-20  3:08     ` H. Peter Anvin
2013-03-20  3:08     ` H. Peter Anvin
2013-03-20  3:18     ` Alex Williamson [this message]
2013-03-20  3:18       ` Alex Williamson
2013-03-20  3:18       ` Alex Williamson
2013-03-20  3:18       ` Alex Williamson
2013-03-20  3:22       ` H. Peter Anvin
2013-03-20  3:22         ` H. Peter Anvin
2013-03-20  3:22         ` H. Peter Anvin
2013-03-20  3:22         ` H. Peter Anvin
2013-03-20  3:27         ` Alex Williamson
2013-03-20  3:27           ` Alex Williamson
2013-03-20  3:27           ` Alex Williamson
2013-03-20  3:27           ` Alex Williamson
  -- strict thread matches above, loose matches on Subject: below --
2013-03-21 16:32 Matthew Garrett
2013-03-21 16:32 ` Matthew Garrett
2013-03-21 16:32 ` Matthew Garrett
2013-03-21 16:32 ` Matthew Garrett
2013-03-20  1:09 Matthew Garrett
2013-03-20  1:09 ` Matthew Garrett
2013-03-20  1:09 ` Matthew Garrett
2013-03-20  1:09 ` Matthew Garrett
2013-03-20  1:07 Matthew Garrett
2013-03-20  1:07 ` Matthew Garrett
2013-03-20  1:07 ` Matthew Garrett
2013-03-20  1:07 ` Matthew Garrett
2013-03-20  1:11 ` H. Peter Anvin
2013-03-20  1:11   ` H. Peter Anvin
2013-03-20  1:11   ` H. Peter Anvin
2013-03-20  1:11   ` H. Peter Anvin
2013-03-18 21:32 Matthew Garrett
2013-03-18 21:32 ` Matthew Garrett
2013-03-19  4:47 ` James Morris
2013-03-19  4:47   ` James Morris
2013-03-19  4:47   ` James Morris
2013-03-20  1:03   ` H. Peter Anvin
2013-03-20  1:03     ` H. Peter Anvin
2013-03-20 16:41   ` Mimi Zohar
2013-03-20 16:41     ` Mimi Zohar
2013-03-20 16:49     ` Matthew Garrett
2013-03-20 16:49       ` Matthew Garrett
2013-03-20 16:49       ` Matthew Garrett
2013-03-20 16:49       ` Matthew Garrett
2013-03-20 18:01       ` Mimi Zohar
2013-03-20 18:01         ` Mimi Zohar
2013-03-20 18:01         ` Mimi Zohar
2013-03-20 18:12         ` Matthew Garrett
2013-03-20 18:12           ` Matthew Garrett
2013-03-20 18:12           ` Matthew Garrett
2013-03-20 18:12           ` Matthew Garrett
2013-03-20 19:16           ` Mimi Zohar
2013-03-20 19:16             ` Mimi Zohar
2013-03-20 19:16             ` Mimi Zohar
2013-03-20 19:16             ` Mimi Zohar
2013-03-20 20:37             ` Matthew Garrett
2013-03-20 20:37               ` Matthew Garrett
2013-03-20 20:37               ` Matthew Garrett
2013-03-20 20:37               ` Matthew Garrett
2013-03-20 21:11               ` Mimi Zohar
2013-03-20 21:11                 ` Mimi Zohar
2013-03-20 21:11                 ` Mimi Zohar
2013-03-20 21:18                 ` Matthew Garrett
2013-03-20 21:18                   ` Matthew Garrett
2013-03-20 21:18                   ` Matthew Garrett
2013-03-20 21:18                   ` Matthew Garrett
2013-03-21 13:43                   ` Vivek Goyal
2013-03-21 13:43                     ` Vivek Goyal
2013-03-21 13:43                     ` Vivek Goyal
2013-03-21 13:43                     ` Vivek Goyal
2013-03-21 15:37                     ` Serge E. Hallyn
2013-03-21 15:37                       ` Serge E. Hallyn
2013-03-21 15:37                       ` Serge E. Hallyn
2013-03-21 15:37                       ` Serge E. Hallyn
2013-03-21 15:52                       ` Vivek Goyal
2013-03-21 15:52                         ` Vivek Goyal
2013-03-21 15:52                         ` Vivek Goyal
2013-03-21 15:52                         ` Vivek Goyal
2013-03-21 15:58                         ` Serge E. Hallyn
2013-03-21 15:58                           ` Serge E. Hallyn
2013-03-21 15:58                           ` Serge E. Hallyn
2013-03-21 15:58                           ` Serge E. Hallyn
2013-03-21 16:04                           ` Vivek Goyal
2013-03-21 16:04                             ` Vivek Goyal
2013-03-21 16:04                             ` Vivek Goyal
2013-03-21 16:19                             ` Serge E. Hallyn
2013-03-21 16:19                               ` Serge E. Hallyn
2013-03-21 16:19                               ` Serge E. Hallyn
2013-03-21 16:19                               ` Serge E. Hallyn
2013-03-21 17:15                               ` Vivek Goyal
2013-03-21 17:15                                 ` Vivek Goyal
2013-03-21 17:15                                 ` Vivek Goyal
2013-03-21 17:15                                 ` Vivek Goyal
2013-03-21  1:58     ` James Morris
2013-03-21  1:58       ` James Morris
2013-03-19  7:18 ` Yves-Alexis Perez
2013-03-19  7:18   ` Yves-Alexis Perez
2013-03-20  1:02 ` H. Peter Anvin
2013-03-20  1:02   ` H. Peter Anvin
2013-03-20  1:05   ` H. Peter Anvin
2013-03-20  1:05     ` H. Peter Anvin
2013-03-20 13:15   ` Matthew Garrett
2013-03-20 13:15     ` Matthew Garrett
2013-03-20 13:15     ` Matthew Garrett
2013-03-20 13:15     ` Matthew Garrett
2013-03-20 15:03     ` H. Peter Anvin
2013-03-20 15:03       ` H. Peter Anvin
2013-03-20 15:03       ` H. Peter Anvin
2013-03-20 15:03       ` H. Peter Anvin
2013-03-20 15:14       ` Matthew Garrett
2013-03-20 15:14         ` Matthew Garrett
2013-03-20 15:14         ` Matthew Garrett
2013-03-20 15:14         ` Matthew Garrett
2013-03-20 16:45         ` H. Peter Anvin
2013-03-20 16:45           ` H. Peter Anvin
2013-03-20 16:45           ` H. Peter Anvin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1363749503.24132.482.camel@bling.home \
    --to=alex.williamson@redhat.com \
    --cc=hpa@zytor.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=matthew.garrett@nebula.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.