This small patch implements tkill(). It parallels the tgkill() implementation
that was added recently.
Stuart
Stuart R. Anderson [EMAIL PROTECTED]
Network & Software Engineering http://www.netsweng.com/
1024D/37A79149: 0791 D3B8 9A4C 2CDC A31F
BD03 0A62 E534 37A7 9149
Index: qemu/linux-user/syscall.c
===================================================================
--- qemu.orig/linux-user/syscall.c 2007-07-06 09:50:23.000000000 -0400
+++ qemu/linux-user/syscall.c 2007-07-06 10:00:55.000000000 -0400
@@ -154,6 +154,7 @@
#define __NR_sys_rt_sigqueueinfo __NR_rt_sigqueueinfo
#define __NR_sys_syslog __NR_syslog
#define __NR_sys_tgkill __NR_tgkill
+#define __NR_sys_tkill __NR_tkill
#if defined(__alpha__) || defined (__ia64__) || defined(__x86_64__)
#define __NR__llseek __NR_lseek
@@ -174,7 +175,12 @@
loff_t *, res, uint, wh);
_syscall3(int,sys_rt_sigqueueinfo,int,pid,int,sig,siginfo_t *,uinfo)
_syscall3(int,sys_syslog,int,type,char*,bufp,int,len)
+#ifdef TARGET_NR_tgkill
_syscall3(int,sys_tgkill,int,tgid,int,pid,int,sig)
+#endif
+#ifdef TARGET_NR_tkill
+_syscall2(int,sys_tkill,int,tid,int,sig)
+#endif
#ifdef __NR_exit_group
_syscall1(int,exit_group,int,error_code)
#endif
@@ -4774,6 +4780,12 @@
break;
#endif
+#ifdef TARGET_NR_tkill
+ case TARGET_NR_tkill:
+ ret = get_errno(sys_tkill((int)arg1, (int)arg2));
+ break;
+#endif
+
#ifdef TARGET_NR_tgkill
case TARGET_NR_tgkill:
ret = get_errno(sys_tgkill((int)arg1, (int)arg2, (int)arg3));