Re: [PATCH] xen/x86: fix PV trap handling on secondary processors

From: Jan Beulich
Date: Fri Sep 17 2021 - 02:50:16 EST


On 17.09.2021 08:47, Juergen Gross wrote:
> On 17.09.21 08:40, Jan Beulich wrote:
>> On 17.09.2021 03:34, Boris Ostrovsky wrote:
>>>
>>> On 9/16/21 11:04 AM, Jan Beulich wrote:
>>>> {
>>>> const struct desc_ptr *desc = this_cpu_ptr(&idt_desc);
>>>> + unsigned i, count = (desc->size + 1) / sizeof(gate_desc);
>>>>
>>>> - xen_convert_trap_info(desc, traps);
>>>
>>>
>>> Can you instead add a boolean parameter to xen_convert_trap_info() to indicate whether to skip empty entries? That will avoid (almost) duplicating the code.
>>
>> I can, sure, but I specifically didn't, as the result is going to be less
>> readable imo. Instead I was considering to fold xen_convert_trap_info()
>> into its only remaining caller. Yet if you're convinced adding the
>> parameter is the way to do, I will go that route. But please confirm.
>
> I don't think the result will be very hard to read. All you need is the
> new parameter and extending the if statement in xen_convert_trap_info()
> to increment out always if no entry is to be skipped.

And skip writing the sentinel.

Jan