[PATCHv2 1/4] virDomain: interface: add virDomainNetDefIsOvsport
Michal Prívozník
mprivozn at redhat.com
Fri Jul 2 15:46:21 UTC 2021
On 7/1/21 10:42 AM, zhangjl02 wrote:
> From: zhangjl02 <zhangjl02 at inspur.com>
>
> Tell whether a port definition is an ovs managed virtual port
> ---
> src/conf/domain_conf.c | 8 ++++++++
> src/conf/domain_conf.h | 2 ++
> src/libvirt_private.syms | 1 +
> 3 files changed, 11 insertions(+)
>
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index d78f846a52..7fe72fb3f2 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -29126,6 +29126,14 @@ virDomainNetGetActualVirtPortProfile(const virDomainNetDef *iface)
> }
> }
>
> +/* Check whether the port is an ovs managed port */
> +bool
> +virDomainNetDefIsOvsport(virDomainNetDef *net, int actualType) {
> + const virNetDevVPortProfile *vport = virDomainNetGetActualVirtPortProfile(net);
> + return (actualType == VIR_DOMAIN_NET_TYPE_BRIDGE) && vport &&
> + vport->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH;
> +}
> +
Couple of notes:
1) We like to separate variable declaration block and code with an empty line.
2) The opening curly brace should go onto a new line. I wonder why 'ninja check' did not catch this. Or did you not try?
3) I think that actualType argument is redundant. Why hot just query it inside the function, e.g. like this:
virDomainNetType actualType = virDomainNetGetActualType(net);
So this is what I think should be squashed in:
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 20c60659cd..5a27cd9d7d 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -29128,9 +29128,12 @@ virDomainNetGetActualVirtPortProfile(const virDomainNetDef *iface)
/* Check whether the port is an ovs managed port */
bool
-virDomainNetDefIsOvsport(virDomainNetDef *net, int actualType) {
+virDomainNetDefIsOvsport(const virDomainNetDef *net)
+{
const virNetDevVPortProfile *vport = virDomainNetGetActualVirtPortProfile(net);
- return (actualType == VIR_DOMAIN_NET_TYPE_BRIDGE) && vport &&
+ virDomainNetType actualType = virDomainNetGetActualType(net);
+
+ return (actualType == VIR_DOMAIN_NET_TYPE_BRIDGE) && vport &&
vport->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH;
}
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 12ad98ec8c..2a36c5acf1 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -3611,7 +3611,7 @@ virDomainHostdevDef *virDomainNetGetActualHostdev(virDomainNetDef *iface);
const virNetDevVPortProfile *
virDomainNetGetActualVirtPortProfile(const virDomainNetDef *iface);
bool
-virDomainNetDefIsOvsport(virDomainNetDef *net, int actualType);
+virDomainNetDefIsOvsport(const virDomainNetDef *net);
const virNetDevBandwidth *
virDomainNetGetActualBandwidth(const virDomainNetDef *iface);
const virNetDevVlan *virDomainNetGetActualVlan(const virDomainNetDef *iface);
Michal
More information about the libvir-list
mailing list