diff options
author | rwatson <rwatson@FreeBSD.org> | 2006-03-26 02:33:44 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2006-03-26 02:33:44 +0000 |
commit | 58605b1e6456321f0f80dd2921b2a3763b04ff5d (patch) | |
tree | 31f61582378a78e07ed6dc1fbfa320852a6a8670 /sys/netipx | |
parent | 72eb76f920e2b08777ad8d633ba6bab24a57b045 (diff) | |
download | FreeBSD-src-58605b1e6456321f0f80dd2921b2a3763b04ff5d.zip FreeBSD-src-58605b1e6456321f0f80dd2921b2a3763b04ff5d.tar.gz |
Restore original formulation of SPX segment queue draining during SPX
PCB detach.
MFC after: 1 month
Diffstat (limited to 'sys/netipx')
-rw-r--r-- | sys/netipx/spx_usrreq.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/netipx/spx_usrreq.c b/sys/netipx/spx_usrreq.c index 8054c27..dad3cd9 100644 --- a/sys/netipx/spx_usrreq.c +++ b/sys/netipx/spx_usrreq.c @@ -1427,7 +1427,9 @@ spx_pcbdetach(struct ipxpcb *ipxp) cb = ipxtospxpcb(ipxp); KASSERT(cb != NULL, ("spx_pcbdetach: cb == NULL")); - for (s = cb->s_q.si_next; s != NULL; s = cb->s_q.si_next) { + s = cb->s_q.si_next; + while (s != &(cb->s_q)) { + s = s->si_next; remque(s); m = dtom(s); m_freem(m); |