acrn-kernel/arch/x86/xen
Juergen Gross 251e90e7e3 xen: don't require virtio with grants for non-PV guests
Commit fa1f57421e ("xen/virtio: Enable restricted memory access using
Xen grant mappings") introduced a new requirement for using virtio
devices: the backend now needs to support the VIRTIO_F_ACCESS_PLATFORM
feature.

This is an undue requirement for non-PV guests, as those can be operated
with existing backends without any problem, as long as those backends
are running in dom0.

Per default allow virtio devices without grant support for non-PV
guests.

On Arm require VIRTIO_F_ACCESS_PLATFORM for devices having been listed
in the device tree to use grants.

Add a new config item to always force use of grants for virtio.

Fixes: fa1f57421e ("xen/virtio: Enable restricted memory access using Xen grant mappings")
Reported-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Tested-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> # Arm64 guest using Xen
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Link: https://lore.kernel.org/r/20220622063838.8854-4-jgross@suse.com
Signed-off-by: Juergen Gross <jgross@suse.com>
2022-08-01 07:43:03 +02:00
..
Kconfig perf: Force architectures to opt-in to guest callbacks 2021-11-17 14:49:08 +01:00
Makefile x86: remove the IOMMU table infrastructure 2022-04-18 07:21:10 +02:00
apic.c arch:x86:xen: Remove unnecessary assignment in xen_apic_read() 2022-03-15 20:35:35 -05:00
debugfs.c
debugfs.h
efi.c
enlighten.c x86/xen: switch initial pvops IRQ functions to dummy ones 2021-11-02 08:03:43 -05:00
enlighten_hvm.c xen: don't require virtio with grants for non-PV guests 2022-08-01 07:43:03 +02:00
enlighten_pv.c xen: don't require virtio with grants for non-PV guests 2022-08-01 07:43:03 +02:00
enlighten_pvh.c xen/x86: adjust data placement 2021-10-05 08:36:19 +02:00
grant-table.c
irq.c x86/xen: switch initial pvops IRQ functions to dummy ones 2021-11-02 08:03:43 -05:00
mmu.c
mmu.h
mmu_hvm.c proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks 2021-11-09 10:02:48 -08:00
mmu_pv.c swiotlb-xen: fix DMA_ATTR_NO_KERNEL_MAPPING on arm 2022-05-11 19:48:32 +02:00
multicalls.c
multicalls.h
p2m.c memblock: use memblock_free for freeing virtual pointers 2021-11-06 13:30:41 -07:00
platform-pci-unplug.c x86: xen: platform-pci-unplug: use pr_err() and pr_warn() instead of raw printk() 2021-08-30 12:09:54 +02:00
pmu.c xen: fix is_xen_pmu() 2022-03-25 14:22:53 -05:00
pmu.h xen: fix is_xen_pmu() 2022-03-25 14:22:53 -05:00
setup.c x86/xen: Rename SYS* entry points 2022-06-27 10:33:59 +02:00
smp.c x86/xen: remove xen_have_vcpu_info_placement flag 2021-11-02 07:45:44 -05:00
smp.h
smp_hvm.c xen: delay xen_hvm_init_time_ops() if kdump is boot on vcpu>=32 2022-03-10 09:27:55 -06:00
smp_pv.c x86/xen: Allow to retry if cpu_initialize_context() failed. 2022-04-12 14:13:01 +02:00
spinlock.c
suspend.c
suspend_hvm.c
suspend_pv.c
time.c xen: delay xen_hvm_init_time_ops() if kdump is boot on vcpu>=32 2022-03-10 09:27:55 -06:00
trace.c
vga.c xen/x86: obtain full video frame buffer address for Dom0 also under EFI 2022-02-10 11:07:23 +01:00
xen-asm.S objtool: Add entry UNRET validation 2022-06-27 10:34:00 +02:00
xen-head.S Just when you thought that all the speculation bugs were addressed and 2022-07-11 18:15:25 -07:00
xen-ops.h x86/xen: Rename SYS* entry points 2022-06-27 10:33:59 +02:00