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 | ||
