summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormpi <mpi@openbsd.org>2020-05-29 06:51:52 +0000
committermpi <mpi@openbsd.org>2020-05-29 06:51:52 +0000
commitcd8b9dbc993d35c5b58ffad811b2ab909b41e942 (patch)
treee77be69df25444a8827e98d8aff1b82dcfcd0bd8
parentWhen the preferred cylinder group if full scan forward (wrapping if needed) (diff)
downloadwireguard-openbsd-cd8b9dbc993d35c5b58ffad811b2ab909b41e942.tar.xz
wireguard-openbsd-cd8b9dbc993d35c5b58ffad811b2ab909b41e942.zip
Mark the descriptor as dead when starting to destroy it.
This help in case of a context switch inside if_detach(). From Vitaliy Makkoveev.
-rw-r--r--sys/net/if_pppx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/net/if_pppx.c b/sys/net/if_pppx.c
index d3119e2f95f..e098a29a9cb 100644
--- a/sys/net/if_pppx.c
+++ b/sys/net/if_pppx.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_pppx.c,v 1.86 2020/05/26 08:02:54 mpi Exp $ */
+/* $OpenBSD: if_pppx.c,v 1.87 2020/05/29 06:51:52 mpi Exp $ */
/*
* Copyright (c) 2010 Claudio Jeker <claudio@openbsd.org>
@@ -1004,6 +1004,7 @@ pppx_if_destroy(struct pppx_dev *pxd, struct pppx_if *pxi)
struct pipex_session *session;
NET_ASSERT_LOCKED();
+ pxi->pxi_ready = 0;
session = &pxi->pxi_session;
ifp = &pxi->pxi_if;