OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio-comment] [PATCH] pci: Update ISR related description about MSI-X


On Fri, Sep 02, 2022 at 05:35:48PM +0800, Keqian Zhu wrote:
> In commit 6a83c1d41748 ("pci: set ISR bit on config change with MSI-X"),
> device is required to set ISR bit on config change even when MSI-X enabled.
> 
> This update other ISR related description for above commit.
> 
> Signed-off-by: Keqian Zhu <zhukeqian1@huawei.com>
> ---
>  content.tex | 14 +++++++++-----
>  1 file changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/content.tex b/content.tex
> index e863709..fea576d 100644
> --- a/content.tex
> +++ b/content.tex
> @@ -1158,10 +1158,10 @@ \subsubsection{ISR status capability}\label{sec:Virtio Transport Options / Virti
>  \end{tabular}
>  
>  To avoid an extra access, simply reading this register resets it to 0 and
> -causes the device to de-assert the interrupt.
> +causes the device to de-assert the interrupt when using INT\#x interrupt.
>  
>  In this way, driver read of ISR status causes the device to de-assert
> -an interrupt.
> +an INT\#x interrupt.
>  
>  See sections \ref{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI-specific Initialization And Device Operation / Used Buffer Notifications} and \ref{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI-specific Initialization And Device Operation / Notification of Device Configuration Changes} for how this is used.
>  
> @@ -1511,7 +1511,7 @@ \subsubsection{Device Initialization}\label{sec:Virtio Transport Options / Virti
>  
>  When MSI-X capability is present and enabled in the device
>  (through standard PCI configuration space) \field{config_msix_vector} and \field{queue_msix_vector} are used to map configuration change and queue
> -interrupts to MSI-X vectors. In this case, the ISR Status is unused.
> +interrupts to MSI-X vectors.
>  
>  Writing a valid MSI-X Table entry number, 0 to 0x7FF, to
>  \field{config_msix_vector}/\field{queue_msix_vector} maps interrupts triggered
> @@ -1681,6 +1681,8 @@ \subsubsection{Notification of Device Configuration Changes}\label{sec:Virtio Tr
>  
>    \item If MSI-X capability is enabled:
>      \begin{enumerate}
> +    \item If \field{config_msix_vector} is not NO_VECTOR, set the second
> +      lower bit of the ISR Status field for the device.

I think it has to be set always. With NO_VECTOR driver
can poll for config changes.

>      \item If \field{config_msix_vector} is not NO_VECTOR,
>        request the appropriate MSI-X interrupt message for the
>        device, \field{config_msix_vector} sets the MSI-X Table entry
> @@ -1718,13 +1720,15 @@ \subsubsection{Driver Handling Interrupts}\label{sec:Virtio Transport Options /
>      \end{itemize}
>    \item If MSI-X capability is enabled:
>      \begin{itemize}
> +      \item Read the ISR Status field, which will reset it to zero.
>        \item
>          Look through all virtqueues mapped to that MSI-X vector for the
>          device, to see if any progress has been made by the device
>          which requires servicing.
>        \item
> -        If the MSI-X vector is equal to \field{config_msix_vector},
> -        re-examine the configuration space to see what changed.
> +        If the second lower bit of ISR Status filed is set and the
> +        MSI-X vector is equal to \field{config_msix_vector}, re-examine
> +        the configuration space to see what changed.
>      \end{itemize}
>  \end{itemize}
>  
> -- 
> 2.33.0
> 
> 
> This publicly archived list offers a means to provide input to the
> OASIS Virtual I/O Device (VIRTIO) TC.
> 
> In order to verify user consent to the Feedback License terms and
> to minimize spam in the list archive, subscription is required
> before posting.
> 
> Subscribe: virtio-comment-subscribe@lists.oasis-open.org
> Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
> List help: virtio-comment-help@lists.oasis-open.org
> List archive: https://lists.oasis-open.org/archives/virtio-comment/
> Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
> List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
> Committee: https://www.oasis-open.org/committees/virtio/
> Join OASIS: https://www.oasis-open.org/join/



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]