linux-stable/drivers/xen
Boris Ostrovsky 8b1e868f66 swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses
xen_alloc_coherent_pages might return pages for which virt_to_phys and
virt_to_page don't work, e.g. ioremap'ed pages.

So in xen_swiotlb_free_coherent we can't assume that virt_to_page works.
Instead add a is_vmalloc_addr check and use vmalloc_to_page on vmalloc
virt addresses.

This patch fixes the following crash at boot on RPi4 (the underlying
issue is not RPi4 specific):
https://marc.info/?l=xen-devel&m=158862573216800

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Tested-by: Corey Minyard <cminyard@mvista.com>
Tested-by: Roman Shaposhnik <roman@zededa.com>
Link: https://lore.kernel.org/r/20200710223427.6897-1-sstabellini@kernel.org
Signed-off-by: Juergen Gross <jgross@suse.com>
2020-08-04 07:42:09 +02:00
..
events x86/entry: Convert XEN hypercall vector to IDTENTRY_SYSVEC 2020-06-11 15:15:15 +02:00
xen-pciback xen/pci: Get rid of verbose_request and use dev_dbg() instead 2020-05-29 10:44:59 -05:00
xenbus xen: branch for v5.8-rc5 2020-07-11 11:16:46 -07:00
xenfs Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2019-07-19 10:42:02 -07:00
acpi.c
arm-device.c
balloon.c Revert "xen/balloon: Fix crash when ballooning on x86 32 bit PAE" 2020-08-03 08:16:18 +02:00
biomerge.c
cpu_hotplug.c xen/cpuhotplug: Fix initial CPU offlining for PV(H) guests 2020-05-21 13:01:45 -05:00
dbgp.c
efi.c xen/efi: have a common runtime setup function 2019-10-02 10:31:07 -04:00
evtchn.c xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
features.c
gntalloc.c
gntdev-common.h xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
gntdev-dmabuf.c drm-misc-next for v5.6: 2019-12-17 13:57:54 +01:00
gntdev-dmabuf.h
gntdev.c mmap locking API: convert mmap_sem comments 2020-06-09 09:39:14 -07:00
grant-table.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
Kconfig xen: enable BALLOON_MEMORY_HOTPLUG by default 2020-05-21 18:11:03 -05:00
Makefile x86/entry: Switch XEN/PV hypercall entry to IDTENTRY 2020-06-11 15:15:08 +02:00
manage.c
mcelog.c xen/mcelog: add PPIN to record when available 2019-11-14 10:01:57 +01:00
mem-reservation.c
pci.c xen/pci: reserve MCFG areas earlier 2019-09-12 15:02:55 -04:00
pcpu.c
platform-pci.c xen-platform: Constify dev_pm_ops 2020-05-21 13:00:39 -05:00
privcmd-buf.c
privcmd.c xen/privcmd: Convert get_user_pages*() to pin_user_pages*() 2020-08-03 07:43:16 +02:00
privcmd.h
pvcalls-back.c xen/pvcalls: Make pvcalls_back_global static 2020-05-21 13:06:42 -05:00
pvcalls-front.c xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
pvcalls-front.h
swiotlb-xen.c swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses 2020-08-04 07:42:09 +02:00
sys-hypervisor.c
time.c READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses 2020-04-16 12:28:07 +01:00
xen-acpi-cpuhotplug.c
xen-acpi-memhotplug.c
xen-acpi-pad.c
xen-acpi-processor.c
xen-balloon.c xen/balloon: Support xend-based toolstack take two 2020-01-22 08:58:16 -06:00
xen-front-pgdir-shbuf.c
xen-scsiback.c xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
xen-stub.c
xlate_mmu.c xen: avoid link error on ARM 2019-07-31 08:14:12 +02:00