[NET-NEXT PATCH 1/2] net: add error return for dcb setstate

Previous thread: [NET-NEXT PATCH] ixgbe: fix dma mapping unbalance by Jeff Kirsher on Friday, December 12, 2008 - 2:51 am. (3 messages)

Next thread: [NET-NEXT PATCH] ixgbe: fix DCB setstate to return success/failure by Jeff Kirsher on Friday, December 12, 2008 - 2:53 am. (1 message)
From: Jeff Kirsher
Date: Friday, December 12, 2008 - 2:52 am

From: Don Skidmore <donald.c.skidmore@intel.com>

DCB had no way to know if setstate had failed in the driver. This
patch enables dcb netlink code to handle the status for the DCB
setstate interface.

Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com>
Signed-off-by: Eric W Multanen <eric.w.multanen@intel.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---

 include/net/dcbnl.h |    2 +-
 net/dcb/dcbnl.c     |    5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/include/net/dcbnl.h b/include/net/dcbnl.h
index 91e0a3d..775cfc8 100644
--- a/include/net/dcbnl.h
+++ b/include/net/dcbnl.h
@@ -26,7 +26,7 @@
  */
 struct dcbnl_rtnl_ops {
 	u8   (*getstate)(struct net_device *);
-	void (*setstate)(struct net_device *, u8);
+	u8   (*setstate)(struct net_device *, u8);
 	void (*getpermhwaddr)(struct net_device *, u8 *);
 	void (*setpgtccfgtx)(struct net_device *, int, u8, u8, u8, u8);
 	void (*setpgbwgcfgtx)(struct net_device *, int, u8);
diff --git a/net/dcb/dcbnl.c b/net/dcb/dcbnl.c
index 79a351d..d0c12f0 100644
--- a/net/dcb/dcbnl.c
+++ b/net/dcb/dcbnl.c
@@ -714,9 +714,8 @@ static int dcbnl_setstate(struct net_device *netdev, struct nlattr **tb,
 
 	value = nla_get_u8(tb[DCB_ATTR_STATE]);
 
-	netdev->dcbnl_ops->setstate(netdev, value);
-
-	ret = dcbnl_reply(0, RTM_SETDCB, DCB_CMD_SSTATE, DCB_ATTR_STATE,
+	ret = dcbnl_reply(netdev->dcbnl_ops->setstate(netdev, value),
+	                  RTM_SETDCB, DCB_CMD_SSTATE, DCB_ATTR_STATE,
 	                  pid, seq, flags);
 
 	return ret;

--

From: Jeff Kirsher
Date: Friday, December 12, 2008 - 2:52 am

From: Don Skidmore <donald.c.skidmore@intel.com>

dcbml_setnumtcs wasn't checking for the presence of the setnumtcs
function.  Instead, it was checking for setstate which was a bug.

Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com>
Signed-off-by: Eric W Multanen <eric.w.multanen@intel.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---

 net/dcb/dcbnl.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/dcb/dcbnl.c b/net/dcb/dcbnl.c
index d0c12f0..fc88fc4 100644
--- a/net/dcb/dcbnl.c
+++ b/net/dcb/dcbnl.c
@@ -469,7 +469,7 @@ static int dcbnl_setnumtcs(struct net_device *netdev, struct nlattr **tb,
 	u8 value;
 	int i;
 
-	if (!tb[DCB_ATTR_NUMTCS] || !netdev->dcbnl_ops->setstate)
+	if (!tb[DCB_ATTR_NUMTCS] || !netdev->dcbnl_ops->setnumtcs)
 		return ret;
 
 	ret = nla_parse_nested(data, DCB_NUMTCS_ATTR_MAX, tb[DCB_ATTR_NUMTCS],

--

From: David Miller
Date: Monday, December 15, 2008 - 2:06 am

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Applied.
--

From: David Miller
Date: Monday, December 15, 2008 - 2:05 am

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

How can this build if you don't also update ixgbe_dcbnl_set_state() et
al. to have a "u8" instead of a "void" return value too?

Oh I see, you send the update two patches later.

Don't do that, it breaks GIT bisect.

If you change the prototype for a method function, you must also
change all implementations of that method to match at the same time.

I've dropped both changes.
--

Previous thread: [NET-NEXT PATCH] ixgbe: fix dma mapping unbalance by Jeff Kirsher on Friday, December 12, 2008 - 2:51 am. (3 messages)

Next thread: [NET-NEXT PATCH] ixgbe: fix DCB setstate to return success/failure by Jeff Kirsher on Friday, December 12, 2008 - 2:53 am. (1 message)