summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbenno <benno@openbsd.org>2017-05-27 21:44:22 +0000
committerbenno <benno@openbsd.org>2017-05-27 21:44:22 +0000
commit28f3d2c4008496a18bc322f1b07d11e26931df63 (patch)
tree75166ac3b8bd849d8e96febfb7e5a046ede3a5ec
parentmove sending of pflow packet into a task, seperated from the data (diff)
downloadwireguard-openbsd-28f3d2c4008496a18bc322f1b07d11e26931df63.tar.xz
wireguard-openbsd-28f3d2c4008496a18bc322f1b07d11e26931df63.zip
fix previous as noted by mpi, thx florian
-rw-r--r--sys/net/if_pflow.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/net/if_pflow.c b/sys/net/if_pflow.c
index 708840c4c32..0323ad12542 100644
--- a/sys/net/if_pflow.c
+++ b/sys/net/if_pflow.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_pflow.c,v 1.77 2017/05/27 21:06:06 benno Exp $ */
+/* $OpenBSD: if_pflow.c,v 1.78 2017/05/27 21:44:22 benno Exp $ */
/*
* Copyright (c) 2011 Florian Obser <florian@narrans.de>
@@ -128,7 +128,7 @@ pflow_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst,
void
pflow_output_process(void *arg)
{
- struct pflow_softc *sc = arg;
+ struct pflow_softc *sc = arg;
struct mbuf *m;
KERNEL_LOCK();
@@ -288,6 +288,7 @@ pflow_clone_destroy(struct ifnet *ifp)
timeout_del(&sc->sc_tmo_tmpl);
pflow_flush(sc);
task_del(softnettq, &sc->sc_outputtask);
+ ml_purge(&sc->sc_outputqueue);
m_freem(sc->send_nam);
if (sc->so != NULL) {
error = soclose(sc->so);