RE: [PATCH v3 11/23] iommufd/viommu: Add IOMMUFD_CMD_VQUEUE_ALLOC ioctl

Tian, Kevin
2025-05-07T09:05:06Z

> From: Vasant Hegde <vasant.hegde@amd.com>
> Sent: Wednesday, May 7, 2025 3:42 PM
>
> Hi Jason,
>
>
> On 5/6/2025 5:31 PM, Jason Gunthorpe wrote:
> > Do you need a modify queue operation?
>
> We have two types of operations. One that impacts the queue, other set of
> bits
> which doesn't operate on qeueue.
>
> ex: Event log buffer
> - We configure "MMIO Offset 0010h Event Log Base Address Register" with
> Base
> address and size
>
> - MMIO Offset 0018h IOMMU Control Register
> EventLogEn: Event log enable
> * When guest sets this bit, qemu will trap and will send queue_alloc
> * When guest disables this bit, qemu will trap and send vqueue_destroy
>
> This part is fine.
>
> EventIntEn: Event log interrupt enable
> * When guest sets this bit, qemu will trap
> * this needs to be communicated to Host so that we can program VF
> Control
> BAR and enable the interrupt
>
> - There is other bit "Completion wait interrupt enable"
> This doesn't related to any buffer. Instead if we configure this for
> completion wait command it will generate interrupt.
>
> I am asking how do we handle above two steps? Should it be part of queue
> IOCTL
> or may be some other IOCTL which just passes these info to HW driver?
>

Probably IOMMUFD_CMD_OPTION can server the purpose?