# Re: \[Intel-wired-lan\] \[PATCH\] fm10k:Fix error handling in the function fm10k\_setup\_tc

- From: Rustad, Mark D \<hidden\>
- Date: 2015-10-20 23:12:01 
- List: netdev
- Page: https://ratatoskr.run/netdev/2015/10/4603266

```text
Nicholas Krause [ref] wrote:

> This fixes error handling in the function fm10k_setup_tc to properly
> check if the call to the function fm10k_open has failed by returning
> a error and if so return immediately to the caller of the function
> fm10k_setup_tc to properly signal this non recoverable failure.
> 
> Signed-off-by: Nicholas Krause <redacted>
> ---
> drivers/net/ethernet/intel/fm10k/fm10k_netdev.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_netdev.c b/drivers/net/ethernet/intel/fm10k/fm10k_netdev.c
> index 99228bf..5a4e702 100644
> --- a/drivers/net/ethernet/intel/fm10k/fm10k_netdev.c
> +++ b/drivers/net/ethernet/intel/fm10k/fm10k_netdev.c
> @@ -1146,6 +1146,7 @@ static struct rtnl_link_stats64 *fm10k_get_stats64(struct net_device *netdev,
> int fm10k_setup_tc(struct net_device *dev, u8 tc)
> {
> 	struct fm10k_intfc *interface = netdev_priv(dev);
> +	int err;
> 
> 	/* Currently only the PF supports priority classes */
> 	if (tc && (interface->hw.mac.type != fm10k_mac_pf))
> @@ -1175,7 +1176,9 @@ int fm10k_setup_tc(struct net_device *dev, u8 tc)
> 	fm10k_mbx_request_irq(interface);
> 
> 	if (netif_running(dev))
> -		fm10k_open(dev);
> +		err = fm10k_open(dev);
> +	if (err)
> +		return err;
> 
> 	/* flag to indicate SWPRI has yet to be updated */
> 	interface->flags |= FM10K_FLAG_SWPRI_CONFIG;

NAK. This will reference an uninitialized err variable when netif_running returns false. The compiler should complain about this, suggesting that it wasn't compiled.

--
Mark Rustad, Networking Division, Intel Corporation
```

## Attachments

- [signature.asc](https://ratatoskr.run/netdev/2015/10/4603266/attachment/0) (application/pgp-signature, 841 bytes)
