Dear all: Just under four years ago, the non-MPSAFE network stack de-orbit burn schedule was announced, setting out a plan for eliminating remaining use of the Giant lock in the FreeBSD network stack. With the attached commit, that plan is now complete, and almost all of the network stack neither requires Giant nor runs with it. As always there are some loose ends, especially in IPv6, but with any luck those can be dealt with 8.0 also. Special thanks are due to the people who worked on and shepherded the last steps of this process -- especially Hans Petter Selasky, Alfred Perlstein, Andrew Thompson, Ed Schouten, and John Baldwin, who collectively bought our USB, tty, and other non-MPSAFE device driver stacks into a post-SMPng world. Thanks, Robert N M Watson Computer Laboratory University of Cambridge ---------- Forwarded message ---------- Date: Sat, 18 Apr 2009 20:39:18 +0000 (UTC) From: Robert Watson <rwatson_at_FreeBSD.org> To: src-committers_at_freebsd.org, svn-src-all_at_freebsd.org, svn-src-head_at_freebsd.org Subject: svn commit: r191253 - head/sys/net Author: rwatson Date: Sat Apr 18 20:39:17 2009 New Revision: 191253 URL: http://svn.freebsd.org/changeset/base/191253 Log: Remove IFF_NEEDSGIANT interface flag: we no longer provide ifnet-layer infrastructure to support non-MPSAFE network device drivers. Modified: head/sys/net/if.h Modified: head/sys/net/if.h ============================================================================== --- head/sys/net/if.h Sat Apr 18 20:10:39 2009 (r191252) +++ head/sys/net/if.h Sat Apr 18 20:39:17 2009 (r191253) _at__at_ -149,7 +149,6 _at__at_ struct if_data { #define IFF_PPROMISC 0x20000 /* (n) user-requested promisc mode */ #define IFF_MONITOR 0x40000 /* (n) user-requested monitor mode */ #define IFF_STATICARP 0x80000 /* (n) static ARP */ -#define IFF_NEEDSGIANT 0x100000 /* (i) hold Giant over if_start calls */ /* * Old names for driver flags so that user space tools can continue to use _at__at_ -163,8 +162,7 _at__at_ struct if_data { /* flags set internally only: */ #define IFF_CANTCHANGE \ (IFF_BROADCAST|IFF_POINTOPOINT|IFF_DRV_RUNNING|IFF_DRV_OACTIVE|\ - IFF_SIMPLEX|IFF_MULTICAST|IFF_ALLMULTI|IFF_SMART|IFF_PROMISC|\ - IFF_NEEDSGIANT) + IFF_SIMPLEX|IFF_MULTICAST|IFF_ALLMULTI|IFF_SMART|IFF_PROMISC) /* * Values for if_link_state.Received on Sat Apr 18 2009 - 18:54:22 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:46 UTC