This driver was not unregistering its interrupt callbacks when closing
the port, which now means use after free after the interrupt handle
is not duplicated anymore by the interrupt thread.
Fixes: c663018eb7f3 ("interrupts: do not duplicate interrupt handles")
Signed-off-by: David Marchand <[email protected]>
Reviewed-by: Robin Jarry <[email protected]>
---
Changes since v1:
- moved unrelated change,
---
drivers/net/tap/rte_eth_tap.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/tap/rte_eth_tap.c b/drivers/net/tap/rte_eth_tap.c
index 87779710a7..0476a327a1 100644
--- a/drivers/net/tap/rte_eth_tap.c
+++ b/drivers/net/tap/rte_eth_tap.c
@@ -1106,6 +1106,8 @@ tap_dev_close(struct rte_eth_dev *dev)
return 0;
}
+ tap_intr_handle_set(dev, 0);
+
if (!internals->persist)
tap_link_set_down(dev);
--
2.56.0