Re: [PATCH] KVM: x86: fix deadlock for KVM_XEN_EVTCHN_RESET
From: Paolo Bonzini
Date: Wed Dec 28 2022 - 08:22:49 EST
On 12/28/22 12:55, Woodhouse, David wrote:
IIRC the send_port and type aren't used from hcall_send so we could
stick those in a union with a 'next' pointer and use it to build a list
instead of having to allocate the array (pathological worst case 32KiB).
Yeah I thought about using a list. The union is doable as you say, but
I wasn't sure if things were going to change in kvm_xen_evtchn_send later.
And the worst case is order 3, which is within PAGE_ALLOC_COSTLY_ORDER,
so I decided to go with the array which only consumes memory on reset
rather than always; it's much more likely that the array will be smaller
than a page.
Paolo
Or if the union is a bit icky, we could just add the 'next' pointer
unconditionally.