qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/3] sparc-linux-user improvments
@ 2011-10-25 17:34 Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 1/3] sparc-linux-user: Handle SIGILL Richard Henderson
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Richard Henderson @ 2011-10-25 17:34 UTC (permalink / raw)
  To: qemu-devel; +Cc: blauwirbel, riku.voipio

These are three patches split out from my recent Sparc VIS 
emulation series that are totally independent of target-sparc/.


r~


Richard Henderson (3):
  sparc-linux-user: Handle SIGILL.
  sparc-linux-user: Fixup sending SIGSEGV
  sparc-linux-user: Add some missing syscall numbers

 linux-user/main.c             |   13 +++++++++++--
 linux-user/sparc/syscall_nr.h |    3 +++
 2 files changed, 14 insertions(+), 2 deletions(-)

-- 
1.7.6.4

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 1/3] sparc-linux-user: Handle SIGILL.
  2011-10-25 17:34 [Qemu-devel] [PATCH 0/3] sparc-linux-user improvments Richard Henderson
@ 2011-10-25 17:34 ` Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 2/3] sparc-linux-user: Fixup sending SIGSEGV Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 3/3] sparc-linux-user: Add some missing syscall numbers Richard Henderson
  2 siblings, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2011-10-25 17:34 UTC (permalink / raw)
  To: qemu-devel; +Cc: blauwirbel, riku.voipio

Signed-off-by: Richard Henderson <rth@twiddle.net>
---
 linux-user/main.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/linux-user/main.c b/linux-user/main.c
index e7dad54..2bc10ed 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -1191,6 +1191,15 @@ void cpu_loop (CPUSPARCState *env)
         case EXCP_INTERRUPT:
             /* just indicate that signals should be handled asap */
             break;
+        case TT_ILL_INSN:
+            {
+                info.si_signo = TARGET_SIGILL;
+                info.si_errno = 0;
+                info.si_code = TARGET_ILL_ILLOPC;
+                info._sifields._sigfault._addr = env->pc;
+                queue_signal(env, info.si_signo, &info);
+            }
+            break;
         case EXCP_DEBUG:
             {
                 int sig;
-- 
1.7.6.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 2/3] sparc-linux-user: Fixup sending SIGSEGV
  2011-10-25 17:34 [Qemu-devel] [PATCH 0/3] sparc-linux-user improvments Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 1/3] sparc-linux-user: Handle SIGILL Richard Henderson
@ 2011-10-25 17:34 ` Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 3/3] sparc-linux-user: Add some missing syscall numbers Richard Henderson
  2 siblings, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2011-10-25 17:34 UTC (permalink / raw)
  To: qemu-devel; +Cc: blauwirbel, riku.voipio

Signed-off-by: Richard Henderson <rth@twiddle.net>
---
 linux-user/main.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/linux-user/main.c b/linux-user/main.c
index 2bc10ed..c36a8af 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -1148,7 +1148,7 @@ void cpu_loop (CPUSPARCState *env)
         case TT_TFAULT:
         case TT_DFAULT:
             {
-                info.si_signo = SIGSEGV;
+                info.si_signo = TARGET_SIGSEGV;
                 info.si_errno = 0;
                 /* XXX: check env->error_code */
                 info.si_code = TARGET_SEGV_MAPERR;
@@ -1166,7 +1166,7 @@ void cpu_loop (CPUSPARCState *env)
         case TT_TFAULT:
         case TT_DFAULT:
             {
-                info.si_signo = SIGSEGV;
+                info.si_signo = TARGET_SIGSEGV;
                 info.si_errno = 0;
                 /* XXX: check env->error_code */
                 info.si_code = TARGET_SEGV_MAPERR;
-- 
1.7.6.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 3/3] sparc-linux-user: Add some missing syscall numbers
  2011-10-25 17:34 [Qemu-devel] [PATCH 0/3] sparc-linux-user improvments Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 1/3] sparc-linux-user: Handle SIGILL Richard Henderson
  2011-10-25 17:34 ` [Qemu-devel] [PATCH 2/3] sparc-linux-user: Fixup sending SIGSEGV Richard Henderson
@ 2011-10-25 17:34 ` Richard Henderson
  2 siblings, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2011-10-25 17:34 UTC (permalink / raw)
  To: qemu-devel; +Cc: blauwirbel, riku.voipio

Signed-off-by: Richard Henderson <rth@twiddle.net>
---
 linux-user/sparc/syscall_nr.h |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/linux-user/sparc/syscall_nr.h b/linux-user/sparc/syscall_nr.h
index be503f2..f201f9f 100644
--- a/linux-user/sparc/syscall_nr.h
+++ b/linux-user/sparc/syscall_nr.h
@@ -136,6 +136,7 @@
 #define TARGET_NR_utimes             138 /* SunOS Specific                              */
 #define TARGET_NR_stat64		139 /* Linux sparc32 Specific			   */
 #define TARGET_NR_getpeername        141 /* Common                                      */
+#define TARGET_NR_futex              142 /* gethostid under SunOS                       */
 #define TARGET_NR_gettid             143 /* ENOSYS under SunOS                          */
 #define TARGET_NR_getrlimit          144 /* Common                                      */
 #define TARGET_NR_setrlimit          145 /* Common                                      */
@@ -153,6 +154,7 @@
 #define TARGET_NR_getdomainname      162 /* SunOS Specific                              */
 #define TARGET_NR_setdomainname      163 /* Common                                      */
 #define TARGET_NR_quotactl           165 /* Common                                      */
+#define TARGET_NR_set_tid_address    166 /* Linux specific, exportfs under SunOS        */
 #define TARGET_NR_mount              167 /* Common                                      */
 #define TARGET_NR_ustat              168 /* Common                                      */
 #define TARGET_NR_getdents           174 /* Common                                      */
@@ -177,6 +179,7 @@
 #define TARGET_NR_readahead          205 /* Linux Specific                              */
 #define TARGET_NR_socketcall         206 /* Linux Specific                              */
 #define TARGET_NR_syslog             207 /* Linux Specific                              */
+#define TARGET_NR_tgkill             211 /* Linux Specific                              */
 #define TARGET_NR_waitpid            212 /* Linux Specific                              */
 #define TARGET_NR_swapoff            213 /* Linux Specific                              */
 #define TARGET_NR_sysinfo            214 /* Linux Specific                              */
-- 
1.7.6.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-10-25 17:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-25 17:34 [Qemu-devel] [PATCH 0/3] sparc-linux-user improvments Richard Henderson
2011-10-25 17:34 ` [Qemu-devel] [PATCH 1/3] sparc-linux-user: Handle SIGILL Richard Henderson
2011-10-25 17:34 ` [Qemu-devel] [PATCH 2/3] sparc-linux-user: Fixup sending SIGSEGV Richard Henderson
2011-10-25 17:34 ` [Qemu-devel] [PATCH 3/3] sparc-linux-user: Add some missing syscall numbers Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).