Re: [kvm-unit-tests PATCH v2] s390x: Catch all exceptions

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

 



On 28.06.2018 10:11, David Hildenbrand wrote:
> On 27.06.2018 16:31, Janosch Frank wrote:
>> Right now we only catch the exceptions that we really expect to
>> receive. Let's at least catch all of them and abort if any of the
>> unexpected ones fell on our foot.
>>
>> Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx>
>> ---
>>
>> I hope I understood you correctly, as assembly is not my strongest
>> language skill.
>>
>> ---
>>  lib/s390x/interrupt.c | 24 +++++++++++++++++++++
>>  s390x/cstart64.S      | 58 ++++++++++++++++++++++++++++++++++++++++++++++++---
>>  2 files changed, 79 insertions(+), 3 deletions(-)
>>
>> diff --git a/lib/s390x/interrupt.c b/lib/s390x/interrupt.c
>> index bc44e3a..848d5f2 100644
>> --- a/lib/s390x/interrupt.c
>> +++ b/lib/s390x/interrupt.c
>> @@ -104,3 +104,27 @@ void handle_pgm_int(void)
>>  	pgm_int_expected = false;
>>  	fixup_pgm_int();
>>  }
>> +
>> +void handle_ext_int(void)
>> +{
>> +	report_abort("Unexpected external call interrupt: at %#lx",
>> +		     lc->ext_old_psw.addr);
>> +}
>> +
>> +void handle_mcck_int(void)
>> +{
>> +	report_abort("Unexpected machine check interrupt: at %#lx",
>> +		     lc->mcck_old_psw.addr);
>> +}
>> +
>> +void handle_io_int(void)
>> +{
>> +	report_abort("Unexpected io interrupt: at %#lx",
>> +		     lc->io_old_psw.addr);
>> +}
>> +
>> +void handle_svc_int(void)
>> +{
>> +	report_abort("Unexpected service call interrupt: at %#lx",
>> +		     lc->svc_old_psw.addr);
>> +}
> 
> We need prototypes for these in lib/s390x/asm/interrupt.h if I'm not wrong.

We can also add them later, when we finally really turn on the
-Wmissing-prototypes compiler flag.

I think the patch is good to go already. Paolo, Radim, could you please
pick up this patch directly? I don't have any other patches pending ...
or do you still want me to rather send a PULL request for it?

 Thomas



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux