]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
qlcnic: dcb: default to returning -EOPNOTSUPP
authorTom Rix <trix@redhat.com>
Sat, 26 Mar 2022 17:20:03 +0000 (10:20 -0700)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 20 May 2022 13:19:15 +0000 (15:19 +0200)
BugLink: https://bugs.launchpad.net/bugs/1971497
[ Upstream commit 1521db37f0d42334a88e8ff28198a27d1ed5cd7b ]

Clang static analysis reports this issue
qlcnic_dcb.c:382:10: warning: Assigned value is
  garbage or undefined
  mbx_out = *val;
          ^ ~~~~

val is set in the qlcnic_dcb_query_hw_capability() wrapper.
If there is no query_hw_capability op in dcp, success is
returned without setting the val.

For this and similar wrappers, return -EOPNOTSUPP.

Fixes: 14d385b99059 ("qlcnic: dcb: Query adapter DCB capabilities.")
Signed-off-by: Tom Rix <trix@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h

index f4aa6331b367b2913b34adbc4c1163c9d68abb16..0a9d24e86715d1358f4abdd59bebd94b590edab8 100644 (file)
@@ -52,7 +52,7 @@ static inline int qlcnic_dcb_get_hw_capability(struct qlcnic_dcb *dcb)
        if (dcb && dcb->ops->get_hw_capability)
                return dcb->ops->get_hw_capability(dcb);
 
-       return 0;
+       return -EOPNOTSUPP;
 }
 
 static inline void qlcnic_dcb_free(struct qlcnic_dcb *dcb)
@@ -66,7 +66,7 @@ static inline int qlcnic_dcb_attach(struct qlcnic_dcb *dcb)
        if (dcb && dcb->ops->attach)
                return dcb->ops->attach(dcb);
 
-       return 0;
+       return -EOPNOTSUPP;
 }
 
 static inline int
@@ -75,7 +75,7 @@ qlcnic_dcb_query_hw_capability(struct qlcnic_dcb *dcb, char *buf)
        if (dcb && dcb->ops->query_hw_capability)
                return dcb->ops->query_hw_capability(dcb, buf);
 
-       return 0;
+       return -EOPNOTSUPP;
 }
 
 static inline void qlcnic_dcb_get_info(struct qlcnic_dcb *dcb)
@@ -90,7 +90,7 @@ qlcnic_dcb_query_cee_param(struct qlcnic_dcb *dcb, char *buf, u8 type)
        if (dcb && dcb->ops->query_cee_param)
                return dcb->ops->query_cee_param(dcb, buf, type);
 
-       return 0;
+       return -EOPNOTSUPP;
 }
 
 static inline int qlcnic_dcb_get_cee_cfg(struct qlcnic_dcb *dcb)
@@ -98,7 +98,7 @@ static inline int qlcnic_dcb_get_cee_cfg(struct qlcnic_dcb *dcb)
        if (dcb && dcb->ops->get_cee_cfg)
                return dcb->ops->get_cee_cfg(dcb);
 
-       return 0;
+       return -EOPNOTSUPP;
 }
 
 static inline void qlcnic_dcb_aen_handler(struct qlcnic_dcb *dcb, void *msg)