]> git.baikalelectronics.ru Git - kernel.git/commit
qed: Fix blocking/unlimited SPQ entries leak
authorDenis Bolotin <denis.bolotin@cavium.com>
Thu, 8 Nov 2018 14:46:09 +0000 (16:46 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 9 Nov 2018 03:38:18 +0000 (19:38 -0800)
commit9e9a26b687f5a77098b55c267e158587fe3c9d81
treecc1007ec2b0413ff2c19d11af593a9cb768f3855
parenta086785a3985f9e4bc9597a332e8ab05844dbc07
qed: Fix blocking/unlimited SPQ entries leak

When there are no SPQ entries left in the free_pool, new entries are
allocated and are added to the unlimited list. When an entry in the pool
is available, the content is copied from the original entry, and the new
entry is sent to the device. qed_spq_post() is not aware of that, so the
additional entry is stored in the original entry as p_post_ent, which can
later be returned to the pool.

Signed-off-by: Denis Bolotin <denis.bolotin@cavium.com>
Signed-off-by: Michal Kalderon <michal.kalderon@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qed/qed_sp.h
drivers/net/ethernet/qlogic/qed/qed_spq.c