freebsd-skq/sys
attilio 6a69e947d3 Introduce macro stubs in the mutex implementation that will be always
defined and will allow consumers, willing to provide options, file and
line to locking requests, to not worry about options redefining the
interfaces.
This is typically useful when there is the need to build another
locking interface on top of the mutex one.

The introduced functions that consumers can use are:
- mtx_lock_flags_
- mtx_unlock_flags_
- mtx_lock_spin_flags_
- mtx_unlock_spin_flags_
- mtx_assert_
- thread_lock_flags_

Spare notes:
- Likely we can get rid of all the 'INVARIANTS' specification in the
  ppbus code by using the same macro as done in this patch (but this is
  left to the ppbus maintainer)
- all the other locking interfaces may require a similar cleanup, where
  the most notable case is sx which will allow a further cleanup of
  vm_map locking facilities
- The patch should be fully compatible with older branches, thus a MFC
  is previewed (infact it uses all the underlying mechanisms already
  present).

Comments review by:	eadler, Ben Kaduk
Discussed with:		kib, jhb
MFC after:	1 month
2011-11-20 16:33:09 +00:00
..
amd64 Introduce macro stubs in the mutex implementation that will be always 2011-11-20 16:33:09 +00:00
arm Initial version of cesa(4) driver for Marvell crypto engine and security 2011-11-19 16:30:06 +00:00
boot Rename the linker emulation name for powerpc and powerc64. This is needed that 2011-11-19 19:25:57 +00:00
bsm Add ECAPMODE, "Not permitted in capability mode", a new kernel errno 2011-03-01 13:14:28 +00:00
cam Introduce CAM_SIM_POLLED SIM flag, indicating that it works in polling mode. 2011-11-17 21:07:56 +00:00
cddl Existing VOP_VPTOCNP() interface has a fatal flow that is critical for 2011-11-19 07:50:49 +00:00
compat Make the Linux *at() calls a bit more complete. 2011-11-19 07:19:37 +00:00
conf Provide high-level functions to access the feed-forward absolute and difference 2011-11-20 01:20:50 +00:00
contrib Add missing PF_UNLOCK in pf_test 2011-10-30 14:55:00 +00:00
crypto Update Copyright. 2011-10-27 14:15:26 +00:00
ddb Follow up to r225203 refining break-to-debugger run-time configuration 2011-08-27 14:24:27 +00:00
dev Introduce macro stubs in the mutex implementation that will be always 2011-11-20 16:33:09 +00:00
fs Since the nfscl_cleanup() function isn't used by the FreeBSD NFSv4 client, 2011-11-20 01:18:47 +00:00
gdb Modify kdb_trap() so that it re-calls the dbbe_trap function as long as 2011-02-18 22:25:11 +00:00
geom Temporary revert r227009 to fix freeze on UP systems without PREEMPTION. 2011-11-14 19:32:05 +00:00
gnu Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
i386 Regenerate system call tables. 2011-11-19 07:20:20 +00:00
ia64 Introduce the option VFS_ALLOW_NONMPSAFE and turn it on by default on 2011-11-08 10:18:07 +00:00
isa MFC 2011-05-09 18:53:13 +00:00
kern Introduce macro stubs in the mutex implementation that will be always 2011-11-20 16:33:09 +00:00
kgssapi Add missing break statement to make sure all 3DES etypes really are treated 2011-10-10 09:13:07 +00:00
libkern Add unicode support to msdosfs and smbfs; original pathes from imura, 2011-11-18 03:05:20 +00:00
mips Remove unused variable ubase. 2011-11-19 15:08:49 +00:00
modules Limit building sfxge(4) to amd64 only to unbreak the tinderboxen. The driver 2011-11-18 11:10:14 +00:00
net Bring in support for netmap, a framework for very efficient packet 2011-11-17 12:17:39 +00:00
net80211 .. add missing include from an incorrect merge. 2011-11-08 14:34:01 +00:00
netatalk
netgraph In r191367 the need for if_free_type() was removed and a new member 2011-11-11 22:57:52 +00:00
netinet Add support for the SCTP_REMOTE_UDP_ENCAPS_PORT socket option. 2011-11-20 15:00:45 +00:00
netinet6 Return the correct value for the IPV6_MULTICAST_HOPS getsockopt() call. 2011-11-13 02:32:10 +00:00
netipsec Add missing va_end() in an error case to clean up after va_start() 2011-10-07 21:00:26 +00:00
netipx Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
netnatm
netncp Change ncp_scan_bindery_object() to pass a constant search string. 2011-10-16 08:44:03 +00:00
netsmb Add unicode support to msdosfs and smbfs; original pathes from imura, 2011-11-18 03:05:20 +00:00
nfs Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00
nfsclient The old NFS client will crash due to the reply being m_freem()'d 2011-11-19 03:20:15 +00:00
nfsserver Fix the NFS servers so that they can do a Lookup of "..", 2011-09-03 00:28:53 +00:00
nlm Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
ofed Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
opencrypto Add the fo_chown and fo_chmod methods to struct fileops and use them 2011-08-16 20:07:47 +00:00
pc98 Introduce the option VFS_ALLOW_NONMPSAFE and turn it on by default on 2011-11-08 10:18:07 +00:00
pci Add preliminary support for RTL8168/8111F PCIe Gigabit ethernet. 2011-11-17 22:07:50 +00:00
powerpc Use a global __pure2 function instead of a global register variable for 2011-11-17 15:49:42 +00:00
rpc Both a crash reported on freebsd-current on Oct. 18 under the 2011-11-03 14:38:03 +00:00
security Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
sparc64 Fix make universe. 2011-11-16 18:42:43 +00:00
sys Introduce macro stubs in the mutex implementation that will be always 2011-11-20 16:33:09 +00:00
teken Link the demo application against ncursesw to make Unicode work. 2011-10-13 14:20:27 +00:00
tools Restore the comment that I removed by accident. 2011-11-09 13:26:59 +00:00
ufs Use implementation independent inoNN_t scalars for on-disk UFS structures 2011-11-09 07:48:48 +00:00
vm Introduce macro stubs in the mutex implementation that will be always 2011-11-20 16:33:09 +00:00
x86 Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
xdr
xen Properly handle suspend/resume events in the Xen device 2011-09-20 23:44:34 +00:00
Makefile Include sys/xen in cscope tag file generation. 2011-06-10 20:51:41 +00:00