[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen emulation
From: |
David Woodhouse |
Subject: |
Re: [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen emulation |
Date: |
Tue, 24 Oct 2023 13:58:32 +0100 |
User-agent: |
Evolution 3.44.4-0ubuntu2 |
On Tue, 2023-10-24 at 13:16 +0100, Paul Durrant wrote:
> On 16/10/2023 16:18, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >
> > The per-vCPU upcall vector support had two problems. Firstly it was
> > using the wrong hypercall argument and would always return -EFAULT.
> > And secondly it was using the wrong ioctl() to pass the vector to
> > the kernel and thus the *kernel* would always return -EINVAL.
> >
> > Linux doesn't (yet) use this mode so it went without decent testing
> > for a while.
> >
> > Fixes: 105b47fdf2d0 ("i386/xen: implement
> > HVMOP_set_evtchn_upcall_vector")
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > target/i386/kvm/xen-emu.c | 5 ++---
> > 1 file changed, 2 insertions(+), 3 deletions(-)
>
> Reviewed-by: Paul Durrant <paul@xen.org>
FWIW this patch gained a third "brown paper bag" fix this morning, when
I finally worked it out:
@@ -440,7 +440,8 @@ void kvm_xen_inject_vcpu_callback_vector(uint32_t
vcpu_id, int type)
* deliver it as an MSI.
*/
MSIMessage msg = {
- .address = APIC_DEFAULT_ADDRESS | X86_CPU(cs)->apic_id,
+ .address = APIC_DEFAULT_ADDRESS |
+ (X86_CPU(cs)->apic_id << MSI_ADDR_DEST_ID_SHIFT),
.data = vector | (1UL << MSI_DATA_LEVEL_SHIFT),
};
kvm_irqchip_send_msi(kvm_state, msg);
smime.p7s
Description: S/MIME cryptographic signature
- [PATCH 02/12] hw/xen: select kernel mode for per-vCPU event channel upcall vector, (continued)
- [PATCH 02/12] hw/xen: select kernel mode for per-vCPU event channel upcall vector, David Woodhouse, 2023/10/16
- [PATCH 03/12] include: update Xen public headers to Xen 4.17.2 release, David Woodhouse, 2023/10/16
- [PATCH 05/12] hw/xen: populate store frontend nodes with XenStore PFN/port, David Woodhouse, 2023/10/16
- [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen emulation, David Woodhouse, 2023/10/16
- [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, David Woodhouse, 2023/10/16
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, Paul Durrant, 2023/10/24
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, David Woodhouse, 2023/10/24
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, Paul Durrant, 2023/10/24
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, David Woodhouse, 2023/10/24
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, Paul Durrant, 2023/10/24
- Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass, David Woodhouse, 2023/10/25
[PATCH 09/12] hw/xen: prevent duplicate device registrations, David Woodhouse, 2023/10/16