[MLX4] fixed a memory leak in mlx4_bus driver. (mlnx: 2886, 2890)
authorleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Mon, 4 Aug 2008 11:48:05 +0000 (11:48 +0000)
committerleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Mon, 4 Aug 2008 11:48:05 +0000 (11:48 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@1460 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

hw/mlx4/kernel/bus/ib/main.c

index e5115ec..3f7c9fd 100644 (file)
@@ -591,8 +591,9 @@ static void mlx4_ib_remove(struct mlx4_dev *dev, void *ibdev_ptr)
        mlx4_uar_free(dev, &ibdev->priv_uar);
        mlx4_pd_free(dev, ibdev->priv_pdn);
 dealloc_dev:   
-       ib_dealloc_device(&ibdev->ib_dev);
        mlx4_dbg(ibdev->dev, "MLX4_BUS: IB interface is REMOVED ! \n");
+       ibdev->ib_dev.reg_state = IB_DEV_UNINITIALIZED;
+       ib_dealloc_device(&ibdev->ib_dev);
 }
 
 static void mlx4_ib_event(struct mlx4_dev *dev, void *ibdev_ptr,