aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2000-10-20 22:44:06 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2000-10-20 22:44:06 +0000
commitbd4635599d9e56eb71d6d6ce002e141b6e1f3ec8 (patch)
treefaf45331154d04620036d28e1d082d3686b71a70 /sys
parent32a48fa01c0fffad3b6a71cf85748a24c6349c03 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/alpha/include/mutex.h3
-rw-r--r--sys/amd64/include/mutex.h2
-rw-r--r--sys/i386/include/mutex.h2
-rw-r--r--sys/ia64/include/mutex.h2
-rw-r--r--sys/powerpc/include/mutex.h3
5 files changed, 12 insertions, 0 deletions
diff --git a/sys/alpha/include/mutex.h b/sys/alpha/include/mutex.h
index 75c64cf3f85a..72d3b7b73401 100644
--- a/sys/alpha/include/mutex.h
+++ b/sys/alpha/include/mutex.h
@@ -60,6 +60,9 @@ extern char STR_SIEN[];
#define ASS_SIEN(mpp) MPASS2((mpp)->mtx_saveintr \
!= ALPHA_PSL_IPL_HIGH, STR_SIEN)
+#define mtx_legal2block() \
+ ((alpha_pal_rdps() & ALPHA_PSL_IPL_MASK) == ALPHA_PSL_IPL_HIGH)
+
/*
* Assembly macros (for internal use only)
*--------------------------------------------------------------------------
diff --git a/sys/amd64/include/mutex.h b/sys/amd64/include/mutex.h
index 1a8a7b65e7f6..0c4a9eb26ad6 100644
--- a/sys/amd64/include/mutex.h
+++ b/sys/amd64/include/mutex.h
@@ -60,6 +60,8 @@ extern char STR_SIEN[];
#define ASS_IDIS MPASS2((read_eflags() & PSL_I) == 0, STR_IDIS)
#define ASS_SIEN(mpp) MPASS2((mpp)->mtx_saveintr & PSL_I, STR_SIEN)
+#define mtx_legal2block() (read_eflags() & PSL_I)
+
/*
* Assembly macros (for internal use only)
*------------------------------------------------------------------------------
diff --git a/sys/i386/include/mutex.h b/sys/i386/include/mutex.h
index 1a8a7b65e7f6..0c4a9eb26ad6 100644
--- a/sys/i386/include/mutex.h
+++ b/sys/i386/include/mutex.h
@@ -60,6 +60,8 @@ extern char STR_SIEN[];
#define ASS_IDIS MPASS2((read_eflags() & PSL_I) == 0, STR_IDIS)
#define ASS_SIEN(mpp) MPASS2((mpp)->mtx_saveintr & PSL_I, STR_SIEN)
+#define mtx_legal2block() (read_eflags() & PSL_I)
+
/*
* Assembly macros (for internal use only)
*------------------------------------------------------------------------------
diff --git a/sys/ia64/include/mutex.h b/sys/ia64/include/mutex.h
index fe9c646ba112..e3a4a64a24a9 100644
--- a/sys/ia64/include/mutex.h
+++ b/sys/ia64/include/mutex.h
@@ -59,6 +59,8 @@ extern char STR_SIEN[];
#define ASS_IDIS MPASS2(!(save_intr() & IA64_PSR_I), STR_IDIS)
#define ASS_SIEN(mpp) MPASS2((mpp)->mtx_saveintr & IA64_PSR_I), STR_SIEN)
+#define mtx_legal2block() ((save_intr() & IA64_PSL_I)
+
#endif /* _KERNEL */
#else /* !LOCORE */
diff --git a/sys/powerpc/include/mutex.h b/sys/powerpc/include/mutex.h
index 75c64cf3f85a..72d3b7b73401 100644
--- a/sys/powerpc/include/mutex.h
+++ b/sys/powerpc/include/mutex.h
@@ -60,6 +60,9 @@ extern char STR_SIEN[];
#define ASS_SIEN(mpp) MPASS2((mpp)->mtx_saveintr \
!= ALPHA_PSL_IPL_HIGH, STR_SIEN)
+#define mtx_legal2block() \
+ ((alpha_pal_rdps() & ALPHA_PSL_IPL_MASK) == ALPHA_PSL_IPL_HIGH)
+
/*
* Assembly macros (for internal use only)
*--------------------------------------------------------------------------