Message ID | 20211102225248.52999-2-imp@bsdimp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | bsd-user: arm (32-bit) support | expand |
On 11/2/21 6:52 PM, Warner Losh wrote: > Until the signal support is merged from the bsd-user fork, we need stubs > for cpu_loop_exit_sigsegv and cpu_loop_exit_sigbus to link. These call > abort after logging a message. Since singals aren't supported here > yet, this is sufficient. > > Signed-off-by: Warner Losh <imp@bsdimp.com> > --- > bsd-user/signal.c | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/bsd-user/signal.c b/bsd-user/signal.c > index 0c1093deb1..05b277c642 100644 > --- a/bsd-user/signal.c > +++ b/bsd-user/signal.c > @@ -20,6 +20,11 @@ > #include "qemu/osdep.h" > #include "qemu.h" > > +/* > + * Stubbed out routines until we merge signal support from bsd-user > + * fork. > + */ > + > /* > * Queue a signal so that it will be send to the virtual CPU as soon as > * possible. > @@ -36,3 +41,19 @@ void signal_init(void) > void process_pending_signals(CPUArchState *cpu_env) > { > } > + > +void cpu_loop_exit_sigsegv(CPUState *cpu, target_ulong addr, > + MMUAccessType access_type, bool maperr, uintptr_t ra) > +{ > + qemu_log_mask(LOG_UNIMP, "No signal support for SIGSEGV\n"); > + /* unreachable */ > + abort(); > +} > + > +void cpu_loop_exit_sigbus(CPUState *cpu, target_ulong addr, > + MMUAccessType access_type, uintptr_t ra) > +{ > + qemu_log_mask(LOG_UNIMP, "No signal support for SIGBUS\n"); > + /* unreachable */ > + abort(); > +} > I'm going to apply this directly to master as a build fix. Sorry about that. r~
On Tue, Nov 2, 2021 at 5:37 PM Richard Henderson < richard.henderson@linaro.org> wrote: > On 11/2/21 6:52 PM, Warner Losh wrote: > > Until the signal support is merged from the bsd-user fork, we need stubs > > for cpu_loop_exit_sigsegv and cpu_loop_exit_sigbus to link. These call > > abort after logging a message. Since singals aren't supported here > > yet, this is sufficient. > > > > Signed-off-by: Warner Losh <imp@bsdimp.com> > > --- > > bsd-user/signal.c | 21 +++++++++++++++++++++ > > 1 file changed, 21 insertions(+) > > > > diff --git a/bsd-user/signal.c b/bsd-user/signal.c > > index 0c1093deb1..05b277c642 100644 > > --- a/bsd-user/signal.c > > +++ b/bsd-user/signal.c > > @@ -20,6 +20,11 @@ > > #include "qemu/osdep.h" > > #include "qemu.h" > > > > +/* > > + * Stubbed out routines until we merge signal support from bsd-user > > + * fork. > > + */ > > + > > /* > > * Queue a signal so that it will be send to the virtual CPU as soon as > > * possible. > > @@ -36,3 +41,19 @@ void signal_init(void) > > void process_pending_signals(CPUArchState *cpu_env) > > { > > } > > + > > +void cpu_loop_exit_sigsegv(CPUState *cpu, target_ulong addr, > > + MMUAccessType access_type, bool maperr, > uintptr_t ra) > > +{ > > + qemu_log_mask(LOG_UNIMP, "No signal support for SIGSEGV\n"); > > + /* unreachable */ > > + abort(); > > +} > > + > > +void cpu_loop_exit_sigbus(CPUState *cpu, target_ulong addr, > > + MMUAccessType access_type, uintptr_t ra) > > +{ > > + qemu_log_mask(LOG_UNIMP, "No signal support for SIGBUS\n"); > > + /* unreachable */ > > + abort(); > > +} > > > > I'm going to apply this directly to master as a build fix. > Sorry about that. > Works for me. I just cherry-picked and the build works with it. Warner
diff --git a/bsd-user/signal.c b/bsd-user/signal.c index 0c1093deb1..05b277c642 100644 --- a/bsd-user/signal.c +++ b/bsd-user/signal.c @@ -20,6 +20,11 @@ #include "qemu/osdep.h" #include "qemu.h" +/* + * Stubbed out routines until we merge signal support from bsd-user + * fork. + */ + /* * Queue a signal so that it will be send to the virtual CPU as soon as * possible. @@ -36,3 +41,19 @@ void signal_init(void) void process_pending_signals(CPUArchState *cpu_env) { } + +void cpu_loop_exit_sigsegv(CPUState *cpu, target_ulong addr, + MMUAccessType access_type, bool maperr, uintptr_t ra) +{ + qemu_log_mask(LOG_UNIMP, "No signal support for SIGSEGV\n"); + /* unreachable */ + abort(); +} + +void cpu_loop_exit_sigbus(CPUState *cpu, target_ulong addr, + MMUAccessType access_type, uintptr_t ra) +{ + qemu_log_mask(LOG_UNIMP, "No signal support for SIGBUS\n"); + /* unreachable */ + abort(); +}
Until the signal support is merged from the bsd-user fork, we need stubs for cpu_loop_exit_sigsegv and cpu_loop_exit_sigbus to link. These call abort after logging a message. Since singals aren't supported here yet, this is sufficient. Signed-off-by: Warner Losh <imp@bsdimp.com> --- bsd-user/signal.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)