• Jack M's avatar
    IB/mlx4: Include GID type when deleting GIDs from HW table under RoCE · a1817792
    Jack M authored
    The commit cited below added a gid_type field (RoCEv1 or RoCEv2)
    to GID properties.
    
    When adding GIDs, this gid_type field was copied over to the
    hardware gid table. However, when deleting GIDs, the gid_type field
    was not copied over to the hardware gid table.
    
    As a result, when running RoCEv2, all RoCEv2 gids in the
    hardware gid table were set to type RoCEv1 when any gid was deleted.
    
    This problem would persist until the next gid was added (which would again
    restore the gid_type field for all the gids in the hardware gid table).
    
    Fix this by copying over the gid_type field to the hardware gid table
    when deleting gids, so that the gid_type of all remaining gids is
    preserved when a gid is deleted.
    
    Fixes: b699a859 ("IB/mlx4: Add gid_type to GID properties")
    Reviewed-by: default avatarMoni Shoua <monis@mellanox.com>
    Signed-off-by: default avatarJack Morgenstein <jackm@dev.mellanox.co.il>
    Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
    Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
    a1817792
main.c 93.1 KB