[PATCHv2 0/6] virDomain: fix problems when setting qos on ovs managed

Michal Prívozník mprivozn at redhat.com
Thu Aug 19 14:50:55 UTC 2021


On 8/17/21 6:38 AM, jx8zjs wrote:
> ---
> 
> diff to v1:
>   - Modify commit message to no longer then 80 characters.
>   - Split patch into several commits
>   - Add notes on some function and defination
>   - Extract common code block to a single function
>   
> Thanks to Pavel Hrdina for helping to review these patches.
> 
> Two problems are found and fixed below:
> 1. Ingress rules is not clean on previous version of 
> virNetDevOpenvswitchInterfaceClearQos.
> 2. If errors occurs when removing inbound qos on multi interfaces vm, some
> rules may not be delete as aspected.
> 
> Fix by:
> 1.Instead of cleaning all qos rules each time new qos is set, tx and rx's qos
> are set or cleaned respectively.
> 2.Replace virReportError with VIR_WARN to let the cleaning process continue 
> when error occurs.
> 3.Add ifname into ovs querying statements, which will reduce failure of 
> removing qos on the other interfaces of the same vm.
> 
> Test virNetDevOpenvswitchInterfaceSetQos and 
> virNetDevOpenvswitchInterfaceClearQos with dryrun method.
> Since commands in tests are not actually run, it is difficult to emulate 
> some complex senario, such as set and then update qos. So basic tests are
>  added in patches.
> 
> Jinsheng Zhang (6):
>   virnetdevovs: Add vmuuid notes on virNetDevOpenvswitchInterfaceSetQos
>   virnetdevovs: Extract conversion parameters between virNetDevBandwidth
>     and ovs
>   virnetdevovs: Extract common code block to a single function
>   virnetdevovs: Introduce virNetDevOpenvswitchInterfaceClearTxQos and
>     virNetDevOpenvswitchInterfaceClearRxQos
>   virnetdevovs: Fix qos cleaning residual on multi interfaces
>   tests: add test on virNetDevOpenvswitchInterfaceSetQos and
>     virNetDevOpenvswitchInterfaceClearQos
> 
>  src/libvirt_private.syms         |   2 +
>  src/util/virnetdevopenvswitch.c  | 142 ++++++++++++++--------
>  src/util/virnetdevopenvswitch.h  |  14 +++
>  tests/virnetdevopenvswitchtest.c | 196 ++++++++++++++++++++++++++++++-
>  4 files changed, 302 insertions(+), 52 deletions(-)
> 

I'm fixing all the small issues I've found and pushing.

Reviewed-by: Michal Privoznik <mprivozn at redhat.com>

Michal




More information about the libvir-list mailing list