lkml.org 
[lkml]   [2019]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/4] iommu: Add I/O ASID allocator
    On Wed, Sep 18, 2019 at 04:26:32PM -0700, Jacob Pan wrote:
    > From: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
    >
    > Some devices might support multiple DMA address spaces, in particular
    > those that have the PCI PASID feature. PASID (Process Address Space ID)
    > allows to share process address spaces with devices (SVA), partition a
    > device into VM-assignable entities (VFIO mdev) or simply provide
    > multiple DMA address space to kernel drivers. Add a global PASID
    > allocator usable by different drivers at the same time. Name it I/O ASID
    > to avoid confusion with ASIDs allocated by arch code, which are usually
    > a separate ID space.
    >
    > The IOASID space is global. Each device can have its own PASID space,
    > but by convention the IOMMU ended up having a global PASID space, so
    > that with SVA, each mm_struct is associated to a single PASID.
    >
    > The allocator is primarily used by IOMMU subsystem but in rare occasions
    > drivers would like to allocate PASIDs for devices that aren't managed by
    > an IOMMU, using the same ID space as IOMMU.
    >
    > Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
    > Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>

    Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

    \
     
     \ /
      Last update: 2019-09-20 18:33    [W:2.107 / U:1.164 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site