From: clsoto@linux.vnet.ibm.com
To: netdev@vger.kernel.org
Cc: clsoto@linux.vnet.ibm.com, brking@linux.vnet.ibm.com
Subject: [PATCH 1/1] mlx4: mlx4_core failed to load if use_prio argument is used
Date: Mon, 28 Apr 2014 13:33:31 -0500 [thread overview]
Message-ID: <20140428183435.728801290@linux.vnet.ibm.com> (raw)
In-Reply-To: 20140428183330.201681971@linux.vnet.ibm.com
[-- Attachment #1: mlx4_load_fail_use_prio.patch --]
[-- Type: text/plain, Size: 3987 bytes --]
doing insmod mlx4_core.ko use_prio=1 will fail to load and will produce
this stack trace:
Call Trace:
[c0000000f777f1f0] [d0000000008b110c] .mlx4_bitmap_init+0x7c/0xe0 [mlx4_core]
[c0000000f777f270] [d0000000008ccca4] .mlx4_init_qp_table+0x1a4/0x400 [mlx4_core]
[c0000000f777f310] [d0000000008c1ba4] .mlx4_setup_hca+0x454/0x680 [mlx4_core]
[c0000000f777f3e0] [d0000000008c28fc] .__mlx4_init_one+0xb2c/0x11a0 [mlx4_core]
[c0000000f777f4e0] [c00000000042e6f0] .local_pci_probe+0x60/0xb0
[c0000000f777f570] [c00000000042e9d8] .pci_device_probe+0x198/0x1a0
[c0000000f777f620] [c0000000004cc730] .driver_probe_device+0xd0/0x450
[c0000000f777f6b0] [c0000000004ccc3c] .__driver_attach+0xfc/0x100
[c0000000f777f740] [c0000000004c99a4] .bus_for_each_dev+0x84/0xf0
[c0000000f777f7e0] [c0000000004cbf24] .driver_attach+0x24/0x40
[c0000000f777f850] [c0000000004cb8c8] .bus_add_driver+0x298/0x3b0
[c0000000f777f8f0] [c0000000004cd5bc] .driver_register+0x8c/0x170
[c0000000f777f970] [c00000000042e424] .__pci_register_driver+0x44/0x60
[c0000000f777f9e0] [d0000000008d7fc4] .mlx4_init+0x154/0x1b0 [mlx4_core]
[c0000000f777fa70] [c00000000000bfa4] .do_one_initcall+0x144/0x1f0
[c0000000f777fb60] [c000000000144a10] .load_module+0x1c00/0x21a0
[c0000000f777fd30] [c0000000001451b0] .SyS_finit_module+0xb0/0x100
[c0000000f777fe30] [c000000000009efc] syscall_exit+0x0/0x7c
Instruction dump:
7863e8c2 3929dbd8 7c6307b4 7d2918ae 7d290774 4bffffac 7888bfe3 39200000
40e2ffbc 3d42fff1 892ab182 69290001 <0b090000> 2fa90000 39200000 41feffa0
---[ end trace 09b5aa84365cea39 ]---
mlx4_core 0001:00:00.0: Failed to initialize queue pair table, aborting.
mlx4_core: probe of 0001:00:00.0 failed with error -12
Using the argument use_prio will increase the number of reserved qps and then
it will increase the size of the bitmap too big that kzalloc fails.
Signed-off-by: Carol Soto <clsoto@linux.vnet.ibm.com>
---
drivers/net/ethernet/mellanox/mlx4/main.c | 7 -------
include/linux/mlx4/device.h | 1 -
2 files changed, 8 deletions(-)
Index: b/drivers/net/ethernet/mellanox/mlx4/main.c
===================================================================
--- a/drivers/net/ethernet/mellanox/mlx4/main.c
+++ b/drivers/net/ethernet/mellanox/mlx4/main.c
@@ -132,11 +132,6 @@ MODULE_PARM_DESC(log_num_vlan, "Log2 max
/* Log2 max number of VLANs per ETH port (0-7) */
#define MLX4_LOG_NUM_VLANS 7
-static bool use_prio;
-module_param_named(use_prio, use_prio, bool, 0444);
-MODULE_PARM_DESC(use_prio, "Enable steering by VLAN priority on ETH ports "
- "(0/1, default 0)");
-
int log_mtts_per_seg = ilog2(MLX4_MTT_ENTRY_PER_SEG);
module_param_named(log_mtts_per_seg, log_mtts_per_seg, int, 0444);
MODULE_PARM_DESC(log_mtts_per_seg, "Log2 number of MTT entries per segment (1-7)");
@@ -296,7 +291,6 @@ static int mlx4_dev_cap(struct mlx4_dev
dev->caps.log_num_macs = log_num_mac;
dev->caps.log_num_vlans = MLX4_LOG_NUM_VLANS;
- dev->caps.log_num_prios = use_prio ? 3 : 0;
for (i = 1; i <= dev->caps.num_ports; ++i) {
dev->caps.port_type[i] = MLX4_PORT_TYPE_NONE;
@@ -366,7 +360,6 @@ static int mlx4_dev_cap(struct mlx4_dev
dev->caps.reserved_qps_cnt[MLX4_QP_REGION_FC_ADDR] =
(1 << dev->caps.log_num_macs) *
(1 << dev->caps.log_num_vlans) *
- (1 << dev->caps.log_num_prios) *
dev->caps.num_ports;
dev->caps.reserved_qps_cnt[MLX4_QP_REGION_FC_EXCH] = MLX4_NUM_FEXCH;
Index: b/include/linux/mlx4/device.h
===================================================================
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -449,7 +449,6 @@ struct mlx4_caps {
int reserved_qps_base[MLX4_NUM_QP_REGION];
int log_num_macs;
int log_num_vlans;
- int log_num_prios;
enum mlx4_port_type port_type[MLX4_MAX_PORTS + 1];
u8 supported_type[MLX4_MAX_PORTS + 1];
u8 suggested_type[MLX4_MAX_PORTS + 1];
--
next prev parent reply other threads:[~2014-04-28 19:31 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-28 18:33 [PATCH 0/1] mlx4: mlx4_core failed to load clsoto
2014-04-28 18:33 ` clsoto [this message]
2014-04-28 19:59 ` David Miller
2014-05-13 15:06 ` Carol Soto
2014-05-13 16:32 ` David Miller
2014-05-13 18:14 ` Carol Soto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140428183435.728801290@linux.vnet.ibm.com \
--to=clsoto@linux.vnet.ibm.com \
--cc=brking@linux.vnet.ibm.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.