Re: [patch] threading fix, tid-2.5.47-A3

From: Ingo Molnar (mingo@elte.hu)
Date: Sun Nov 17 2002 - 15:13:00 EST


this is the first patch, the introduction of the sys_set_thread_address()
syscall. It returns the PID so that the newly initialized 'initial thread'
does not have to do an additional sys_gettid() call.

        Ingo

--- linux/arch/i386/kernel/entry.S.orig 2002-11-17 20:53:52.000000000 +0100
+++ linux/arch/i386/kernel/entry.S 2002-11-17 20:54:55.000000000 +0100
@@ -767,6 +767,7 @@
         .long sys_epoll_ctl /* 255 */
         .long sys_epoll_wait
          .long sys_remap_file_pages
+ .long sys_set_tid_address
 
 
         .rept NR_syscalls-(.-sys_call_table)/4
--- linux/kernel/fork.c.orig 2002-11-17 20:53:52.000000000 +0100
+++ linux/kernel/fork.c 2002-11-17 20:54:55.000000000 +0100
@@ -676,6 +676,13 @@
         p->flags = new_flags;
 }
 
+asmlinkage int sys_set_tid_address(int *user_tid)
+{
+ current->user_tid = user_tid;
+
+ return current->pid;
+}
+
 /*
  * This creates a new process as a copy of the old one,
  * but does not actually start it yet.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Nov 23 2002 - 22:00:19 EST