From 4e86281b59ce7881cc21dfb6fb4b596f737d6ee5 Mon Sep 17 00:00:00 2001 From: Mark Rustad Date: Tue, 22 Jul 2014 06:50:52 +0000 Subject: [PATCH] ixgbe: Fix ixgbe_write_mbx error result If ixgbe_write_mbx is called and no mbx->ops.write method exists, no error code is returned. The corresponding read function explicitly returns an error in such a case as do other functions, so this appears to be a minor bug. Fix it for consistency, and generate return values directly to make things clearer. Signed-off-by: Mark Rustad Tested-by: Phil Schmitt Signed-off-by: Jeff Kirsher --- drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.c index 1918e0abf734..50479575e131 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.c @@ -1,7 +1,7 @@ /******************************************************************************* Intel 10 Gigabit PCI Express Linux driver - Copyright(c) 1999 - 2013 Intel Corporation. + Copyright(c) 1999 - 2014 Intel Corporation. This program is free software; you can redistribute it and/or modify it under the terms and conditions of the GNU General Public License, @@ -67,15 +67,14 @@ s32 ixgbe_read_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = 0; if (size > mbx->size) - ret_val = IXGBE_ERR_MBX; + return IXGBE_ERR_MBX; - else if (mbx->ops.write) - ret_val = mbx->ops.write(hw, msg, size, mbx_id); + if (!mbx->ops.write) + return IXGBE_ERR_MBX; - return ret_val; + return mbx->ops.write(hw, msg, size, mbx_id); } /** -- 2.20.1