svn commit: r242147 - in user/andre/tcp_workqueue/sys: arm/arm cddl/compat/opensolaris/kern cddl/contrib/opensolaris/uts/common/dtrace cddl/contrib/opensolaris/uts/common/fs/zfs ddb dev/acpica dev/...

Andre Oppermann andre at FreeBSD.org
Fri Oct 26 16:47:54 UTC 2012


Author: andre
Date: Fri Oct 26 16:47:52 2012
New Revision: 242147
URL: http://svn.freebsd.org/changeset/base/242147

Log:
  Revert r241798, r241800, r241802, r241805, r241814, r241815,
  r241889, and r242002 all related to mutex cache line alignment.
  
  Discussed with:	attilio et al

Modified:
  user/andre/tcp_workqueue/sys/arm/arm/busdma_machdep.c
  user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c
  user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c
  user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
  user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  user/andre/tcp_workqueue/sys/ddb/db_script.c
  user/andre/tcp_workqueue/sys/dev/acpica/acpivar.h
  user/andre/tcp_workqueue/sys/dev/ath/ah_osdep.c
  user/andre/tcp_workqueue/sys/dev/ipmi/ipmi_smbios.c
  user/andre/tcp_workqueue/sys/dev/ppbus/if_plip.c
  user/andre/tcp_workqueue/sys/dev/sbni/if_sbni.c
  user/andre/tcp_workqueue/sys/dev/snp/snp.c
  user/andre/tcp_workqueue/sys/dev/sound/pcm/channel.c
  user/andre/tcp_workqueue/sys/fs/devfs/devfs_dir.c
  user/andre/tcp_workqueue/sys/fs/devfs/devfs_vnops.c
  user/andre/tcp_workqueue/sys/fs/nfsclient/nfs_clvnops.c
  user/andre/tcp_workqueue/sys/geom/journal/g_journal.c
  user/andre/tcp_workqueue/sys/kern/kern_et.c
  user/andre/tcp_workqueue/sys/kern/kern_event.c
  user/andre/tcp_workqueue/sys/kern/kern_fail.c
  user/andre/tcp_workqueue/sys/kern/kern_hhook.c
  user/andre/tcp_workqueue/sys/kern/kern_intr.c
  user/andre/tcp_workqueue/sys/kern/kern_pmc.c
  user/andre/tcp_workqueue/sys/kern/kern_racct.c
  user/andre/tcp_workqueue/sys/kern/kern_rmlock.c
  user/andre/tcp_workqueue/sys/kern/kern_thread.c
  user/andre/tcp_workqueue/sys/kern/kern_uuid.c
  user/andre/tcp_workqueue/sys/kern/subr_autoconf.c
  user/andre/tcp_workqueue/sys/kern/subr_devstat.c
  user/andre/tcp_workqueue/sys/kern/subr_firmware.c
  user/andre/tcp_workqueue/sys/kern/subr_log.c
  user/andre/tcp_workqueue/sys/kern/subr_sleepqueue.c
  user/andre/tcp_workqueue/sys/kern/subr_unit.c
  user/andre/tcp_workqueue/sys/kern/uipc_accf.c
  user/andre/tcp_workqueue/sys/kern/uipc_domain.c
  user/andre/tcp_workqueue/sys/kern/uipc_socket.c
  user/andre/tcp_workqueue/sys/kern/vfs_mount.c
  user/andre/tcp_workqueue/sys/mips/atheros/if_arge.c
  user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-mdio.c
  user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-rgmii.c
  user/andre/tcp_workqueue/sys/mips/mips/busdma_machdep.c
  user/andre/tcp_workqueue/sys/mips/sibyte/sb_zbbus.c
  user/andre/tcp_workqueue/sys/net/pfil.c
  user/andre/tcp_workqueue/sys/net/raw_cb.c
  user/andre/tcp_workqueue/sys/net/raw_usrreq.c
  user/andre/tcp_workqueue/sys/net/rtsock.c
  user/andre/tcp_workqueue/sys/netatalk/aarp.c
  user/andre/tcp_workqueue/sys/netinet/in_mcast.c
  user/andre/tcp_workqueue/sys/netinet/ip_encap.c
  user/andre/tcp_workqueue/sys/netinet/ip_id.c
  user/andre/tcp_workqueue/sys/netinet/tcp_debug.c
  user/andre/tcp_workqueue/sys/netinet6/in6_mcast.c
  user/andre/tcp_workqueue/sys/pc98/cbus/cbus_dma.c
  user/andre/tcp_workqueue/sys/security/mac/mac_net.c
  user/andre/tcp_workqueue/sys/sys/mutex.h
  user/andre/tcp_workqueue/sys/ufs/ffs/ffs_snapshot.c
  user/andre/tcp_workqueue/sys/ufs/ffs/ffs_softdep.c
  user/andre/tcp_workqueue/sys/vm/vm_glue.c
  user/andre/tcp_workqueue/sys/vm/vm_pageout.c
  user/andre/tcp_workqueue/sys/x86/isa/isa_dma.c
  user/andre/tcp_workqueue/sys/xen/evtchn/evtchn.c
  user/andre/tcp_workqueue/sys/xen/gnttab.c

Modified: user/andre/tcp_workqueue/sys/arm/arm/busdma_machdep.c
==============================================================================
--- user/andre/tcp_workqueue/sys/arm/arm/busdma_machdep.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/arm/arm/busdma_machdep.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -163,7 +163,9 @@ static TAILQ_HEAD(,bus_dmamap) dmamap_fr
 #define BUSDMA_STATIC_MAPS	500
 static struct bus_dmamap map_pool[BUSDMA_STATIC_MAPS];
 
-static MTX_DEF_SYSINIT(busdma_mtx, "busdma lock", MTX_DEF);
+static struct mtx busdma_mtx;
+
+MTX_SYSINIT(busdma_mtx, &busdma_mtx, "busdma lock", MTX_DEF);
 
 static void init_bounce_pages(void *dummy);
 static int alloc_bounce_zone(bus_dma_tag_t dmat);

Modified: user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c
==============================================================================
--- user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -35,7 +35,8 @@ __FBSDID("$FreeBSD$");
 #ifdef _KERNEL
 #include <sys/kernel.h>
 
-MTX_DEF_SYSINIT(atomic_mtx, "atomic", MTX_DEF);
+struct mtx atomic_mtx;
+MTX_SYSINIT(atomic, &atomic_mtx, "atomic", MTX_DEF);
 #else
 #include <pthread.h>
 

Modified: user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c
==============================================================================
--- user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -58,7 +58,8 @@ struct kmem_item {
 	LIST_ENTRY(kmem_item) next;
 };
 static LIST_HEAD(, kmem_item) kmem_items;
-static MTX_DEF_SYSINIT(kmem_items_mtx, "kmem_items", MTX_DEF);
+static struct mtx kmem_items_mtx;
+MTX_SYSINIT(kmem_items_mtx, &kmem_items_mtx, "kmem_items", MTX_DEF);
 #endif	/* KMEM_DEBUG */
 
 void *

Modified: user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
==============================================================================
--- user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -232,7 +232,8 @@ static dtrace_helpers_t *dtrace_deferred
 static dtrace_enabling_t *dtrace_retained;	/* list of retained enablings */
 static dtrace_dynvar_t	dtrace_dynhash_sink;	/* end of dynamic hash chains */
 #if !defined(sun)
-static MTX_DEF_SYSINIT(dtrace_unr_mtx, "Unique resource identifier", MTX_DEF);
+static struct mtx	dtrace_unr_mtx;
+MTX_SYSINIT(dtrace_unr_mtx, &dtrace_unr_mtx, "Unique resource identifier", MTX_DEF);
 int		dtrace_in_probe;	/* non-zero if executing a probe */
 #if defined(__i386__) || defined(__amd64__) || defined(__mips__)
 uintptr_t	dtrace_in_probe_addr;	/* Address of invop when already in probe */

Modified: user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
==============================================================================
--- user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -63,7 +63,8 @@
 #include <sys/jail.h>
 #include "zfs_comutil.h"
 
-MTX_DEF_SYSINIT(zfs_debug_mtx, "zfs_debug", MTX_DEF);
+struct mtx zfs_debug_mtx;
+MTX_SYSINIT(zfs_debug_mtx, &zfs_debug_mtx, "zfs_debug", MTX_DEF);
 
 SYSCTL_NODE(_vfs, OID_AUTO, zfs, CTLFLAG_RW, 0, "ZFS file system");
 

Modified: user/andre/tcp_workqueue/sys/ddb/db_script.c
==============================================================================
--- user/andre/tcp_workqueue/sys/ddb/db_script.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/ddb/db_script.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -111,7 +111,8 @@ static char	db_static_buffer[DB_MAXSCRIP
  * processes.  Sysctl procedures acquire db_script_mtx before accessing the
  * global script data structures.
  */
-static MTX_DEF_SYSINIT(db_script_mtx, "db_script_mtx", MTX_DEF);
+static struct mtx 	db_script_mtx;
+MTX_SYSINIT(db_script_mtx, &db_script_mtx, "db_script_mtx", MTX_DEF);
 
 /*
  * Some script names have special meaning, such as those executed

Modified: user/andre/tcp_workqueue/sys/dev/acpica/acpivar.h
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/acpica/acpivar.h	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/acpica/acpivar.h	Fri Oct 26 16:47:52 2012	(r242147)
@@ -149,7 +149,8 @@ extern struct mtx			acpi_mutex;
 #define ACPI_UNLOCK(sys)		mtx_unlock(&sys##_mutex)
 #define ACPI_LOCK_ASSERT(sys)		mtx_assert(&sys##_mutex, MA_OWNED);
 #define ACPI_LOCK_DECL(sys, name)				\
-	static MTX_DEF_SYSINIT(sys##_mutex, name, MTX_DEF)
+	static struct mtx sys##_mutex;				\
+	MTX_SYSINIT(sys##_mutex, &sys##_mutex, name, MTX_DEF)
 #define ACPI_SERIAL_BEGIN(sys)		sx_xlock(&sys##_sxlock)
 #define ACPI_SERIAL_END(sys)		sx_xunlock(&sys##_sxlock)
 #define ACPI_SERIAL_ASSERT(sys)		sx_assert(&sys##_sxlock, SX_XLOCKED);

Modified: user/andre/tcp_workqueue/sys/dev/ath/ah_osdep.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/ath/ah_osdep.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/ath/ah_osdep.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -70,7 +70,9 @@
  * XXX This is a global lock for now; it should be pushed to
  * a per-device lock in some platform-independent fashion.
  */
-MTX_DEF_SYSINIT(ah_regser_mtx, "Atheros register access mutex", MTX_SPIN);
+struct mtx ah_regser_mtx;
+MTX_SYSINIT(ah_regser, &ah_regser_mtx, "Atheros register access mutex",
+    MTX_SPIN);
 
 extern	void ath_hal_printf(struct ath_hal *, const char*, ...)
 		__printflike(2,3);

Modified: user/andre/tcp_workqueue/sys/dev/ipmi/ipmi_smbios.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/ipmi/ipmi_smbios.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/ipmi/ipmi_smbios.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -83,7 +83,8 @@ typedef void (*smbios_callback_t)(struct
 
 static struct ipmi_get_info ipmi_info;
 static int ipmi_probed;
-static MTX_DEF_SYSINIT(ipmi_info_mtx, "ipmi info", MTX_DEF);
+static struct mtx ipmi_info_mtx;
+MTX_SYSINIT(ipmi_info, &ipmi_info_mtx, "ipmi info", MTX_DEF);
 
 static void	ipmi_smbios_probe(struct ipmi_get_info *);
 static int	smbios_cksum(struct smbios_eps *);

Modified: user/andre/tcp_workqueue/sys/dev/ppbus/if_plip.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/ppbus/if_plip.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/ppbus/if_plip.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -156,7 +156,8 @@ struct lp_data {
 	void		*sc_intr_cookie;
 };
 
-static MTX_DEF_SYSINIT(lp_tables_lock, "plip tables", MTX_DEF);
+static struct mtx lp_tables_lock;
+MTX_SYSINIT(lp_tables, &lp_tables_lock, "plip tables", MTX_DEF);
 
 /* Tables for the lp# interface */
 static u_char *txmith;

Modified: user/andre/tcp_workqueue/sys/dev/sbni/if_sbni.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/sbni/if_sbni.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/sbni/if_sbni.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -125,7 +125,8 @@ static __inline void	sbni_outsb(struct s
 static u_int32_t crc32tab[];
 
 #ifdef SBNI_DUAL_COMPOUND
-static MTX_DEF_SYSINIT(headlist_lock, "sbni headlist", MTX_DEF);
+static struct mtx headlist_lock;
+MTX_SYSINIT(headlist_lock, &headlist_lock, "sbni headlist", MTX_DEF);
 static struct sbni_softc *sbni_headlist;
 #endif
 

Modified: user/andre/tcp_workqueue/sys/dev/snp/snp.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/snp/snp.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/snp/snp.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -47,7 +47,8 @@ static MALLOC_DEFINE(M_SNP, "snp", "tty 
 
 /* XXX: should be mtx, but TTY can be locked by Giant. */
 #if 0
-static MTX_DEF_SYSINIT(snp_register_lock,
+static struct mtx	snp_register_lock;
+MTX_SYSINIT(snp_register_lock, &snp_register_lock,
     "tty snoop registration", MTX_DEF);
 #define	SNP_LOCK()	mtx_lock(&snp_register_lock)
 #define	SNP_UNLOCK()	mtx_unlock(&snp_register_lock)

Modified: user/andre/tcp_workqueue/sys/dev/sound/pcm/channel.c
==============================================================================
--- user/andre/tcp_workqueue/sys/dev/sound/pcm/channel.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/dev/sound/pcm/channel.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -211,7 +211,8 @@ SYSCTL_INT(_hw_snd, OID_AUTO, syncdelay,
  * Clients should acquire this lock @b without holding any channel locks
  * before touching syncgroups or the main syncgroup list.
  */
-MTX_DEF_SYSINIT(snd_pcm_syncgroups_mtx, "PCM channel sync group lock", MTX_DEF);
+struct mtx snd_pcm_syncgroups_mtx;
+MTX_SYSINIT(pcm_syncgroup, &snd_pcm_syncgroups_mtx, "PCM channel sync group lock", MTX_DEF);
 /**
  * @brief syncgroups' master list
  *

Modified: user/andre/tcp_workqueue/sys/fs/devfs/devfs_dir.c
==============================================================================
--- user/andre/tcp_workqueue/sys/fs/devfs/devfs_dir.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/fs/devfs/devfs_dir.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -52,7 +52,8 @@ static LIST_HEAD(, dirlistent) devfs_dir
 
 static MALLOC_DEFINE(M_DEVFS4, "DEVFS4", "DEVFS directory list");
 
-static MTX_DEF_SYSINIT(dirlist_mtx, "devfs dirlist lock", MTX_DEF);
+static struct mtx dirlist_mtx;
+MTX_SYSINIT(dirlist_mtx, &dirlist_mtx, "devfs dirlist lock", MTX_DEF);
 
 /* Returns 1 if the path is in the directory list. */
 int

Modified: user/andre/tcp_workqueue/sys/fs/devfs/devfs_vnops.c
==============================================================================
--- user/andre/tcp_workqueue/sys/fs/devfs/devfs_vnops.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/fs/devfs/devfs_vnops.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -73,10 +73,12 @@ static struct fileops devfs_ops_f;
 
 static MALLOC_DEFINE(M_CDEVPDATA, "DEVFSP", "Metainfo for cdev-fp data");
 
-MTX_DEF_SYSINIT(devfs_de_interlock, "devfs interlock", MTX_DEF);
+struct mtx	devfs_de_interlock;
+MTX_SYSINIT(devfs_de_interlock, &devfs_de_interlock, "devfs interlock", MTX_DEF);
 struct sx	clone_drain_lock;
 SX_SYSINIT(clone_drain_lock, &clone_drain_lock, "clone events drain lock");
-MTX_DEF_SYSINIT(cdevpriv_mtx, "cdevpriv lock", MTX_DEF);
+struct mtx	cdevpriv_mtx;
+MTX_SYSINIT(cdevpriv_mtx, &cdevpriv_mtx, "cdevpriv lock", MTX_DEF);
 
 static int
 devfs_fp_check(struct file *fp, struct cdev **devp, struct cdevsw **dswp,

Modified: user/andre/tcp_workqueue/sys/fs/nfsclient/nfs_clvnops.c
==============================================================================
--- user/andre/tcp_workqueue/sys/fs/nfsclient/nfs_clvnops.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/fs/nfsclient/nfs_clvnops.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -1481,7 +1481,9 @@ nfs_mknod(struct vop_mknod_args *ap)
 	return (nfs_mknodrpc(ap->a_dvp, ap->a_vpp, ap->a_cnp, ap->a_vap));
 }
 
-static MTX_DEF_SYSINIT(nfs_cverf_mtx, "NFS create verifier mutex", MTX_DEF);
+static struct mtx nfs_cverf_mtx;
+MTX_SYSINIT(nfs_cverf_mtx, &nfs_cverf_mtx, "NFS create verifier mutex",
+    MTX_DEF);
 
 static nfsquad_t
 nfs_get_cverf(void)

Modified: user/andre/tcp_workqueue/sys/geom/journal/g_journal.c
==============================================================================
--- user/andre/tcp_workqueue/sys/geom/journal/g_journal.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/geom/journal/g_journal.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -73,7 +73,8 @@ CTASSERT(sizeof(struct g_journal_header)
 CTASSERT(sizeof(struct g_journal_record_header) <= 512);
 
 static MALLOC_DEFINE(M_JOURNAL, "journal_data", "GEOM_JOURNAL Data");
-static MTX_DEF_SYSINIT(g_journal_cache_mtx, "cache usage", MTX_DEF);
+static struct mtx g_journal_cache_mtx;
+MTX_SYSINIT(g_journal_cache, &g_journal_cache_mtx, "cache usage", MTX_DEF);
 
 const struct g_journal_desc *g_journal_filesystems[] = {
 	&g_journal_ufs,

Modified: user/andre/tcp_workqueue/sys/kern/kern_et.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_et.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_et.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -37,7 +37,8 @@ __FBSDID("$FreeBSD$");
 SLIST_HEAD(et_eventtimers_list, eventtimer);
 static struct et_eventtimers_list eventtimers = SLIST_HEAD_INITIALIZER(et_eventtimers);
 
-MTX_DEF_SYSINIT(et_eventtimers_mtx, "et_mtx", MTX_DEF);
+struct mtx	et_eventtimers_mtx;
+MTX_SYSINIT(et_eventtimers_init, &et_eventtimers_mtx, "et_mtx", MTX_DEF);
 
 SYSCTL_NODE(_kern, OID_AUTO, eventtimer, CTLFLAG_RW, 0, "Event timers");
 static SYSCTL_NODE(_kern_eventtimer, OID_AUTO, et, CTLFLAG_RW, 0, "");

Modified: user/andre/tcp_workqueue/sys/kern/kern_event.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_event.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_event.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -74,7 +74,8 @@ static MALLOC_DEFINE(M_KQUEUE, "kqueue",
  * This lock is used if multiple kq locks are required.  This possibly
  * should be made into a per proc lock.
  */
-static MTX_DEF_SYSINIT(kq_global, "kqueue order", MTX_DEF);
+static struct mtx	kq_global;
+MTX_SYSINIT(kq_global, &kq_global, "kqueue order", MTX_DEF);
 #define KQ_GLOBAL_LOCK(lck, haslck)	do {	\
 	if (!haslck)				\
 		mtx_lock(lck);			\
@@ -268,7 +269,9 @@ extern struct filterops fs_filtops;
 /*
  * Table for for all system-defined filters.
  */
-static MTX_DEF_SYSINIT(filterops_lock, "protect sysfilt_ops", MTX_DEF);
+static struct mtx	filterops_lock;
+MTX_SYSINIT(kqueue_filterops, &filterops_lock, "protect sysfilt_ops",
+	MTX_DEF);
 static struct {
 	struct filterops *for_fop;
 	int for_refcnt;
@@ -1879,8 +1882,9 @@ knlist_empty(struct knlist *knl)
 	return SLIST_EMPTY(&knl->kl_list);
 }
 
-static MTX_DEF_SYSINIT(knlist_lock, "knlist lock for lockless objects",
-    MTX_DEF);
+static struct mtx	knlist_lock;
+MTX_SYSINIT(knlist_lock, &knlist_lock, "knlist lock for lockless objects",
+	MTX_DEF);
 static void knlist_mtx_lock(void *arg);
 static void knlist_mtx_unlock(void *arg);
 

Modified: user/andre/tcp_workqueue/sys/kern/kern_fail.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_fail.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_fail.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -73,7 +73,8 @@ static MALLOC_DEFINE(M_FAIL_POINT, "Fail
 #define fp_free(ptr) free(ptr, M_FAIL_POINT)
 #define fp_malloc(size, flags) malloc((size), M_FAIL_POINT, (flags))
 
-static MTX_DEF_SYSINIT(g_fp_mtx, "fail point mtx", MTX_DEF);
+static struct mtx g_fp_mtx;
+MTX_SYSINIT(g_fp_mtx, &g_fp_mtx, "fail point mtx", MTX_DEF);
 #define FP_LOCK()	mtx_lock(&g_fp_mtx)
 #define FP_UNLOCK()	mtx_unlock(&g_fp_mtx)
 

Modified: user/andre/tcp_workqueue/sys/kern/kern_hhook.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_hhook.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_hhook.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -64,7 +64,9 @@ LIST_HEAD(hhookheadhead, hhook_head);
 VNET_DEFINE(struct hhookheadhead, hhook_head_list);
 #define	V_hhook_head_list VNET(hhook_head_list)
 
-static MTX_DEF_SYSINIT(hhook_head_list_lock, "hhook_head list lock", MTX_DEF);
+static struct mtx hhook_head_list_lock;
+MTX_SYSINIT(hhookheadlistlock, &hhook_head_list_lock, "hhook_head list lock",
+    MTX_DEF);
 
 /* Private function prototypes. */
 static void hhook_head_destroy(struct hhook_head *hhh);

Modified: user/andre/tcp_workqueue/sys/kern/kern_intr.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_intr.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_intr.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -95,8 +95,8 @@ SYSCTL_INT(_hw, OID_AUTO, intr_storm_thr
     "Number of consecutive interrupts before storm protection is enabled");
 static TAILQ_HEAD(, intr_event) event_list =
     TAILQ_HEAD_INITIALIZER(event_list);
-
-static MTX_DEF_SYSINIT(event_lock, "intr event list", MTX_DEF);
+static struct mtx event_lock;
+MTX_SYSINIT(intr_event_list, &event_lock, "intr event list", MTX_DEF);
 
 static void	intr_event_update(struct intr_event *ie);
 #ifdef INTR_FILTER

Modified: user/andre/tcp_workqueue/sys/kern/kern_pmc.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_pmc.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_pmc.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -100,10 +100,11 @@ TUNABLE_INT(PMC_SYSCTL_NAME_PREFIX "soft
 SYSCTL_INT(_kern_hwpmc, OID_AUTO, softevents, CTLFLAG_TUN|CTLFLAG_RD,
     &pmc_softevents, 0, "maximum number of soft events");
 
+struct mtx pmc_softs_mtx;
 int pmc_softs_count;
 struct pmc_soft **pmc_softs;
 
-MTX_DEF_SYSINIT(pmc_softs_mtx, "pmc-softs", MTX_SPIN);
+MTX_SYSINIT(pmc_soft_mtx, &pmc_softs_mtx, "pmc-softs", MTX_SPIN);
 
 static void
 pmc_init_sx(void)

Modified: user/andre/tcp_workqueue/sys/kern/kern_racct.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_racct.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_racct.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -63,7 +63,8 @@ __FBSDID("$FreeBSD$");
 
 FEATURE(racct, "Resource Accounting");
 
-static MTX_DEF_SYSINIT(racct_lock, "racct lock", MTX_DEF);
+static struct mtx racct_lock;
+MTX_SYSINIT(racct_lock, &racct_lock, "racct lock", MTX_DEF);
 
 static uma_zone_t racct_zone;
 

Modified: user/andre/tcp_workqueue/sys/kern/kern_rmlock.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_rmlock.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_rmlock.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -118,7 +118,9 @@ owner_rm(const struct lock_object *lock,
 }
 #endif
 
-static MTX_DEF_SYSINIT(rm_spinlock, "rm_spinlock", MTX_SPIN);
+static struct mtx rm_spinlock;
+
+MTX_SYSINIT(rm_spinlock, &rm_spinlock, "rm_spinlock", MTX_SPIN);
 
 /*
  * Add or remove tracker from per-cpu list.

Modified: user/andre/tcp_workqueue/sys/kern/kern_thread.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_thread.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_thread.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -72,8 +72,8 @@ SDT_PROBE_DEFINE(proc, , , lwp_exit, lwp
 static uma_zone_t thread_zone;
 
 TAILQ_HEAD(, thread) zombie_threads = TAILQ_HEAD_INITIALIZER(zombie_threads);
-
-static MTX_DEF_SYSINIT(zombie_lock, "zombie lock", MTX_SPIN);
+static struct mtx zombie_lock;
+MTX_SYSINIT(zombie_lock, &zombie_lock, "zombie lock", MTX_SPIN);
 
 static void thread_zombie(struct thread *);
 

Modified: user/andre/tcp_workqueue/sys/kern/kern_uuid.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/kern_uuid.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/kern_uuid.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -73,7 +73,8 @@ CTASSERT(sizeof(struct uuid_private) == 
 
 static struct uuid_private uuid_last;
 
-static MTX_DEF_SYSINIT(uuid_mutex, "UUID generator mutex lock", MTX_DEF);
+static struct mtx uuid_mutex;
+MTX_SYSINIT(uuid_lock, &uuid_mutex, "UUID generator mutex lock", MTX_DEF);
 
 /*
  * Return the first MAC address we encounter or, if none was found,

Modified: user/andre/tcp_workqueue/sys/kern/subr_autoconf.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_autoconf.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_autoconf.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -56,8 +56,8 @@ __FBSDID("$FreeBSD$");
 static TAILQ_HEAD(, intr_config_hook) intr_config_hook_list =
 	TAILQ_HEAD_INITIALIZER(intr_config_hook_list);
 static struct intr_config_hook *next_to_notify;
-
-static MTX_DEF_SYSINIT(intr_config_hook_lock, "intr config", MTX_DEF);
+static struct mtx intr_config_hook_lock;
+MTX_SYSINIT(intr_config_hook, &intr_config_hook_lock, "intr config", MTX_DEF);
 
 /* ARGSUSED */
 static void run_interrupt_driven_config_hooks(void);

Modified: user/andre/tcp_workqueue/sys/kern/subr_devstat.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_devstat.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_devstat.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -102,8 +102,8 @@ static int devstat_num_devs;
 static long devstat_generation = 1;
 static int devstat_version = DEVSTAT_VERSION;
 static int devstat_current_devnumber;
-
-static MTX_DEF_SYSINIT(devstat_mutex, "devstat", MTX_DEF);
+static struct mtx devstat_mutex;
+MTX_SYSINIT(devstat_mutex, &devstat_mutex, "devstat", MTX_DEF);
 
 static struct devstatlist device_statq = STAILQ_HEAD_INITIALIZER(device_statq);
 static struct devstat *devstat_alloc(void);

Modified: user/andre/tcp_workqueue/sys/kern/subr_firmware.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_firmware.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_firmware.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -134,7 +134,8 @@ static struct task firmware_unload_task;
 /*
  * This mutex protects accesses to the firmware table.
  */
-static MTX_DEF_SYSINIT(firmware_mtx, "firmware table", MTX_DEF);
+static struct mtx firmware_mtx;
+MTX_SYSINIT(firmware, &firmware_mtx, "firmware table", MTX_DEF);
 
 /*
  * Helper function to lookup a name.

Modified: user/andre/tcp_workqueue/sys/kern/subr_log.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_log.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_log.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -93,8 +93,8 @@ static struct logsoftc {
 
 int			log_open;	/* also used in log() */
 static struct cv	log_wakeup;
-
-MTX_DEF_SYSINIT(msgbuf_lock, "msgbuf lock", MTX_DEF);
+struct mtx		msgbuf_lock;
+MTX_SYSINIT(msgbuf_lock, &msgbuf_lock, "msgbuf lock", MTX_DEF);
 
 /* Times per second to check for a pending syslog wakeup. */
 static int	log_wakeups_per_second = 5;

Modified: user/andre/tcp_workqueue/sys/kern/subr_sleepqueue.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_sleepqueue.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_sleepqueue.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -1040,8 +1040,8 @@ LIST_HEAD(sqphead, sleepq_prof);
 struct sqphead sleepq_prof_free;
 struct sqphead sleepq_hash[SC_TABLESIZE];
 static struct sleepq_prof sleepq_profent[SLEEPQ_PROF_LOCATIONS];
-
-static MTX_DEF_SYSINIT(sleepq_prof_lock, "sleepq_prof", MTX_SPIN);
+static struct mtx sleepq_prof_lock;
+MTX_SYSINIT(sleepq_prof_lock, &sleepq_prof_lock, "sleepq_prof", MTX_SPIN);
 
 static void
 sleepq_profile(const char *wmesg)

Modified: user/andre/tcp_workqueue/sys/kern/subr_unit.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/subr_unit.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/subr_unit.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -92,7 +92,9 @@ static MALLOC_DEFINE(M_UNIT, "Unitno", "
 #define Malloc(foo) malloc(foo, M_UNIT, M_WAITOK | M_ZERO)
 #define Free(foo) free(foo, M_UNIT)
 
-static MTX_DEF_SYSINIT(unitmtx, "unit# allocation", MTX_DEF);
+static struct mtx unitmtx;
+
+MTX_SYSINIT(unit, &unitmtx, "unit# allocation", MTX_DEF);
 
 #else /* ...USERLAND */
 

Modified: user/andre/tcp_workqueue/sys/kern/uipc_accf.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/uipc_accf.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/uipc_accf.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -47,7 +47,9 @@ __FBSDID("$FreeBSD$");
 #include <sys/socketvar.h>
 #include <sys/queue.h>
 
-static MTX_DEF_SYSINIT(accept_filter_mtx, "accept_filter_mtx", MTX_DEF);
+static struct mtx accept_filter_mtx;
+MTX_SYSINIT(accept_filter, &accept_filter_mtx, "accept_filter_mtx",
+	MTX_DEF);
 #define	ACCEPT_FILTER_LOCK()	mtx_lock(&accept_filter_mtx)
 #define	ACCEPT_FILTER_UNLOCK()	mtx_unlock(&accept_filter_mtx)
 

Modified: user/andre/tcp_workqueue/sys/kern/uipc_domain.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/uipc_domain.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/uipc_domain.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -75,8 +75,8 @@ static void	pfslowtimo(void *);
 
 struct domain *domains;		/* registered protocol domains */
 int domain_init_status = 0;
-
-static MTX_DEF_SYSINIT(dom_mtx, "domain list", MTX_DEF);
+static struct mtx dom_mtx;		/* domain list lock */
+MTX_SYSINIT(domain, &dom_mtx, "domain list", MTX_DEF);
 
 /*
  * Dummy protocol specific user requests function pointer array.

Modified: user/andre/tcp_workqueue/sys/kern/uipc_socket.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/uipc_socket.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/uipc_socket.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -236,13 +236,15 @@ SYSCTL_INT(_kern_ipc_zero_copy, OID_AUTO
  * accept_mtx locks down per-socket fields relating to accept queues.  See
  * socketvar.h for an annotation of the protected fields of struct socket.
  */
-MTX_DEF_SYSINIT(accept_mtx, "accept", MTX_DEF);
+struct mtx	accept_mtx;
+MTX_SYSINIT(accept_mtx, &accept_mtx, "accept", MTX_DEF);
 
 /*
  * so_global_mtx protects so_gencnt, numopensockets, and the per-socket
  * so_gencnt field.
  */
-static MTX_DEF_SYSINIT(so_global_mtx, "so_glabel", MTX_DEF);
+static struct mtx	so_global_mtx;
+MTX_SYSINIT(so_global_mtx, &so_global_mtx, "so_glabel", MTX_DEF);
 
 /*
  * General IPC sysctl name space, used by sockets and a variety of other IPC

Modified: user/andre/tcp_workqueue/sys/kern/vfs_mount.c
==============================================================================
--- user/andre/tcp_workqueue/sys/kern/vfs_mount.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/kern/vfs_mount.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -85,7 +85,8 @@ static uma_zone_t mount_zone;
 struct mntlist mountlist = TAILQ_HEAD_INITIALIZER(mountlist);
 
 /* For any iteration/modification of mountlist */
-MTX_DEF_SYSINIT(mountlist_mtx, "mountlist", MTX_DEF);
+struct mtx mountlist_mtx;
+MTX_SYSINIT(mountlist, &mountlist_mtx, "mountlist", MTX_DEF);
 
 /*
  * Global opts, taken by all filesystems

Modified: user/andre/tcp_workqueue/sys/mips/atheros/if_arge.c
==============================================================================
--- user/andre/tcp_workqueue/sys/mips/atheros/if_arge.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/mips/atheros/if_arge.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -240,7 +240,9 @@ DRIVER_MODULE(mdio, argemdio, mdio_drive
  */
 extern uint32_t ar711_base_mac[ETHER_ADDR_LEN];
 
-static MTX_DEF_SYSINIT(miibus_mtx, "arge mii lock", MTX_DEF);
+static struct mtx miibus_mtx;
+
+MTX_SYSINIT(miibus_mtx, &miibus_mtx, "arge mii lock", MTX_DEF);
 
 /*
  * Flushes all

Modified: user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-mdio.c
==============================================================================
--- user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-mdio.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-mdio.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -46,7 +46,8 @@ __FBSDID("$FreeBSD$");
 #include "wrapper-cvmx-includes.h"
 #include "ethernet-headers.h"
 
-MTX_DEF_SYSINIT(cvm_oct_mdio_mtx, "MDIO", MTX_DEF);
+struct mtx cvm_oct_mdio_mtx;
+MTX_SYSINIT(cvm_oct_mdio, &cvm_oct_mdio_mtx, "MDIO", MTX_DEF);
 
 /**
  * Perform an MII read. Called by the generic MII routines

Modified: user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-rgmii.c
==============================================================================
--- user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-rgmii.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/mips/cavium/octe/ethernet-rgmii.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -52,7 +52,9 @@ __FBSDID("$FreeBSD$");
 extern int octeon_is_simulation(void);
 extern struct ifnet *cvm_oct_device[];
 
-static MTX_DEF_SYSINIT(global_register_lock, "RGMII Global", MTX_SPIN);
+static struct mtx global_register_lock;
+MTX_SYSINIT(global_register_lock, &global_register_lock,
+	    "RGMII Global", MTX_SPIN);
 
 static int number_rgmii_ports;
 

Modified: user/andre/tcp_workqueue/sys/mips/mips/busdma_machdep.c
==============================================================================
--- user/andre/tcp_workqueue/sys/mips/mips/busdma_machdep.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/mips/mips/busdma_machdep.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -156,7 +156,9 @@ static TAILQ_HEAD(,bus_dmamap) dmamap_fr
 #define BUSDMA_STATIC_MAPS	500
 static struct bus_dmamap map_pool[BUSDMA_STATIC_MAPS];
 
-static MTX_DEF_SYSINIT(busdma_mtx, "busdma lock", MTX_DEF);
+static struct mtx busdma_mtx;
+
+MTX_SYSINIT(busdma_mtx, &busdma_mtx, "busdma lock", MTX_DEF);
 
 static void init_bounce_pages(void *dummy);
 static int alloc_bounce_zone(bus_dma_tag_t dmat);

Modified: user/andre/tcp_workqueue/sys/mips/sibyte/sb_zbbus.c
==============================================================================
--- user/andre/tcp_workqueue/sys/mips/sibyte/sb_zbbus.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/mips/sibyte/sb_zbbus.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -44,7 +44,9 @@ __FBSDID("$FreeBSD$");
 
 static MALLOC_DEFINE(M_INTMAP, "sb1250 intmap", "Sibyte 1250 Interrupt Mapper");
 
-static MTX_DEF_SYSINIT(zbbus_intr_mtx, "zbbus_intr_mask/unmask lock", MTX_SPIN);
+static struct mtx zbbus_intr_mtx;
+MTX_SYSINIT(zbbus_intr_mtx, &zbbus_intr_mtx, "zbbus_intr_mask/unmask lock",
+	    MTX_SPIN);
 
 /*
  * This array holds the mapping between a MIPS hard interrupt and the

Modified: user/andre/tcp_workqueue/sys/net/pfil.c
==============================================================================
--- user/andre/tcp_workqueue/sys/net/pfil.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/net/pfil.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -47,7 +47,8 @@
 #include <net/if.h>
 #include <net/pfil.h>
 
-static MTX_DEF_SYSINIT(pfil_global_lock, "pfil_head_list lock", MTX_DEF);
+static struct mtx pfil_global_lock;
+MTX_SYSINIT(pfil_global_lock, &pfil_global_lock, "pfil_head_list lock", MTX_DEF);
 
 static int pfil_list_add(pfil_list_t *, struct packet_filter_hook *, int,
     uint8_t);

Modified: user/andre/tcp_workqueue/sys/net/raw_cb.c
==============================================================================
--- user/andre/tcp_workqueue/sys/net/raw_cb.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/net/raw_cb.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -56,7 +56,7 @@
  *	redo address binding to allow wildcards
  */
 
-MTX_DEF_SYSINIT(rawcb_mtx, "rawcb", MTX_DEF);
+struct mtx rawcb_mtx;
 VNET_DEFINE(struct rawcb_list_head, rawcb_list);
 
 static SYSCTL_NODE(_net, OID_AUTO, raw, CTLFLAG_RW, 0,

Modified: user/andre/tcp_workqueue/sys/net/raw_usrreq.c
==============================================================================
--- user/andre/tcp_workqueue/sys/net/raw_usrreq.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/net/raw_usrreq.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -49,6 +49,8 @@
 #include <net/raw_cb.h>
 #include <net/vnet.h>
 
+MTX_SYSINIT(rawcb_mtx, &rawcb_mtx, "rawcb", MTX_DEF);
+
 /*
  * Initialize raw connection block q.
  */

Modified: user/andre/tcp_workqueue/sys/net/rtsock.c
==============================================================================
--- user/andre/tcp_workqueue/sys/net/rtsock.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/net/rtsock.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -167,7 +167,8 @@ static struct {
 	int	any_count;	/* total attached */
 } route_cb;
 
-MTX_DEF_SYSINIT(rtsock_mtx, "rtsock route_cb lock", MTX_DEF);
+struct mtx rtsock_mtx;
+MTX_SYSINIT(rtsock, &rtsock_mtx, "rtsock route_cb lock", MTX_DEF);
 
 #define	RTSOCK_LOCK()	mtx_lock(&rtsock_mtx)
 #define	RTSOCK_UNLOCK()	mtx_unlock(&rtsock_mtx)

Modified: user/andre/tcp_workqueue/sys/netatalk/aarp.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netatalk/aarp.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netatalk/aarp.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -82,7 +82,8 @@ static void	at_aarpinput(struct ifnet *i
 #define	AARPTAB_SIZE	(AARPTAB_BSIZ * AARPTAB_NB)
 static struct aarptab	aarptab[AARPTAB_SIZE];
 
-MTX_DEF_SYSINIT(aarptab_mtx, "aarptab_mtx", MTX_DEF);
+struct mtx	aarptab_mtx;
+MTX_SYSINIT(aarptab_mtx, &aarptab_mtx, "aarptab_mtx", MTX_DEF);
 
 #define	AARPTAB_HASH(a)	((((a).s_net << 8) + (a).s_node) % AARPTAB_NB)
 

Modified: user/andre/tcp_workqueue/sys/netinet/in_mcast.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netinet/in_mcast.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netinet/in_mcast.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -94,7 +94,8 @@ static MALLOC_DEFINE(M_IPMSOURCE, "ip_ms
  * any need for in_multi itself to be virtualized -- it is bound to an ifp
  * anyway no matter what happens.
  */
-MTX_DEF_SYSINIT(in_multi_mtx, "in_multi_mtx", MTX_DEF);
+struct mtx in_multi_mtx;
+MTX_SYSINIT(in_multi_mtx, &in_multi_mtx, "in_multi_mtx", MTX_DEF);
 
 /*
  * Functions with non-static linkage defined in this file should be

Modified: user/andre/tcp_workqueue/sys/netinet/ip_encap.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netinet/ip_encap.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netinet/ip_encap.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -101,7 +101,8 @@ static void encap_fillarg(struct mbuf *,
 /*
  * All global variables in ip_encap.c are locked using encapmtx.
  */
-static MTX_DEF_SYSINIT(encapmtx, "encapmtx", MTX_DEF);
+static struct mtx encapmtx;
+MTX_SYSINIT(encapmtx, &encapmtx, "encapmtx", MTX_DEF);
 LIST_HEAD(, encaptab) encaptab = LIST_HEAD_INITIALIZER(encaptab);
 
 /*

Modified: user/andre/tcp_workqueue/sys/netinet/ip_id.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netinet/ip_id.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netinet/ip_id.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -97,11 +97,12 @@ static int		 array_ptr = 0;
 static int		 array_size = 8192;
 static int		 random_id_collisions = 0;
 static int		 random_id_total = 0;
+static struct mtx	 ip_id_mtx;
 
 static void	ip_initid(void);
 static int	sysctl_ip_id_change(SYSCTL_HANDLER_ARGS);
 
-static MTX_DEF_SYSINIT(ip_id_mtx, "ip_id_mtx", MTX_DEF);
+MTX_SYSINIT(ip_id_mtx, &ip_id_mtx, "ip_id_mtx", MTX_DEF);
 
 SYSCTL_DECL(_net_inet_ip);
 SYSCTL_PROC(_net_inet_ip, OID_AUTO, random_id_period, CTLTYPE_INT|CTLFLAG_RW,

Modified: user/andre/tcp_workqueue/sys/netinet/tcp_debug.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netinet/tcp_debug.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netinet/tcp_debug.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -86,7 +86,8 @@ static int		tcp_debx;
  * two parts, one of which saves connection and other state into the global
  * array (locked by tcp_debug_mtx).
  */
-MTX_DEF_SYSINIT(tcp_debug_mtx, "tcp_debug_mtx", MTX_DEF);
+struct mtx		tcp_debug_mtx;
+MTX_SYSINIT(tcp_debug_mtx, &tcp_debug_mtx, "tcp_debug_mtx", MTX_DEF);
 
 /*
  * Save TCP state at a given moment; optionally, both tcpcb and TCP packet

Modified: user/andre/tcp_workqueue/sys/netinet6/in6_mcast.c
==============================================================================
--- user/andre/tcp_workqueue/sys/netinet6/in6_mcast.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/netinet6/in6_mcast.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -103,7 +103,8 @@ RB_GENERATE(ip6_msource_tree, ip6_msourc
  * any need for in6_multi itself to be virtualized -- it is bound to an ifp
  * anyway no matter what happens.
  */
-MTX_DEF_SYSINIT(in6_multi_mtx, "in6_multi_mtx", MTX_DEF);
+struct mtx in6_multi_mtx;
+MTX_SYSINIT(in6_multi_mtx, &in6_multi_mtx, "in6_multi_mtx", MTX_DEF);
 
 static void	im6f_commit(struct in6_mfilter *);
 static int	im6f_get_source(struct in6_mfilter *imf,

Modified: user/andre/tcp_workqueue/sys/pc98/cbus/cbus_dma.c
==============================================================================
--- user/andre/tcp_workqueue/sys/pc98/cbus/cbus_dma.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/pc98/cbus/cbus_dma.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -72,7 +72,8 @@ static u_int8_t	dma_bounced = 0;
 static u_int8_t	dma_busy = 0;		/* Used in isa_dmastart() */
 static u_int8_t	dma_inuse = 0;		/* User for acquire/release */
 static u_int8_t dma_auto_mode = 0;
-static MTX_DEF_SYSINIT(isa_dma_lock, "isa DMA lock", MTX_DEF);
+static struct mtx isa_dma_lock;
+MTX_SYSINIT(isa_dma_lock, &isa_dma_lock, "isa DMA lock", MTX_DEF);
 
 #define VALID_DMA_MASK (3)
 

Modified: user/andre/tcp_workqueue/sys/security/mac/mac_net.c
==============================================================================
--- user/andre/tcp_workqueue/sys/security/mac/mac_net.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/security/mac/mac_net.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -79,7 +79,8 @@ __FBSDID("$FreeBSD$");
  * our own global mutex for struct ifnet.  Non-ideal, but should help in the
  * SMP environment.
  */
-MTX_DEF_SYSINIT(mac_ifnet_mtx, "mac_ifnet", MTX_DEF);
+struct mtx mac_ifnet_mtx;
+MTX_SYSINIT(mac_ifnet_mtx, &mac_ifnet_mtx, "mac_ifnet", MTX_DEF);
 
 /*
  * Retrieve the label associated with an mbuf by searching for the tag.

Modified: user/andre/tcp_workqueue/sys/sys/mutex.h
==============================================================================
--- user/andre/tcp_workqueue/sys/sys/mutex.h	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/sys/mutex.h	Fri Oct 26 16:47:52 2012	(r242147)
@@ -394,34 +394,12 @@ do {									\
 	return (_val);							\
 } while (0)
 
-/*
- * Helper macros to prevent global mutexes to share a cache line
- * on SMP systems.
- */
-#ifdef SMP
-#define	MTX_ALIGN	__aligned(CACHE_LINE_SIZE)
-#else
-#define	MTX_ALIGN
-#endif
-
-#ifdef SMP
-#define	MTX_GLOBAL(name)						\
-	struct mtx __aligned(CACHE_LINE_SIZE) (name)
-#else /* SMP */
-#define	MTX_GLOBAL(name)						\
-	struct mtx (name)
-#endif /* SMP */
-
 struct mtx_args {
 	struct mtx	*ma_mtx;
 	const char 	*ma_desc;
 	int		 ma_opts;
 };
 
-#define	MTX_DEF_SYSINIT(name, desc, opts)				\
-	MTX_GLOBAL(name);						\
-	MTX_SYSINIT(name, &name, desc, opts)
-
 #define	MTX_SYSINIT(name, mtx, desc, opts)				\
 	static struct mtx_args name##_args = {				\
 		(mtx),							\

Modified: user/andre/tcp_workqueue/sys/ufs/ffs/ffs_snapshot.c
==============================================================================
--- user/andre/tcp_workqueue/sys/ufs/ffs/ffs_snapshot.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/ufs/ffs/ffs_snapshot.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -136,7 +136,8 @@ ffs_sync_snap(mp, waitfor)
 FEATURE(ffs_snapshot, "FFS snapshot support");
 
 LIST_HEAD(, snapdata) snapfree;
-static MTX_DEF_SYSINIT(snapfree_lock, "snapdata free list", MTX_DEF);
+static struct mtx snapfree_lock;
+MTX_SYSINIT(ffs_snapfree, &snapfree_lock, "snapdata free list", MTX_DEF);
 
 static int cgaccount(int, struct vnode *, struct buf *, int);
 static int expunge_ufs1(struct vnode *, struct inode *, struct fs *,

Modified: user/andre/tcp_workqueue/sys/ufs/ffs/ffs_softdep.c
==============================================================================
--- user/andre/tcp_workqueue/sys/ufs/ffs/ffs_softdep.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/ufs/ffs/ffs_softdep.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -993,7 +993,8 @@ static	void softdep_disk_write_complete(
 static	void softdep_deallocate_dependencies(struct buf *);
 static	int softdep_count_dependencies(struct buf *bp, int);
 
-static MTX_DEF_SYSINIT(lk, "Softdep Lock", MTX_DEF);
+static struct mtx lk;
+MTX_SYSINIT(softdep_lock, &lk, "Softdep Lock", MTX_DEF);
 
 #define TRY_ACQUIRE_LOCK(lk)		mtx_trylock(lk)
 #define ACQUIRE_LOCK(lk)		mtx_lock(lk)

Modified: user/andre/tcp_workqueue/sys/vm/vm_glue.c
==============================================================================
--- user/andre/tcp_workqueue/sys/vm/vm_glue.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/vm/vm_glue.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -306,8 +306,7 @@ vm_sync_icache(vm_map_t map, vm_offset_t
 struct kstack_cache_entry *kstack_cache;
 static int kstack_cache_size = 128;
 static int kstacks;
-static MTX_DEF_SYSINIT(kstack_cache_mtx, "kstkch", MTX_DEF);
-
+static struct mtx kstack_cache_mtx;
 SYSCTL_INT(_vm, OID_AUTO, kstack_cache_size, CTLFLAG_RW, &kstack_cache_size, 0,
     "");
 SYSCTL_INT(_vm, OID_AUTO, kstacks, CTLFLAG_RD, &kstacks, 0,
@@ -487,6 +486,7 @@ kstack_cache_init(void *nulll)
 	    EVENTHANDLER_PRI_ANY);
 }
 
+MTX_SYSINIT(kstack_cache, &kstack_cache_mtx, "kstkch", MTX_DEF);
 SYSINIT(vm_kstacks, SI_SUB_KTHREAD_INIT, SI_ORDER_ANY, kstack_cache_init, NULL);
 
 #ifndef NO_SWAPPING

Modified: user/andre/tcp_workqueue/sys/vm/vm_pageout.c
==============================================================================
--- user/andre/tcp_workqueue/sys/vm/vm_pageout.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/vm/vm_pageout.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -146,8 +146,9 @@ int vm_pageout_pages_needed;	/* flag say
 #if !defined(NO_SWAPPING)
 static int vm_pageout_req_swapout;	/* XXX */
 static int vm_daemon_needed;
+static struct mtx vm_daemon_mtx;
 /* Allow for use by vm_pageout before vm_daemon is initialized. */
-static MTX_DEF_SYSINIT(vm_daemon_mtx, "vm daemon", MTX_DEF);
+MTX_SYSINIT(vm_daemon, &vm_daemon_mtx, "vm daemon", MTX_DEF);
 #endif
 static int vm_max_launder = 32;
 static int vm_pageout_stats_max=0, vm_pageout_stats_interval = 0;

Modified: user/andre/tcp_workqueue/sys/x86/isa/isa_dma.c
==============================================================================
--- user/andre/tcp_workqueue/sys/x86/isa/isa_dma.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/x86/isa/isa_dma.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -71,7 +71,8 @@ static u_int8_t	dma_bounced = 0;
 static u_int8_t	dma_busy = 0;		/* Used in isa_dmastart() */
 static u_int8_t	dma_inuse = 0;		/* User for acquire/release */
 static u_int8_t dma_auto_mode = 0;
-static MTX_DEF_SYSINIT(isa_dma_lock, "isa DMA lock", MTX_DEF);
+static struct mtx isa_dma_lock;
+MTX_SYSINIT(isa_dma_lock, &isa_dma_lock, "isa DMA lock", MTX_DEF);
 
 #define VALID_DMA_MASK (7)
 

Modified: user/andre/tcp_workqueue/sys/xen/evtchn/evtchn.c
==============================================================================
--- user/andre/tcp_workqueue/sys/xen/evtchn/evtchn.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/xen/evtchn/evtchn.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -44,14 +44,7 @@ static inline unsigned long __ffs(unsign
         return word;
 }
 
-/*
- * irq_mapping_update_lock: in order to allow an interrupt to occur in a critical
- *	section, to set pcpu->ipending (etc...) properly, we
- *	must be able to get the icu lock, so it can't be
- *	under witness.
- */
-static MTX_DEF_SYSINIT(irq_mapping_update_lock, "xp", MTX_SPIN);
-
+static struct mtx irq_mapping_update_lock;
 static struct xenpic *xp;
 struct xenpic_intsrc {
 	struct intsrc     xp_intsrc;
@@ -1137,4 +1130,11 @@ evtchn_init(void *dummy __unused)
 }
 
 SYSINIT(evtchn_init, SI_SUB_INTR, SI_ORDER_MIDDLE, evtchn_init, NULL);
+    /*
+     * irq_mapping_update_lock: in order to allow an interrupt to occur in a critical
+     * 	        section, to set pcpu->ipending (etc...) properly, we
+     *	        must be able to get the icu lock, so it can't be
+     *	        under witness.
+     */
 
+MTX_SYSINIT(irq_mapping_update_lock, &irq_mapping_update_lock, "xp", MTX_SPIN);

Modified: user/andre/tcp_workqueue/sys/xen/gnttab.c
==============================================================================
--- user/andre/tcp_workqueue/sys/xen/gnttab.c	Fri Oct 26 16:40:03 2012	(r242146)
+++ user/andre/tcp_workqueue/sys/xen/gnttab.c	Fri Oct 26 16:47:52 2012	(r242147)
@@ -49,8 +49,7 @@ static unsigned int nr_grant_frames;
 static unsigned int boot_max_nr_grant_frames;
 static int gnttab_free_count;
 static grant_ref_t gnttab_free_head;
-
-static MTX_DEF_SYSINIT(gnttab_list_lock, "GNTTAB LOCK", MTX_DEF); 
+static struct mtx gnttab_list_lock;
 
 static grant_entry_t *shared;
 
@@ -707,3 +706,4 @@ ini_nomem:
 
 }
 
+MTX_SYSINIT(gnttab, &gnttab_list_lock, "GNTTAB LOCK", MTX_DEF); 


More information about the svn-src-user mailing list