Date: Sat, 8 Nov 2003 14:34:14 -0800 From: Sam Leffler <sam@errno.com> To: Sam Leffler <sam@FreeBSD.org>, src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/usb usb_ethersubr.c src/sys/kern kern_poll.c src/sys/net if_ppp.c netisr.c netisr.h src/sys/netatalk aarp.c ddp_input.c ddp_usrreq.c src/sys/netatm atm_subr.c src/sys/netgraph ng_base.c src/sys/netinet if_ether.c... Message-ID: <200311081434.14186.sam@errno.com> In-Reply-To: <200311082228.hA8MSeQP012386@repoman.freebsd.org> References: <200311082228.hA8MSeQP012386@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday 08 November 2003 02:28 pm, Sam Leffler wrote: > sam 2003/11/08 14:28:40 PST > > FreeBSD src repository > > Modified files: > sys/dev/usb usb_ethersubr.c > sys/kern kern_poll.c > sys/net if_ppp.c netisr.c netisr.h > sys/netatalk aarp.c ddp_input.c ddp_usrreq.c > sys/netatm atm_subr.c > sys/netgraph ng_base.c > sys/netinet if_ether.c ip_input.c > sys/netinet6 ip6_input.c > sys/netipx ipx_input.c > sys/netnatm natm.c natm_proto.c > Log: > o add a flags parameter to netisr_register that is used to specify > whether or not the isr needs to hold Giant when running; Giant-less > operation is also controlled by the setting of debug_mpsafenet > o mark all netisr's except NETISR_IP as needing Giant > o add a GIANT_REQUIRED assertion to the top of netisr's that need Giant > o pickup Giant (when debug_mpsafenet is 1) inside ip_input before > calling up with a packet > o change netisr handling so swi_net runs w/o Giant; instead we grab > Giant before invoking handlers based on whether the handler needs Giant > o change netisr handling so that netisr's that are marked MPSAFE may > have multiple instances active at a time > o add netisr statistics for packets dropped because the isr is inactive Note that these change should not change existing behaviour so long as debug.mpsafenet is 0 (the default). Once I've got some other stuff committed it should be safe to enable mpsafenet for testing. Note also that I did not mark netgraph's isr MPSAFE. While I believe the core netgraph code is safe I can't be sure that all the various modules are ok. I'll leave it to someone else (harti?) to verify this and mark the netisr MPSAFE. Sam
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311081434.14186.sam>