Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa9c5579 authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'mellanox'



Eli Cohen says:

====================
irq sync fixes

This two patch series fixes a race where an interrupt handler could access a
freed memory.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents b71e821d bf1bac5b
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -1026,6 +1026,7 @@ static void mlx4_free_eq(struct mlx4_dev *dev,
				pr_cont("\n");
				pr_cont("\n");
		}
		}
	}
	}
	synchronize_irq(eq->irq);


	mlx4_mtt_cleanup(dev, &eq->mtt);
	mlx4_mtt_cleanup(dev, &eq->mtt);
	for (i = 0; i < npages; ++i)
	for (i = 0; i < npages; ++i)
+1 −0
Original line number Original line Diff line number Diff line
@@ -420,6 +420,7 @@ int mlx5_destroy_unmap_eq(struct mlx5_core_dev *dev, struct mlx5_eq *eq)
	if (err)
	if (err)
		mlx5_core_warn(dev, "failed to destroy a previously created eq: eqn %d\n",
		mlx5_core_warn(dev, "failed to destroy a previously created eq: eqn %d\n",
			       eq->eqn);
			       eq->eqn);
	synchronize_irq(table->msix_arr[eq->irqn].vector);
	mlx5_buf_free(dev, &eq->buf);
	mlx5_buf_free(dev, &eq->buf);


	return err;
	return err;