diff options
author | Marcel Apfelbaum <marcela@dev.mellanox.co.il> | 2012-01-19 09:45:46 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-01-22 15:08:44 -0500 |
commit | 803143fbda719106017309d551d082e4b4e7c8c3 (patch) | |
tree | 58102fc8ea83102feb59794a0c4ce1c778990ab9 /drivers/net/ethernet/mellanox/mlx4/resource_tracker.c | |
parent | 9fd7a1e147bd41fb999a58da8a8826b9f3415384 (diff) | |
download | talos-obmc-linux-803143fbda719106017309d551d082e4b4e7c8c3.tar.gz talos-obmc-linux-803143fbda719106017309d551d082e4b4e7c8c3.zip |
mlx4_core: map async events to arbitrary slave eqs
Slave async events were mapped to single eq. This patch fixes this issue, so
the slaves can map the async events to any eq.
Signed-off-by: Marcel Apfelbaum <marcela@dev.mellanox.co.il>
Reviewed-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx4/resource_tracker.c')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/resource_tracker.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c index a30cf197a358..dcd819bfb2f0 100644 --- a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c +++ b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c @@ -2023,10 +2023,10 @@ int mlx4_GEN_EQE(struct mlx4_dev *dev, int slave, struct mlx4_eqe *eqe) if (!priv->mfunc.master.slave_state) return -EINVAL; - event_eq = &priv->mfunc.master.slave_state[slave].event_eq; + event_eq = &priv->mfunc.master.slave_state[slave].event_eq[eqe->type]; /* Create the event only if the slave is registered */ - if ((event_eq->event_type & (1 << eqe->type)) == 0) + if (event_eq->eqn < 0) return 0; mutex_lock(&priv->mfunc.master.gen_eqe_mutex[slave]); |