net/cpfl: fix a compiler issue about virtchnl opcode
Checks
Commit Message
Comparing an enum virtchnl_ops variable with VIRTCHNL2_OP_EVENT
will cause a compiler issue, as VIRTCHNL2_OP_EVENT is not included
in enum virtchnl_ops. And the PMD uses virtual msg opcodes prefixed
with virtchnl2 or VIRTCHNL2.
Fixes: 20618563b81b ("net/cpfl: support device initialization")
Signed-off-by: Mingxia Liu <mingxia.liu@intel.com>
---
drivers/net/cpfl/cpfl_ethdev.c | 2 +-
drivers/net/idpf/idpf_ethdev.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Comments
On Thu, 9 Mar 2023 10:31:42 +0000
Mingxia Liu <mingxia.liu@intel.com> wrote:
> iff --git a/drivers/net/idpf/idpf_ethdev.c b/drivers/net/idpf/idpf_ethdev.c
> index db58157ba3..59883af8a8 100644
> --- a/drivers/net/idpf/idpf_ethdev.c
> +++ b/drivers/net/idpf/idpf_ethdev.c
> @@ -1058,8 +1058,8 @@ idpf_handle_virtchnl_msg(struct idpf_adapter_ext *adapter_ex)
> struct idpf_ctlq_msg ctlq_msg;
> enum idpf_mbx_opc mbx_op;
> struct idpf_vport *vport;
> - enum virtchnl_ops vc_op;
> uint16_t pending = 1;
> + enum virtchnl_ops vc_op;
> int ret;
>
> while (pending) {
Why does order of declarations matter here?
Compilers are free to reorder this.
> -----Original Message-----
> From: Stephen Hemminger <stephen@networkplumber.org>
> Sent: Thursday, March 9, 2023 10:42 AM
> To: Liu, Mingxia <mingxia.liu@intel.com>
> Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>; Zhang, Yuying
> <yuying.zhang@intel.com>
> Subject: Re: [PATCH] net/cpfl: fix a compiler issue about virtchnl opcode
>
> On Thu, 9 Mar 2023 10:31:42 +0000
> Mingxia Liu <mingxia.liu@intel.com> wrote:
>
> > iff --git a/drivers/net/idpf/idpf_ethdev.c
> > b/drivers/net/idpf/idpf_ethdev.c index db58157ba3..59883af8a8 100644
> > --- a/drivers/net/idpf/idpf_ethdev.c
> > +++ b/drivers/net/idpf/idpf_ethdev.c
> > @@ -1058,8 +1058,8 @@ idpf_handle_virtchnl_msg(struct idpf_adapter_ext
> *adapter_ex)
> > struct idpf_ctlq_msg ctlq_msg;
> > enum idpf_mbx_opc mbx_op;
> > struct idpf_vport *vport;
> > - enum virtchnl_ops vc_op;
> > uint16_t pending = 1;
> > + enum virtchnl_ops vc_op;
> > int ret;
> >
> > while (pending) {
>
>
> Why does order of declarations matter here?
> Compilers are free to reorder this.
[Liu, Mingxia] Unused changes, v2 was sent.
@@ -1095,8 +1095,8 @@ cpfl_handle_virtchnl_msg(struct cpfl_adapter_ext *adapter)
struct idpf_ctlq_msg ctlq_msg;
enum idpf_mbx_opc mbx_op;
struct idpf_vport *vport;
- enum virtchnl_ops vc_op;
uint16_t pending = 1;
+ uint32_t vc_op;
int ret;
while (pending) {
@@ -1058,8 +1058,8 @@ idpf_handle_virtchnl_msg(struct idpf_adapter_ext *adapter_ex)
struct idpf_ctlq_msg ctlq_msg;
enum idpf_mbx_opc mbx_op;
struct idpf_vport *vport;
- enum virtchnl_ops vc_op;
uint16_t pending = 1;
+ enum virtchnl_ops vc_op;
int ret;
while (pending) {