net/mlx5_core: Request the mlx5 IB module on driver load
authorEli Cohen <eli@dev.mellanox.co.il>
Tue, 2 Dec 2014 10:26:11 +0000 (12:26 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 9 Dec 2014 01:45:54 +0000 (20:45 -0500)
Call request module on mlx5_ib so it will be available for applications
requiring it, such as installers that require boot over IB.

Signed-off-by: Eli Cohen <eli@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx5/core/main.c

index 71b10b210792e316582d0280d87f92cbee6bb2d8..4e3c27e77768d00aaf4a5ed86e41da69c05e6704 100644 (file)
@@ -43,6 +43,7 @@
 #include <linux/mlx5/qp.h>
 #include <linux/mlx5/srq.h>
 #include <linux/debugfs.h>
+#include <linux/kmod.h>
 #include <linux/mlx5/mlx5_ifc.h>
 #include "mlx5_core.h"
 
@@ -840,6 +841,8 @@ struct mlx5_core_event_handler {
                      void *data);
 };
 
+#define MLX5_IB_MOD "mlx5_ib"
+
 static int init_one(struct pci_dev *pdev,
                    const struct pci_device_id *id)
 {
@@ -878,6 +881,10 @@ static int init_one(struct pci_dev *pdev,
                goto out_init;
        }
 
+       err = request_module_nowait(MLX5_IB_MOD);
+       if (err)
+               pr_info("failed request module on %s\n", MLX5_IB_MOD);
+
        return 0;
 
 out_init: