Date: Sat, 09 Jul 2005 10:18:19 -0700 From: Sam Leffler <sam@errno.com> To: ming fu <fming@borderware.com> Cc: freebsd-net@freebsd.org Subject: Re: what to replace splnet in FreeBSD 5.x? Message-ID: <42D006DB.8080108@errno.com> In-Reply-To: <42CEF0EB.4000107@borderware.com> References: <42CEF0EB.4000107@borderware.com>
next in thread | previous in thread | raw e-mail | index | archive | help
ming fu wrote: > Hi, > > With splnet() became a no-op in sys/systm.h > > static __inline intrmask_t splnet(void) { return 0; } > > What should I use to replace the splnet? > > I have a module receiving input from both ip_input() and a device that > userland can write to. I guess I was cover from the ip_input() as it > should have the proper lock. However, I am on my own to figure out what > to replace the splnet() when receive from the device from the userland. > It uses splnet() in FreeBSD 4.x. spl's lock execution threads. 5.x and later systems mostly lock data structures using mtx's (there are a very few exceptions). Thus there isn't necessarily a direct replacement, you usually need to rethink your locking/synchronization strategy. Sam
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42D006DB.8080108>