mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 08:44:21 +08:00
soc: fsl: dpio: Use after free in dpaa2_dpio_remove()
The dpaa2_io_down(priv->io) call frees "priv->io" so I've shifted the
code around a little bit to avoid the use after free.
Fixes: 991e873223
("soc: fsl: dpio: use a cpumask to identify which cpus are unused")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
This commit is contained in:
parent
3c0d64e867
commit
c1959066ac
@ -220,12 +220,12 @@ static int dpaa2_dpio_remove(struct fsl_mc_device *dpio_dev)
|
||||
|
||||
dev = &dpio_dev->dev;
|
||||
priv = dev_get_drvdata(dev);
|
||||
cpu = dpaa2_io_get_cpu(priv->io);
|
||||
|
||||
dpaa2_io_down(priv->io);
|
||||
|
||||
dpio_teardown_irqs(dpio_dev);
|
||||
|
||||
cpu = dpaa2_io_get_cpu(priv->io);
|
||||
cpumask_set_cpu(cpu, cpus_unused_mask);
|
||||
|
||||
err = dpio_open(dpio_dev->mc_io, 0, dpio_dev->obj_desc.id,
|
||||
|
Loading…
Reference in New Issue
Block a user