summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-07-05 14:28:03 +0100
committerDoug Goldstein <cardoe@cardoe.com>2012-08-12 18:28:26 -0500
commitb92c900ec0e571dd192c32b54bf65059850b75d9 (patch)
treeff8ee0f1af2bebcfc96cea7a6042dd9b68ce302f
parentqemu-kvm: Fix default machine options (diff)
downloadqemu-kvm-b92c900ec0e571dd192c32b54bf65059850b75d9.tar.gz
qemu-kvm-b92c900ec0e571dd192c32b54bf65059850b75d9.tar.bz2
qemu-kvm-b92c900ec0e571dd192c32b54bf65059850b75d9.zip
Replace 'struct siginfo' with 'siginfo_t'.
glibc 2.16 will remove the undocumented definition of 'struct siginfo' from <bits/siginfo.h>. This change is already present in glibc 2.15.90, so qemu compilation of certain targets (eg. cris-user) breaks. This struct was always typedef'd to be the same as 'siginfo_t' which is what POSIX documents, so use that instead. Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
-rw-r--r--linux-user/signal.c8
-rw-r--r--user-exec.c2
2 files changed, 5 insertions, 5 deletions
diff --git a/linux-user/signal.c b/linux-user/signal.c
index b1e139d6f..8420b4119 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -2849,7 +2849,7 @@ static void setup_rt_frame(int sig, struct target_sigaction *ka,
* Arguments to signal handler:
*
* a0 = signal number
- * a1 = pointer to struct siginfo
+ * a1 = pointer to siginfo_t
* a2 = pointer to struct ucontext
*
* $25 and PC point to the signal handler, $29 points to the
@@ -3255,7 +3255,7 @@ struct target_signal_frame {
};
struct rt_signal_frame {
- struct siginfo info;
+ siginfo_t info;
struct ucontext uc;
uint32_t tramp[2];
};
@@ -3474,9 +3474,9 @@ struct target_signal_frame {
};
struct rt_signal_frame {
- struct siginfo *pinfo;
+ siginfo_t *pinfo;
void *puc;
- struct siginfo info;
+ siginfo_t info;
struct ucontext uc;
uint8_t retcode[8]; /* Trampoline code. */
};
diff --git a/user-exec.c b/user-exec.c
index d8c2ad9f2..970810376 100644
--- a/user-exec.c
+++ b/user-exec.c
@@ -588,7 +588,7 @@ int cpu_signal_handler(int host_signum, void *pinfo,
int cpu_signal_handler(int host_signum, void *pinfo,
void *puc)
{
- struct siginfo *info = pinfo;
+ siginfo_t *info = pinfo;
struct ucontext *uc = puc;
unsigned long pc = uc->uc_mcontext.sc_iaoq[0];
uint32_t insn = *(uint32_t *)pc;