qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/4] Enable sigbus_reraise for Solaris


From: Jan Kiszka
Subject: Re: [Qemu-devel] [PATCH 2/4] Enable sigbus_reraise for Solaris
Date: Tue, 27 Mar 2012 13:45:43 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

On 2012-03-27 13:41, Andreas Färber wrote:
> Am 24.03.2012 17:26, schrieb Lee Essen:
>> sigbus_reraise is used by the kvm_wait_io_event function and is
>> needed on both Linux and Solaris. This patch adds CONFIG_SOLARIS
>> to the current CONFIG_LINUX only ifdef.
>>
>> Signed-off-by: Lee Essen <address@hidden>
>> ---
>>  cpus.c |    4 +++-
>>  1 files changed, 3 insertions(+), 1 deletions(-)
>>
>> diff --git a/cpus.c b/cpus.c
>> index 25ba621..6550f22 100644
>> --- a/cpus.c
>> +++ b/cpus.c
>> @@ -455,7 +455,7 @@ static void cpu_signal(int sig)
>>      exit_request = 1;
>>  }
>>  
>> -#ifdef CONFIG_LINUX
>> +#if defined(CONFIG_LINUX) || defined(CONFIG_SOLARIS)
> 
> As asked elsewhere: Linux was the only KVM platform so far. If

Power, s390, soon also ARM? Also, this code is not KVM specific, MCE
forwarding is supposed to work with TCG as well.

That said, some generic HAVE_MCE_FORWARDING or so makes probably sense
when there are more platform supporting it.

Jan

> sigbus_reraise() is only used in some KVM function like you said, can't
> this we guarded with #if defined(CONFIG_KVM) or similar so that we don't
> have to expand this once FreeBSD etc. merge KVM support, i.e. feature-based?
> 
> Andreas
> 
>>  static void sigbus_reraise(void)
>>  {
>>      sigset_t set;
>> @@ -491,7 +491,9 @@ static void qemu_init_sigbus(void)
>>      action.sa_sigaction = (void (*)(int, siginfo_t*, void*))sigbus_handler;
>>      sigaction(SIGBUS, &action, NULL);
>>  
>> +#if defined(CONFIG_LINUX)
>>      prctl(PR_MCE_KILL, PR_MCE_KILL_SET, PR_MCE_KILL_EARLY, 0, 0);
>> +#endif
>>  }
>>  
>>  static void qemu_kvm_eat_signals(CPUArchState *env)
> 

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux



reply via email to

[Prev in Thread] Current Thread [Next in Thread]