* [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).