linux/drivers/vfio/pci
Yishai Hadas c9c4c070e0 vfio/mlx5: Fix UBSAN note
Prevent calling roundup_pow_of_two() with value of 0 as it causes the
below UBSAN note.

Move this code and its few extra related lines to be called only when
it's really applicable.

UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13
shift exponent 64 is too large for 64-bit type 'long unsigned int'
CPU: 15 PID: 1639 Comm: live_migration Not tainted 6.1.0-rc4 #1116
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009),
BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014
Call Trace:
 <TASK>
dump_stack_lvl+0x45/0x59
ubsan_epilogue+0x5/0x36
 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xef
? lock_is_held_type+0x98/0x110
? rcu_read_lock_sched_held+0x3f/0x70
mlx5vf_create_rc_qp.cold+0xe4/0xf2 [mlx5_vfio_pci]
mlx5vf_start_page_tracker+0x769/0xcd0 [mlx5_vfio_pci]
 vfio_device_fops_unl_ioctl+0x63f/0x700 [vfio]
__x64_sys_ioctl+0x433/0x9a0
do_syscall_64+0x3d/0x90
entry_SYSCALL_64_after_hwframe+0x63/0xcd
 </TASK>

Fixes: 79c3cf2799 ("vfio/mlx5: Init QP based resources for dirty tracking")
Signed-off-by: Yishai Hadas <yishaih@nvidia.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20230108154427.32609-2-yishaih@nvidia.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2023-01-23 11:26:29 -07:00
..
hisilicon VFIO updates for v6.2-rc1 2022-12-15 13:12:15 -08:00
mlx5 vfio/mlx5: Fix UBSAN note 2023-01-23 11:26:29 -07:00
Kconfig vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM 2022-07-11 09:54:25 +02:00
Makefile vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM 2022-07-11 09:54:25 +02:00
trace.h
vfio_pci.c vfio-iommufd: Support iommufd for physical VFIO devices 2022-12-02 11:52:03 -04:00
vfio_pci_config.c vfio/pci: Simplify the is_intx/msi/msix/etc defines 2022-09-01 15:29:11 -06:00
vfio_pci_core.c VFIO updates for v6.2-rc1 2022-12-15 13:12:15 -08:00
vfio_pci_igd.c vfio/pci: Rename vfio_pci_register_dev_region() 2022-09-01 15:29:11 -06:00
vfio_pci_intrs.c vfio/pci: Mask INTx during runtime suspend 2022-09-01 15:29:11 -06:00
vfio_pci_priv.h vfio/pci: Mask INTx during runtime suspend 2022-09-01 15:29:11 -06:00
vfio_pci_rdwr.c vfio-pci: Fix vfio_pci_ioeventfd() to return int 2022-09-01 15:29:11 -06:00
vfio_pci_zdev.c Merge remote-tracking branch 'mlx5/mlx5-vfio' into v6.1/vfio/next 2022-09-08 10:44:34 -06:00