On Wed, May 03, 2023 at 01:23:55PM -0400, Parav Pandit wrote:
>
>
> On 5/3/2023 12:49 PM, Michael S. Tsirkin wrote:
> > On Wed, May 03, 2023 at 10:49:14AM -0400, Parav Pandit wrote:
> > >
> > >
> > > On 5/3/2023 1:50 AM, Michael S. Tsirkin wrote:
> > > > On Wed, May 03, 2023 at 06:26:58AM +0300, Parav Pandit wrote:
> > >
> > > > > +Legacy registers write admin command follows \field{struct
> > > > > virtio_admin_cmd}.
> > > > > +This command writes legacy registers of a member VF device. Driver
> > > > > should write
> > > > > +appropriate register \field{size} depending on the width of the
> > > > > legacy
> > > > > +common registers or device specific registers.
> > > > > +Driver sets command \field{opcode} to VIRTIO_ADMIN_CMD_LREG_WRITE.
> > > > > +Driver sets \field{group_type} to 1 for VFs.
> > > > > +Driver sets \field{group_member_id} to a valid VF number.
> > > > > +
> > > > > +The \field{command_specific_data} has following listed structure
> > > > > format:
> > > > > +
> > > > > +\begin{lstlisting}
> > > > > +struct virtio_admin_cmd_lreg_wr_data {
> > > > > + u8 offset; /* Starting byte offset of the register(s) to write
> > > > > */
> > > > > + u8 size; /* Number of bytes to write into the register. */
> > > > > + u8 register[];
> > > >
> > > > And maybe add
> > > > u8 reserved[]; /* structure padding to multiple of 8 bytes */
> > > >
> > > > > +};
> > > Thinking, what do we miss without the padding here?
> >
> > it's not 100% clear where the padding is.
> >
> It is same as rest of the other virtio structures as described in "Structure
> Specifications" section.
>
> "Many device and driver in-memory structure layouts are documented using the
> C struct syntax. All structures
> are assumed to be without additional padding."
exactly, so please include the padding explicitly.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]