• Jack Morgenstein's avatar
    net/mlx4_core: Fix reg/unreg vlan/mac to conform to the firmware spec · acddd5dd
    Jack Morgenstein authored
    The functions mlx4_register_vlan, mlx4_unregister_vlan, mlx4_register_mac,
    mlx4_unregister_mac all made illegal use of the out_param in multifunc mode
    to pass the port number. The firmware spec specifies that the port number
    should be passed in bits 8..15 of the input-modifier field for ALLOC_RES and
    FREE_RES (sections 20.15.1 and 20.15.2).
    
    For MAC register/unregister, this patch contains workarounds so that guests
    running previous kernels continue to work on a new Hypervisor, and guests
    running the new kernel will continue to work on old hypervisors.
    
    Vlan registeration capability is still not operational in multifunction mode,
    since the vlan wrapper functions are not implemented in this patch.
    Signed-off-by: default avatarJack Morgenstein <jackm@dev.mellanox.co.il>
    Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    acddd5dd
port.c 23.1 KB