diff options
author | Matan Barak <matanb@mellanox.com> | 2014-12-11 03:57:58 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-12-11 14:47:35 -0500 |
commit | 579d059bd20f34d50f2efccedc78f71f3df3d690 (patch) | |
tree | 5c5ca88cdd035efed390a9df81ff223de58d1a72 | |
parent | d57febe1a47801ef8a55dbf10672850523dfaa60 (diff) |
net/mlx4_core: Add explicit error message when rule doesn't meet configuration
When a given flow steering rule is invalid in respect to the current
steering configuration, print the correct error message to the system log.
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/mcg.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/mcg.c b/drivers/net/ethernet/mellanox/mlx4/mcg.c index 872843179f44..a3867e7ef885 100644 --- a/drivers/net/ethernet/mellanox/mlx4/mcg.c +++ b/drivers/net/ethernet/mellanox/mlx4/mcg.c | |||
@@ -999,12 +999,27 @@ int mlx4_flow_attach(struct mlx4_dev *dev, | |||
999 | } | 999 | } |
1000 | 1000 | ||
1001 | ret = mlx4_QP_FLOW_STEERING_ATTACH(dev, mailbox, size >> 2, reg_id); | 1001 | ret = mlx4_QP_FLOW_STEERING_ATTACH(dev, mailbox, size >> 2, reg_id); |
1002 | if (ret == -ENOMEM) | 1002 | if (ret == -ENOMEM) { |
1003 | mlx4_err_rule(dev, | 1003 | mlx4_err_rule(dev, |
1004 | "mcg table is full. Fail to register network rule\n", | 1004 | "mcg table is full. Fail to register network rule\n", |
1005 | rule); | 1005 | rule); |
1006 | else if (ret) | 1006 | } else if (ret) { |
1007 | mlx4_err_rule(dev, "Fail to register network rule\n", rule); | 1007 | if (ret == -ENXIO) { |
1008 | if (dev->caps.steering_mode != MLX4_STEERING_MODE_DEVICE_MANAGED) | ||
1009 | mlx4_err_rule(dev, | ||
1010 | "DMFS is not enabled, " | ||
1011 | "failed to register network rule.\n", | ||
1012 | rule); | ||
1013 | else | ||
1014 | mlx4_err_rule(dev, | ||
1015 | "Rule exceeds the dmfs_high_rate_mode limitations, " | ||
1016 | "failed to register network rule.\n", | ||
1017 | rule); | ||
1018 | |||
1019 | } else { | ||
1020 | mlx4_err_rule(dev, "Fail to register network rule.\n", rule); | ||
1021 | } | ||
1022 | } | ||
1008 | 1023 | ||
1009 | mlx4_free_cmd_mailbox(dev, mailbox); | 1024 | mlx4_free_cmd_mailbox(dev, mailbox); |
1010 | 1025 | ||