66f2ac0f8b
Temporary IB device context and list are not freed in case of a successful initialization of the device. This issue is caused by the two following commits, the first of which causes initialization to return early, while the second one goes a bit overboard while switching to negative errno values; an internal variable (err) is needed to tell success from failure at the end of the function since rte_errno is not reliable enough. Fixes: f2318196c71a ("net/mlx4: remove limitation on number of instances") Fixes: 9d14b27308a0 ("net/mlx4: standardize on negative errno values") Cc: stable@dpdk.org Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>