MPSAFE - system calls set_tls_area() and get_tls_area() are MPSAFE
authorMatthew Dillon <dillon@apollo.backplane.com>
Tue, 14 Jul 2009 05:26:53 +0000 (22:26 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Tue, 14 Jul 2009 05:26:53 +0000 (22:26 -0700)
sys/kern/syscalls.master
sys/platform/pc32/i386/sys_machdep.c
sys/platform/pc32/i386/tls.c
sys/platform/pc64/amd64/tls.c
sys/platform/vkernel/i386/tls.c

index 4adfcb4..747ab01 100644 (file)
 469    STD     BSD     { int umtx_sleep(volatile const int *ptr, int value, int timeout); }
 470    STD     BSD     { int umtx_wakeup(volatile const int *ptr, int count); }
 471    STD     BSD     { int jail_attach(int jid); }
-472    STD     BSD     { int set_tls_area(int which, struct tls_info *info, size_t infosize); }
-473    STD     BSD     { int get_tls_area(int which, struct tls_info *info, size_t infosize); }
+472    MPSAFE  STD     BSD     { int set_tls_area(int which, struct tls_info *info, size_t infosize); }
+473    MPSAFE  STD     BSD     { int get_tls_area(int which, struct tls_info *info, size_t infosize); }
 474    MPSAFE  STD     BSD     { int closefrom(int fd); }
 475    STD     POSIX   { int stat(const char *path, struct stat *ub); }
 476    STD     POSIX   { int fstat(int fd, struct stat *sb); }
index a179d70..62f7ba6 100644 (file)
@@ -242,6 +242,8 @@ done:
  *
  * Must be called from a critical section (else an interrupt thread preemption
  * may cause %gs to fault).  Normally called from the low level swtch.s code.
+ *
+ * MPSAFE
  */
 void
 set_user_TLS(void)
index e29b7a5..9451a8b 100644 (file)
@@ -63,6 +63,8 @@
  * TLS descriptor or -1 on error.
  *
  * (int which, struct tls_info *info, size_t infosize)
+ *
+ * MPSAFE
  */
 int
 sys_set_tls_area(struct set_tls_area_args *uap)
@@ -155,6 +157,8 @@ sys_set_tls_area(struct set_tls_area_args *uap)
  * TLS descriptor or -1 on error.
  *
  * (int which, struct tls_info *info, size_t infosize)
+ *
+ * MPSAFE
  */
 int
 sys_get_tls_area(struct get_tls_area_args *uap)
index e7bdc46..a0d4431 100644 (file)
@@ -115,6 +115,8 @@ sys_set_tls_area(struct set_tls_area_args *uap)
  * TLS descriptor or -1 on error.
  *
  * (int which, struct tls_info *info, size_t infosize)
+ *
+ * MPSAFE
  */
 int
 sys_get_tls_area(struct get_tls_area_args *uap)
@@ -140,6 +142,8 @@ sys_get_tls_area(struct get_tls_area_args *uap)
 
 /*
  * Install the TLS
+ *
+ * MPSAFE
  */
 void
 set_user_TLS(void)
index 332a9c6..13195f8 100644 (file)
@@ -62,6 +62,8 @@
  * TLS descriptor or -1 on error.
  *
  * (struct tls_info *info, int infosize, int which)
+ *
+ * MPSAFE
  */
 int
 sys_set_tls_area(struct set_tls_area_args *uap)
@@ -154,6 +156,8 @@ sys_set_tls_area(struct set_tls_area_args *uap)
  * TLS descriptor or -1 on error.
  *
  * (struct tls_info *info, int infosize, int which)
+ *
+ * MPSAFE
  */
 int
 sys_get_tls_area(struct get_tls_area_args *uap)