liquidio: add cleanup in octeon_setup_iq()

[ Upstream commit 6f967f8b1be7001b31c46429f2ee7d275af2190f ]

If oct->fn_list.enable_io_queues() fails, no cleanup is executed, leading
to memory/resource leaks. To fix this issue, invoke
octeon_delete_instr_queue() before returning from the function.

Signed-off-by: Wenwen Wang <wenwen@cs.uga.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Wenwen Wang 2019-08-14 00:14:49 -05:00 committed by Greg Kroah-Hartman
parent 2c3dd20f85
commit f13b7ec5e1

View File

@ -238,8 +238,10 @@ int octeon_setup_iq(struct octeon_device *oct,
}
oct->num_iqs++;
if (oct->fn_list.enable_io_queues(oct))
if (oct->fn_list.enable_io_queues(oct)) {
octeon_delete_instr_queue(oct, iq_no);
return 1;
}
return 0;
}