summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2006-03-23 19:58:12 +0000
committerrwatson <rwatson@FreeBSD.org>2006-03-23 19:58:12 +0000
commit925eb76ba3564d403af4210dfa40dde20fa1726c (patch)
tree6f34f4eb9a0cff3c695683b8d65c1cffe157709c
parent2f76715fb3c6085157c269d3bc144859714ba8ee (diff)
downloadFreeBSD-src-925eb76ba3564d403af4210dfa40dde20fa1726c.zip
FreeBSD-src-925eb76ba3564d403af4210dfa40dde20fa1726c.tar.gz
Move spx_savesi from being a global variable to an automatically allocated
variable on the spx_input() stack. It's not very large, and this will avoid parallelism issues when spx_input() runs in more than one thread at a time. MFC after: 1 month
-rw-r--r--sys/netipx/ipx_pcb.h4
-rw-r--r--sys/netipx/spx_usrreq.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/sys/netipx/ipx_pcb.h b/sys/netipx/ipx_pcb.h
index f65e133..e5de871 100644
--- a/sys/netipx/ipx_pcb.h
+++ b/sys/netipx/ipx_pcb.h
@@ -1,8 +1,8 @@
/*-
- * Copyright (c) 2004-2005 Robert N. M. Watson
- * Copyright (c) 1995, Mike Mitchell
* Copyright (c) 1984, 1985, 1986, 1987, 1993
* The Regents of the University of California. All rights reserved.
+ * Copyright (c) 1995, Mike Mitchell
+ * Copyright (c) 2004-2005 Robert N. M. Watson
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
diff --git a/sys/netipx/spx_usrreq.c b/sys/netipx/spx_usrreq.c
index 0307d64..cc5c505 100644
--- a/sys/netipx/spx_usrreq.c
+++ b/sys/netipx/spx_usrreq.c
@@ -70,7 +70,6 @@ static u_short spx_newchecks[50];
static int spx_hardnosed;
static int spx_use_delack = 0;
static int traceallspxs = 0;
-static struct spx spx_savesi;
static struct spx_istat spx_istat;
/* Following was struct spxstat spxstat; */
@@ -159,6 +158,7 @@ spx_input(m, ipxp)
register struct spxpcb *cb;
register struct spx *si = mtod(m, struct spx *);
register struct socket *so;
+ struct spx spx_savesi;
int dropsocket = 0;
short ostate = 0;
OpenPOWER on IntegriCloud