On Wed, 12 Jun 2019 18:59:38 +0100 Jean-Philippe Brucker <[email protected]> wrote:
> Ease future extensions of struct iommu_fault_page_request and struct > iommu_fault_unrecoverable by adding a few bytes of padding. That way, > a new field can be added to either of these structures by simply > introducing a new flag. To extend it after the size limit is reached, > a new fault reporting structure will have to be negotiated with > userspace. > > With 56 bytes of padding, the total size of iommu_fault is 64 bytes > and fits in a cache line on a lot of contemporary machines, while > providing 16 and 24 bytes of extension to structures > iommu_fault_page_request and iommu_fault_unrecoverable respectively. > > Signed-off-by: Jean-Philippe Brucker <[email protected]> > --- > include/uapi/linux/iommu.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/include/uapi/linux/iommu.h b/include/uapi/linux/iommu.h > index f45d8e9e59c3..fc00c5d4741b 100644 > --- a/include/uapi/linux/iommu.h > +++ b/include/uapi/linux/iommu.h > @@ -105,15 +105,17 @@ struct iommu_fault_page_request { > * @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]; > }; > }; > Acked-by: Jacob Pan <[email protected]> > /** [Jacob Pan] _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
