[virtio-dev] Re: [PATCH v2 1/2] transport-pci: Introduce legacy registers access commands

Michael S. Tsirkin
2023-05-17T05:44:42Z

On Sat, May 06, 2023 at 03:01:34AM +0300, Parav Pandit wrote:
> +\begin{lstlisting}
> +struct virtio_admin_cmd_lreg_wr_data {
> + u8 offset; /* Starting byte offset of the register(s) to write */
> + u8 register[];
> +};
> +\end{lstlisting}

So to summarize, I think the main comment here was to have separate
commands for access to common versus device config. Just today I thought
some more and came up with another reason why this is a good idea: if we
ever want legacy MMIO emulation, we can reuse the device config command.

Jason also feels the common config command can be shared
with vq transport effort. We can discuss this, for sure,
I guess its putting code in hardware versus in hypervisor,
but if there are hardware vendors who strictly want
this code in hardware I don't have a big problem with this
even if I don't exactly get why.

With this idea all hypervisor has to do is subtract the offset from
device config access, sounds like a small price to pay. Does this sound
like a reasonable compromize to you?

--
MST