• Hariprasad Shenai's avatar
    cxgb4: Fix issue while re-registering VF mgmt netdev · e7b48a32
    Hariprasad Shenai authored
    When we disable SRIOV, we used to unregister the netdev but wasn't
    freed. But next time when the same netdev is registered, since the state
    was in 'NETREG_UNREGISTERED', we used to hit BUG_ON in register_netdevice,
    where it expects the state to be 'NETREG_UNINITIALIZED'.
    
    Alloc netdev and register them while configuring SRIOV, and free them
    when SRIOV is disabled. Also added a new function to setup ethernet
    properties instead of using ether_setup. Set carrier off by default,
    since we don't have to do any transmit on the interface.
    
    Fixes: 7829451c ("cxgb4: Add control net_device for configuring PCIe VF")
    Signed-off-by: default avatarHariprasad Shenai <hariprasad@chelsio.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    e7b48a32
cxgb4_main.c 154 KB