On Thu, Sep 21, 2017 at 11:01:58PM +0100, Colin King wrote:
> @@ -1837,12 +1838,13 @@ static void e1000_get_ethtool_stats(struct net_device 
> *netdev,
>                       p = (char *)adapter + stat->stat_offset;
>                       break;
>               default:
> +                     p = NULL;
>                       WARN_ONCE(1, "Invalid E1000 stat type: %u index %d\n",
>                                 stat->type, i);
>                       break;
>               }
>  
> -             if (stat->sizeof_stat == sizeof(u64))
> +             if (p && stat->sizeof_stat == sizeof(u64))
>                       data[i] = *(u64 *)p;
>               else
>                       data[i] = *(u32 *)p;
                                   ^^^^^^^^

The else side will still crash.

regards,
dan carpenter

Reply via email to