lkml.org 
[lkml]   [2023]   [Dec]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v8 03/12] iommu: Remove unrecoverable fault data
    Date
    The unrecoverable fault data is not used anywhere. Remove it to avoid
    dead code.

    Suggested-by: Kevin Tian <kevin.tian@intel.com>
    Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
    Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
    Reviewed-by: Kevin Tian <kevin.tian@intel.com>
    Tested-by: Yan Zhao <yan.y.zhao@intel.com>
    Tested-by: Longfang Liu <liulongfang@huawei.com>
    ---
    include/linux/iommu.h | 72 ++-----------------------------------------
    1 file changed, 2 insertions(+), 70 deletions(-)

    diff --git a/include/linux/iommu.h b/include/linux/iommu.h
    index d683ebf152bd..c1e4369b1957 100644
    --- a/include/linux/iommu.h
    +++ b/include/linux/iommu.h
    @@ -50,67 +50,7 @@ struct iommu_dma_cookie;

    /* Generic fault types, can be expanded IRQ remapping fault */
    enum iommu_fault_type {
    - IOMMU_FAULT_DMA_UNRECOV = 1, /* unrecoverable fault */
    - IOMMU_FAULT_PAGE_REQ, /* page request fault */
    -};
    -
    -enum iommu_fault_reason {
    - IOMMU_FAULT_REASON_UNKNOWN = 0,
    -
    - /* Could not access the PASID table (fetch caused external abort) */
    - IOMMU_FAULT_REASON_PASID_FETCH,
    -
    - /* PASID entry is invalid or has configuration errors */
    - IOMMU_FAULT_REASON_BAD_PASID_ENTRY,
    -
    - /*
    - * PASID is out of range (e.g. exceeds the maximum PASID
    - * supported by the IOMMU) or disabled.
    - */
    - IOMMU_FAULT_REASON_PASID_INVALID,
    -
    - /*
    - * An external abort occurred fetching (or updating) a translation
    - * table descriptor
    - */
    - IOMMU_FAULT_REASON_WALK_EABT,
    -
    - /*
    - * Could not access the page table entry (Bad address),
    - * actual translation fault
    - */
    - IOMMU_FAULT_REASON_PTE_FETCH,
    -
    - /* Protection flag check failed */
    - IOMMU_FAULT_REASON_PERMISSION,
    -
    - /* access flag check failed */
    - IOMMU_FAULT_REASON_ACCESS,
    -
    - /* Output address of a translation stage caused Address Size fault */
    - IOMMU_FAULT_REASON_OOR_ADDRESS,
    -};
    -
    -/**
    - * struct iommu_fault_unrecoverable - Unrecoverable fault data
    - * @reason: reason of the fault, from &enum iommu_fault_reason
    - * @flags: parameters of this fault (IOMMU_FAULT_UNRECOV_* values)
    - * @pasid: Process Address Space ID
    - * @perm: requested permission access using by the incoming transaction
    - * (IOMMU_FAULT_PERM_* values)
    - * @addr: offending page address
    - * @fetch_addr: address that caused a fetch abort, if any
    - */
    -struct iommu_fault_unrecoverable {
    - __u32 reason;
    -#define IOMMU_FAULT_UNRECOV_PASID_VALID (1 << 0)
    -#define IOMMU_FAULT_UNRECOV_ADDR_VALID (1 << 1)
    -#define IOMMU_FAULT_UNRECOV_FETCH_ADDR_VALID (1 << 2)
    - __u32 flags;
    - __u32 pasid;
    - __u32 perm;
    - __u64 addr;
    - __u64 fetch_addr;
    + IOMMU_FAULT_PAGE_REQ = 1, /* page request fault */
    };

    /**
    @@ -142,19 +82,11 @@ struct iommu_fault_page_request {
    /**
    * struct iommu_fault - Generic fault data
    * @type: fault type from &enum iommu_fault_type
    - * @padding: reserved for future use (should be zero)
    - * @event: fault event, when @type is %IOMMU_FAULT_DMA_UNRECOV
    * @prm: Page Request message, when @type is %IOMMU_FAULT_PAGE_REQ
    - * @padding2: sets the fault size to allow for future extensions
    */
    struct iommu_fault {
    __u32 type;
    - __u32 padding;
    - union {
    - struct iommu_fault_unrecoverable event;
    - struct iommu_fault_page_request prm;
    - __u8 padding2[56];
    - };
    + struct iommu_fault_page_request prm;
    };

    /**
    --
    2.34.1
    \
     
     \ /
      Last update: 2023-12-07 07:49    [W:3.414 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site