The lancer_cmd_get_file_len() calls lancer_cmd_read_object() to get the current size of registers for ethtool registers dump. The size is stored in data_read but only when the returned status is 0 otherwise it is uninitialized thus random.
Signed-off-by: Ivan Vecera <[email protected]> --- drivers/net/ethernet/emulex/benet/be_ethtool.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/emulex/benet/be_ethtool.c b/drivers/net/ethernet/emulex/benet/be_ethtool.c index f4cb8e4..26b6192 100644 --- a/drivers/net/ethernet/emulex/benet/be_ethtool.c +++ b/drivers/net/ethernet/emulex/benet/be_ethtool.c @@ -248,6 +248,8 @@ static u32 lancer_cmd_get_file_len(struct be_adapter *adapter, u8 *file_name) status = lancer_cmd_read_object(adapter, &data_len_cmd, 0, 0, file_name, &data_read, &eof, &addn_status); + if (status) + return 0; return data_read; } -- 2.4.10 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
