Bug Description: A bug in the vfio_pci driver was reported in junction with work on FPGA cards. We were able to reproduce and root-cause the bug using system-tap. The original bug description is below. An understanding of the referenced dfl and opae tools is not required - it is the sequence of IOCTL calls and IRQ vectors that matters: > I’m trying to get an example AFU working that uses 2 IRQs, active at the same > time. I’m hitting what looks to be a dfl_pci driver bug. > > The code tries to allocate two IRQ vectors: 0 and 1. I see opaevfio.c doing the > right thing, picking the MSIX index. Allocating either IRQ 0 or IRQ 1 works fine > and I confirm that the VFIO_DEVICE_SET_IRQS looks reasonable, choosing MSIX and > either start of 0 or 1 and count 1. > > Note that opaevfio.c always passes count 1, so it will make separate calls for > each IRQ vector. > > When I try to allocate both, I see the following: > > * If the VFIO_DEVICE_SET_IRQS ioctl is called first with start 0 and then > start 1 (always count 1), the start 1 (second) ioctl trap returns EINVAL. > * If I set up the vectors in decreasing order, so start 1 followed by start 0, > the program works! > * I ruled out OPAE SDK user space problems by setting up my program to > allocate in increasing order, which would normally fail. I changed only the > ioctl call in user space opaevfio.c, inverting bit 0 of start so that the > driver is called in decreasing index order. Of course this binds the wrong > vectors to the fds, but I don’t care about that for now. This works! From > this, I conclude that it can’t be a user space problem since the difference > between working and failing is solely the order in which IRQ vectors are > bound in ioctl calls. The EINVAL is coming from vfio_msi_set_block() here: https://github.com/torvalds/linux/blob/master/drivers/vfio/pci/vfio_pci_intrs.c#L373 vfio_msi_set_block() is being called from vfio_pci_set_msi_trigger() here on the second IRQ request: https://github.com/torvalds/linux/blob/master/drivers/vfio/pci/vfio_pci_intrs.c#L530 We believe the bug is in vfio_pci_set_msi_trigger(), in the 2nd parameter to the call to vfio_msi_enable() here: https://github.com/torvalds/linux/blob/master/drivers/vfio/pci/vfio_pci_intrs.c#L533 In both the passing and failing cases, the first IRQ request results in a call to vfio_msi_enable() at line 533 and the second IRQ request results in the call to vfio_msi_set_block() at line 530. It is during the first IRQ request that vfio_msi_enable() sets vdev->num_ctx based on the 2nd parameter (nvec). vdev->num_ctx is part of the conditional that results in the EINVAL for the failing case. In the passing case, vdev->num_ctx is 2. In the failing case, it is 1. I am attaching two text files containing trace information from systemtap: one for the failing case and one for the passing case. They contain a lot more information than is needed, but if you search for vfio_pci_set_msi_trigger and vfio_msi_set_block, you will see values for some of the call parameters. - Russ
0 irqtest(103848): -> vfio_pci_match 8 irqtest(103848): -> get_pf_vdev 12 irqtest(103848): <- get_pf_vdev 13 irqtest(103848): <- vfio_pci_match 0 irqtest(103848): -> vfio_pci_open 4 irqtest(103848): -> vfio_pci_set_power_state 7 irqtest(103848): <- vfio_pci_set_power_state 108747 irqtest(103848): -> pci_restore_msi_state 108756 irqtest(103848): <- pci_restore_msi_state 108806 irqtest(103848): -> vfio_config_init 108814 irqtest(103848): -> vfio_fill_vconfig_bytes 108842 irqtest(103848): <- vfio_fill_vconfig_bytes 108853 irqtest(103848): -> vfio_fill_vconfig_bytes 108861 irqtest(103848): <- vfio_fill_vconfig_bytes 108869 irqtest(103848): -> vfio_fill_vconfig_bytes 108891 irqtest(103848): <- vfio_fill_vconfig_bytes 108896 irqtest(103848): -> vfio_fill_vconfig_bytes 108902 irqtest(103848): <- vfio_fill_vconfig_bytes 108906 irqtest(103848): <- vfio_config_init 108914 irqtest(103848): -> vfio_pci_vf_token_user_add 108920 irqtest(103848): -> get_pf_vdev 108925 irqtest(103848): <- get_pf_vdev 108929 irqtest(103848): <- vfio_pci_vf_token_user_add 108934 irqtest(103848): <- vfio_pci_open vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 7 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_read 7 irqtest(103848): -> vfio_pci_rw 13 irqtest(103848): -> vfio_pci_config_rw 21 irqtest(103848): -> vfio_basic_config_read 27 irqtest(103848): -> vfio_default_config_read 34 irqtest(103848): -> vfio_user_config_read 42 irqtest(103848): <- vfio_user_config_read 46 irqtest(103848): <- vfio_default_config_read 51 irqtest(103848): <- vfio_basic_config_read 56 irqtest(103848): <- vfio_pci_config_rw 59 irqtest(103848): <- vfio_pci_rw 63 irqtest(103848): <- vfio_pci_read 0 irqtest(103848): -> vfio_pci_write 18 irqtest(103848): -> vfio_pci_rw 19 irqtest(103848): -> vfio_pci_config_rw 22 irqtest(103848): -> vfio_basic_config_write 27 irqtest(103848): -> vfio_default_config_write 29 irqtest(103848): -> vfio_user_config_read 31 irqtest(103848): <- vfio_user_config_read 33 irqtest(103848): -> vfio_user_config_write 36 irqtest(103848): <- vfio_user_config_write 37 irqtest(103848): <- vfio_default_config_write 39 irqtest(103848): <- vfio_basic_config_write 40 irqtest(103848): <- vfio_pci_config_rw 41 irqtest(103848): <- vfio_pci_rw 43 irqtest(103848): <- vfio_pci_write vfio_pci_ioctl was called: 15211 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 2 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap 32 irqtest(103848): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 2 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap 7 irqtest(103848): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 2 irqtest(103848): -> vfio_pci_get_irq_count 4 irqtest(103848): <- vfio_pci_get_irq_count 5 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 2 irqtest(103848): <- vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 4 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 2 irqtest(103848): <- vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 4 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap_fault 4 irqtest(103848): -> __vfio_pci_memory_enabled 6 irqtest(103848): <- __vfio_pci_memory_enabled 9 irqtest(103848): <- vfio_pci_mmap_fault 0 irqtest(103848): -> vfio_pci_mmap_fault 1 irqtest(103848): -> __vfio_pci_memory_enabled 2 irqtest(103848): <- __vfio_pci_memory_enabled 4 irqtest(103848): <- vfio_pci_mmap_fault 0 irqtest(103848): -> vfio_pci_mmap_close 2 irqtest(103848): <- vfio_pci_mmap_close 0 irqtest(103848): -> vfio_pci_mmap_close 1 irqtest(103848): <- vfio_pci_mmap_close 0 irqtest(103848): -> vfio_pci_release 2 irqtest(103848): -> vfio_pci_vf_token_user_add 3 irqtest(103848): -> get_pf_vdev 5 irqtest(103848): <- get_pf_vdev 6 irqtest(103848): <- vfio_pci_vf_token_user_add 9 irqtest(103848): -> vfio_pci_set_irqs_ioctl 12 irqtest(103848): <- vfio_pci_set_irqs_ioctl 14 irqtest(103848): -> vfio_config_free 16 irqtest(103848): <- vfio_config_free 103469 irqtest(103848): -> pci_restore_msi_state 103478 irqtest(103848): <- pci_restore_msi_state 103490 irqtest(103848): -> vfio_pci_walk_wrapper 103496 irqtest(103848): -> vfio_pci_count_devs 103502 irqtest(103848): <- vfio_pci_count_devs 103506 irqtest(103848): <- vfio_pci_walk_wrapper 103510 irqtest(103848): -> vfio_pci_walk_wrapper 103515 irqtest(103848): -> vfio_pci_count_devs 103519 irqtest(103848): <- vfio_pci_count_devs 103522 irqtest(103848): <- vfio_pci_walk_wrapper 103526 irqtest(103848): -> vfio_pci_walk_wrapper 103530 irqtest(103848): -> vfio_pci_count_devs 103534 irqtest(103848): <- vfio_pci_count_devs 103538 irqtest(103848): <- vfio_pci_walk_wrapper 103541 irqtest(103848): -> vfio_pci_walk_wrapper 103545 irqtest(103848): -> vfio_pci_count_devs 103549 irqtest(103848): <- vfio_pci_count_devs 103553 irqtest(103848): <- vfio_pci_walk_wrapper 103558 irqtest(103848): -> vfio_pci_walk_wrapper 103563 irqtest(103848): -> vfio_pci_get_unused_devs 103570 irqtest(103848): <- vfio_pci_get_unused_devs 103574 irqtest(103848): <- vfio_pci_walk_wrapper 103579 irqtest(103848): -> vfio_pci_set_power_state 103584 irqtest(103848): <- vfio_pci_set_power_state 103588 irqtest(103848): <- vfio_pci_release 0 irqtest(103848): -> vfio_pci_match 2 irqtest(103848): -> get_pf_vdev 4 irqtest(103848): <- get_pf_vdev 5 irqtest(103848): <- vfio_pci_match 0 irqtest(103848): -> vfio_pci_open 1 irqtest(103848): -> vfio_pci_set_power_state 3 irqtest(103848): <- vfio_pci_set_power_state 103601 irqtest(103848): -> pci_restore_msi_state 103611 irqtest(103848): <- pci_restore_msi_state 103658 irqtest(103848): -> vfio_config_init 103665 irqtest(103848): -> vfio_fill_vconfig_bytes 103693 irqtest(103848): <- vfio_fill_vconfig_bytes 103703 irqtest(103848): -> vfio_fill_vconfig_bytes 103711 irqtest(103848): <- vfio_fill_vconfig_bytes 103719 irqtest(103848): -> vfio_fill_vconfig_bytes 103741 irqtest(103848): <- vfio_fill_vconfig_bytes 103746 irqtest(103848): -> vfio_fill_vconfig_bytes 103752 irqtest(103848): <- vfio_fill_vconfig_bytes 103756 irqtest(103848): <- vfio_config_init 103764 irqtest(103848): -> vfio_pci_vf_token_user_add 103769 irqtest(103848): -> get_pf_vdev 103774 irqtest(103848): <- get_pf_vdev 103778 irqtest(103848): <- vfio_pci_vf_token_user_add 103782 irqtest(103848): <- vfio_pci_open vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 6 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_read 5 irqtest(103848): -> vfio_pci_rw 10 irqtest(103848): -> vfio_pci_config_rw 16 irqtest(103848): -> vfio_basic_config_read 21 irqtest(103848): -> vfio_default_config_read 27 irqtest(103848): -> vfio_user_config_read 33 irqtest(103848): <- vfio_user_config_read 37 irqtest(103848): <- vfio_default_config_read 42 irqtest(103848): <- vfio_basic_config_read 47 irqtest(103848): <- vfio_pci_config_rw 50 irqtest(103848): <- vfio_pci_rw 54 irqtest(103848): <- vfio_pci_read 0 irqtest(103848): -> vfio_pci_write 4 irqtest(103848): -> vfio_pci_rw 8 irqtest(103848): -> vfio_pci_config_rw 13 irqtest(103848): -> vfio_basic_config_write 21 irqtest(103848): -> vfio_default_config_write 26 irqtest(103848): -> vfio_user_config_read 31 irqtest(103848): <- vfio_user_config_read 36 irqtest(103848): -> vfio_user_config_write 42 irqtest(103848): <- vfio_user_config_write 47 irqtest(103848): <- vfio_default_config_write 51 irqtest(103848): <- vfio_basic_config_write 55 irqtest(103848): <- vfio_pci_config_rw 59 irqtest(103848): <- vfio_pci_rw 62 irqtest(103848): <- vfio_pci_write vfio_pci_ioctl was called: 15211 0 irqtest(103848): -> vfio_pci_ioctl 4 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 4 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap 45 irqtest(103848): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap 6 irqtest(103848): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 4 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 2 irqtest(103848): <- vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 4 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 2 irqtest(103848): <- vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15214 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 4 irqtest(103848): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x5 0x2 0x1 0x24 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 10 irqtest(103848): -> vfio_pci_set_msi_trigger 12 irqtest(103848): -> vfio_pci_memory_lock_and_enable 16 irqtest(103848): <- vfio_pci_memory_lock_and_enable 18 irqtest(103848): -> pci_alloc_irq_vectors_affinity 20 irqtest(103848): -> __pci_enable_msix_range 23 irqtest(103848): -> pci_msi_supported 25 irqtest(103848): <- pci_msi_supported 27 irqtest(103848): -> pci_msix_vec_count 30 irqtest(103848): <- pci_msix_vec_count 40 irqtest(103848): -> pci_msix_vec_count 42 irqtest(103848): <- pci_msix_vec_count 47 irqtest(103848): -> pci_msi_setup_msi_irqs 55 irqtest(103848): -> pci_msi_domain_check_cap 57 irqtest(103848): <- pci_msi_domain_check_cap 60 irqtest(103848): -> pci_msi_domain_calc_hwirq 62 irqtest(103848): <- pci_msi_domain_calc_hwirq 139 irqtest(103848): -> pci_msi_domain_calc_hwirq 140 irqtest(103848): <- pci_msi_domain_calc_hwirq 181 irqtest(103848): -> pci_msi_domain_write_msg 183 irqtest(103848): -> __pci_write_msi_msg 185 irqtest(103848): <- __pci_write_msi_msg 187 irqtest(103848): <- pci_msi_domain_write_msg 195 irqtest(103848): -> pci_msi_domain_write_msg 196 irqtest(103848): -> __pci_write_msi_msg 197 irqtest(103848): <- __pci_write_msi_msg 198 irqtest(103848): <- pci_msi_domain_write_msg 204 irqtest(103848): <- pci_msi_setup_msi_irqs 206 irqtest(103848): -> msi_verify_entries 208 irqtest(103848): <- msi_verify_entries 212 irqtest(103848): -> __pci_msix_desc_mask_irq 214 irqtest(103848): <- __pci_msix_desc_mask_irq 216 irqtest(103848): -> __pci_msix_desc_mask_irq 217 irqtest(103848): <- __pci_msix_desc_mask_irq 218 irqtest(103848): -> populate_msi_sysfs 223 irqtest(103848): <- populate_msi_sysfs 228 irqtest(103848): <- __pci_enable_msix_range 229 irqtest(103848): <- pci_alloc_irq_vectors_affinity 231 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 234 irqtest(103848): <- vfio_pci_memory_unlock_and_restore vfio_msi_set_block: start: count: 0x1, 0x1 vfio_msi_set_block: vdev->num_ctx: 0x2 237 irqtest(103848): -> vfio_msi_set_block vfio_msi_set_vector_signal was called: 1 / 7 241 irqtest(103848): -> vfio_msi_set_vector_signal 244 irqtest(103848): -> pci_irq_vector 246 irqtest(103848): <- pci_irq_vector 248 irqtest(103848): -> vfio_pci_memory_lock_and_enable 251 irqtest(103848): <- vfio_pci_memory_lock_and_enable 256 irqtest(103848): -> pci_write_msi_msg 259 irqtest(103848): -> __pci_write_msi_msg 261 irqtest(103848): <- __pci_write_msi_msg 262 irqtest(103848): <- pci_write_msi_msg 280 irqtest(103848): -> pci_msi_domain_write_msg 281 irqtest(103848): -> __pci_write_msi_msg 282 irqtest(103848): <- __pci_write_msi_msg 283 irqtest(103848): <- pci_msi_domain_write_msg 289 irqtest(103848): -> pci_msi_unmask_irq 292 irqtest(103848): -> msi_set_mask_bit 293 irqtest(103848): -> __pci_msix_desc_mask_irq 295 irqtest(103848): <- __pci_msix_desc_mask_irq 297 irqtest(103848): <- msi_set_mask_bit 298 irqtest(103848): <- pci_msi_unmask_irq 323 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 325 irqtest(103848): <- vfio_pci_memory_unlock_and_restore 327 irqtest(103848): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 330 irqtest(103848): <- vfio_msi_set_block 331 irqtest(103848): <- vfio_pci_set_msi_trigger 332 irqtest(103848): <- vfio_pci_set_irqs_ioctl 334 irqtest(103848): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15214 0 irqtest(103848): -> vfio_pci_ioctl 1 irqtest(103848): -> vfio_pci_get_irq_count 3 irqtest(103848): <- vfio_pci_get_irq_count 5 irqtest(103848): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x2 0x2 0x0 0x24 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 7 irqtest(103848): -> vfio_pci_set_msi_trigger vfio_msi_set_block: start: count: 0x0, 0x1 vfio_msi_set_block: vdev->num_ctx: 0x2 9 irqtest(103848): -> vfio_msi_set_block vfio_msi_set_vector_signal was called: 0 / 8 11 irqtest(103848): -> vfio_msi_set_vector_signal 13 irqtest(103848): -> pci_irq_vector 14 irqtest(103848): <- pci_irq_vector 15 irqtest(103848): -> vfio_pci_memory_lock_and_enable 18 irqtest(103848): <- vfio_pci_memory_lock_and_enable 21 irqtest(103848): -> pci_write_msi_msg 23 irqtest(103848): -> __pci_write_msi_msg 24 irqtest(103848): <- __pci_write_msi_msg 25 irqtest(103848): <- pci_write_msi_msg 34 irqtest(103848): -> pci_msi_domain_write_msg 35 irqtest(103848): -> __pci_write_msi_msg 36 irqtest(103848): <- __pci_write_msi_msg 37 irqtest(103848): <- pci_msi_domain_write_msg 40 irqtest(103848): -> pci_msi_unmask_irq 41 irqtest(103848): -> msi_set_mask_bit 42 irqtest(103848): -> __pci_msix_desc_mask_irq 43 irqtest(103848): <- __pci_msix_desc_mask_irq 45 irqtest(103848): <- msi_set_mask_bit 46 irqtest(103848): <- pci_msi_unmask_irq 62 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 64 irqtest(103848): <- vfio_pci_memory_unlock_and_restore 66 irqtest(103848): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 67 irqtest(103848): <- vfio_msi_set_block 68 irqtest(103848): <- vfio_pci_set_msi_trigger 69 irqtest(103848): <- vfio_pci_set_irqs_ioctl 70 irqtest(103848): <- vfio_pci_ioctl 0 irqtest(103848): -> vfio_pci_mmap_close 1 irqtest(103848): <- vfio_pci_mmap_close 0 irqtest(103848): -> vfio_pci_mmap_close 1 irqtest(103848): <- vfio_pci_mmap_close 0 irqtest(103848): -> vfio_pci_release 1 irqtest(103848): -> vfio_pci_vf_token_user_add 3 irqtest(103848): -> get_pf_vdev 4 irqtest(103848): <- get_pf_vdev 5 irqtest(103848): <- vfio_pci_vf_token_user_add 8 irqtest(103848): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x2 0x2 0x0 0x21 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 11 irqtest(103848): -> vfio_pci_set_msi_trigger 14 irqtest(103848): -> vfio_msi_disable vfio_msi_set_block: start: count: 0x0, 0x2 vfio_msi_set_block: vdev->num_ctx: 0x2 18 irqtest(103848): -> vfio_msi_set_block vfio_msi_set_vector_signal was called: 0 / -1 20 irqtest(103848): -> vfio_msi_set_vector_signal 21 irqtest(103848): -> pci_irq_vector 22 irqtest(103848): <- pci_irq_vector 24 irqtest(103848): -> vfio_pci_memory_lock_and_enable 26 irqtest(103848): <- vfio_pci_memory_lock_and_enable 36 irqtest(103848): -> pci_msi_mask_irq 38 irqtest(103848): -> msi_set_mask_bit 39 irqtest(103848): -> __pci_msix_desc_mask_irq 41 irqtest(103848): <- __pci_msix_desc_mask_irq 43 irqtest(103848): <- msi_set_mask_bit 44 irqtest(103848): <- pci_msi_mask_irq 55 irqtest(103848): -> pci_msi_domain_write_msg 56 irqtest(103848): -> __pci_write_msi_msg 58 irqtest(103848): <- __pci_write_msi_msg 58 irqtest(103848): <- pci_msi_domain_write_msg 68 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 70 irqtest(103848): <- vfio_pci_memory_unlock_and_restore 72 irqtest(103848): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 vfio_msi_set_vector_signal was called: 1 / -1 74 irqtest(103848): -> vfio_msi_set_vector_signal 75 irqtest(103848): -> pci_irq_vector 76 irqtest(103848): <- pci_irq_vector 77 irqtest(103848): -> vfio_pci_memory_lock_and_enable 80 irqtest(103848): <- vfio_pci_memory_lock_and_enable 84 irqtest(103848): -> pci_msi_mask_irq 85 irqtest(103848): -> msi_set_mask_bit 86 irqtest(103848): -> __pci_msix_desc_mask_irq 87 irqtest(103848): <- __pci_msix_desc_mask_irq 89 irqtest(103848): <- msi_set_mask_bit 90 irqtest(103848): <- pci_msi_mask_irq 94 irqtest(103848): -> pci_msi_domain_write_msg 95 irqtest(103848): -> __pci_write_msi_msg 96 irqtest(103848): <- __pci_write_msi_msg 97 irqtest(103848): <- pci_msi_domain_write_msg 102 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 104 irqtest(103848): <- vfio_pci_memory_unlock_and_restore 105 irqtest(103848): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 106 irqtest(103848): <- vfio_msi_set_block 107 irqtest(103848): -> vfio_pci_memory_lock_and_enable 110 irqtest(103848): <- vfio_pci_memory_lock_and_enable 112 irqtest(103848): -> pci_free_irq_vectors 114 irqtest(103848): -> pci_disable_msix 119 irqtest(103848): -> free_msi_irqs 123 irqtest(103848): -> default_teardown_msi_irqs 210 irqtest(103848): <- default_teardown_msi_irqs 218 irqtest(103848): <- free_msi_irqs 219 irqtest(103848): <- pci_disable_msix 220 irqtest(103848): -> pci_disable_msi 222 irqtest(103848): <- pci_disable_msi 223 irqtest(103848): <- pci_free_irq_vectors 224 irqtest(103848): -> vfio_pci_memory_unlock_and_restore 226 irqtest(103848): <- vfio_pci_memory_unlock_and_restore 227 irqtest(103848): <- vfio_msi_disable 228 irqtest(103848): <- vfio_pci_set_msi_trigger 229 irqtest(103848): <- vfio_pci_set_irqs_ioctl 231 irqtest(103848): -> vfio_config_free 232 irqtest(103848): <- vfio_config_free 103062 irqtest(103848): -> pci_restore_msi_state 103071 irqtest(103848): <- pci_restore_msi_state 103082 irqtest(103848): -> vfio_pci_walk_wrapper 103087 irqtest(103848): -> vfio_pci_count_devs 103092 irqtest(103848): <- vfio_pci_count_devs 103096 irqtest(103848): <- vfio_pci_walk_wrapper 103100 irqtest(103848): -> vfio_pci_walk_wrapper 103105 irqtest(103848): -> vfio_pci_count_devs 103108 irqtest(103848): <- vfio_pci_count_devs 103112 irqtest(103848): <- vfio_pci_walk_wrapper 103116 irqtest(103848): -> vfio_pci_walk_wrapper 103120 irqtest(103848): -> vfio_pci_count_devs 103124 irqtest(103848): <- vfio_pci_count_devs 103128 irqtest(103848): <- vfio_pci_walk_wrapper 103132 irqtest(103848): -> vfio_pci_walk_wrapper 103136 irqtest(103848): -> vfio_pci_count_devs 103139 irqtest(103848): <- vfio_pci_count_devs 103143 irqtest(103848): <- vfio_pci_walk_wrapper 103147 irqtest(103848): -> vfio_pci_walk_wrapper 103152 irqtest(103848): -> vfio_pci_get_unused_devs 103157 irqtest(103848): <- vfio_pci_get_unused_devs 103161 irqtest(103848): <- vfio_pci_walk_wrapper 103167 irqtest(103848): -> vfio_pci_set_power_state 103171 irqtest(103848): <- vfio_pci_set_power_state 103176 irqtest(103848): <- vfio_pci_release
0 irqtest(103741): -> vfio_pci_match 5 irqtest(103741): -> get_pf_vdev 8 irqtest(103741): <- get_pf_vdev 9 irqtest(103741): <- vfio_pci_match 0 irqtest(103741): -> vfio_pci_open 2 irqtest(103741): -> vfio_pci_set_power_state 4 irqtest(103741): <- vfio_pci_set_power_state 102476 irqtest(103741): -> pci_restore_msi_state 102479 irqtest(103741): <- pci_restore_msi_state 102506 irqtest(103741): -> vfio_config_init 102509 irqtest(103741): -> vfio_fill_vconfig_bytes 102523 irqtest(103741): <- vfio_fill_vconfig_bytes 102528 irqtest(103741): -> vfio_fill_vconfig_bytes 102531 irqtest(103741): <- vfio_fill_vconfig_bytes 102535 irqtest(103741): -> vfio_fill_vconfig_bytes 102546 irqtest(103741): <- vfio_fill_vconfig_bytes 102548 irqtest(103741): -> vfio_fill_vconfig_bytes 102551 irqtest(103741): <- vfio_fill_vconfig_bytes 102552 irqtest(103741): <- vfio_config_init 102555 irqtest(103741): -> vfio_pci_vf_token_user_add 102557 irqtest(103741): -> get_pf_vdev 102559 irqtest(103741): <- get_pf_vdev 102560 irqtest(103741): <- vfio_pci_vf_token_user_add 102561 irqtest(103741): <- vfio_pci_open vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_read 2 irqtest(103741): -> vfio_pci_rw 4 irqtest(103741): -> vfio_pci_config_rw 7 irqtest(103741): -> vfio_basic_config_read 8 irqtest(103741): -> vfio_default_config_read 11 irqtest(103741): -> vfio_user_config_read 14 irqtest(103741): <- vfio_user_config_read 15 irqtest(103741): <- vfio_default_config_read 16 irqtest(103741): <- vfio_basic_config_read 18 irqtest(103741): <- vfio_pci_config_rw 19 irqtest(103741): <- vfio_pci_rw 20 irqtest(103741): <- vfio_pci_read 0 irqtest(103741): -> vfio_pci_write 2 irqtest(103741): -> vfio_pci_rw 3 irqtest(103741): -> vfio_pci_config_rw 5 irqtest(103741): -> vfio_basic_config_write 8 irqtest(103741): -> vfio_default_config_write 9 irqtest(103741): -> vfio_user_config_read 11 irqtest(103741): <- vfio_user_config_read 13 irqtest(103741): -> vfio_user_config_write 15 irqtest(103741): <- vfio_user_config_write 16 irqtest(103741): <- vfio_default_config_write 18 irqtest(103741): <- vfio_basic_config_write 19 irqtest(103741): <- vfio_pci_config_rw 20 irqtest(103741): <- vfio_pci_rw 21 irqtest(103741): <- vfio_pci_write vfio_pci_ioctl was called: 15211 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap 34 irqtest(103741): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap 8 irqtest(103741): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 4 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 4 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap_fault 3 irqtest(103741): -> __vfio_pci_memory_enabled 4 irqtest(103741): <- __vfio_pci_memory_enabled 7 irqtest(103741): <- vfio_pci_mmap_fault 0 irqtest(103741): -> vfio_pci_mmap_fault 1 irqtest(103741): -> __vfio_pci_memory_enabled 2 irqtest(103741): <- __vfio_pci_memory_enabled 4 irqtest(103741): <- vfio_pci_mmap_fault 0 irqtest(103741): -> vfio_pci_mmap_close 2 irqtest(103741): <- vfio_pci_mmap_close 0 irqtest(103741): -> vfio_pci_mmap_close 1 irqtest(103741): <- vfio_pci_mmap_close 0 irqtest(103741): -> vfio_pci_release 1 irqtest(103741): -> vfio_pci_vf_token_user_add 3 irqtest(103741): -> get_pf_vdev 4 irqtest(103741): <- get_pf_vdev 5 irqtest(103741): <- vfio_pci_vf_token_user_add 8 irqtest(103741): -> vfio_pci_set_irqs_ioctl 10 irqtest(103741): <- vfio_pci_set_irqs_ioctl 12 irqtest(103741): -> vfio_config_free 13 irqtest(103741): <- vfio_config_free 103705 irqtest(103741): -> pci_restore_msi_state 103714 irqtest(103741): <- pci_restore_msi_state 103725 irqtest(103741): -> vfio_pci_walk_wrapper 103731 irqtest(103741): -> vfio_pci_count_devs 103736 irqtest(103741): <- vfio_pci_count_devs 103741 irqtest(103741): <- vfio_pci_walk_wrapper 103758 irqtest(103741): -> vfio_pci_walk_wrapper 103759 irqtest(103741): -> vfio_pci_count_devs 103760 irqtest(103741): <- vfio_pci_count_devs 103761 irqtest(103741): <- vfio_pci_walk_wrapper 103762 irqtest(103741): -> vfio_pci_walk_wrapper 103763 irqtest(103741): -> vfio_pci_count_devs 103765 irqtest(103741): <- vfio_pci_count_devs 103766 irqtest(103741): <- vfio_pci_walk_wrapper 103767 irqtest(103741): -> vfio_pci_walk_wrapper 103768 irqtest(103741): -> vfio_pci_count_devs 103769 irqtest(103741): <- vfio_pci_count_devs 103770 irqtest(103741): <- vfio_pci_walk_wrapper 103771 irqtest(103741): -> vfio_pci_walk_wrapper 103773 irqtest(103741): -> vfio_pci_get_unused_devs 103775 irqtest(103741): <- vfio_pci_get_unused_devs 103776 irqtest(103741): <- vfio_pci_walk_wrapper 103778 irqtest(103741): -> vfio_pci_set_power_state 103779 irqtest(103741): <- vfio_pci_set_power_state 103780 irqtest(103741): <- vfio_pci_release 0 irqtest(103741): -> vfio_pci_match 3 irqtest(103741): -> get_pf_vdev 4 irqtest(103741): <- get_pf_vdev 5 irqtest(103741): <- vfio_pci_match 0 irqtest(103741): -> vfio_pci_open 1 irqtest(103741): -> vfio_pci_set_power_state 3 irqtest(103741): <- vfio_pci_set_power_state 103732 irqtest(103741): -> pci_restore_msi_state 103741 irqtest(103741): <- pci_restore_msi_state 103789 irqtest(103741): -> vfio_config_init 103795 irqtest(103741): -> vfio_fill_vconfig_bytes 103822 irqtest(103741): <- vfio_fill_vconfig_bytes 103832 irqtest(103741): -> vfio_fill_vconfig_bytes 103841 irqtest(103741): <- vfio_fill_vconfig_bytes 103848 irqtest(103741): -> vfio_fill_vconfig_bytes 103870 irqtest(103741): <- vfio_fill_vconfig_bytes 103875 irqtest(103741): -> vfio_fill_vconfig_bytes 103881 irqtest(103741): <- vfio_fill_vconfig_bytes 103885 irqtest(103741): <- vfio_config_init 103892 irqtest(103741): -> vfio_pci_vf_token_user_add 103897 irqtest(103741): -> get_pf_vdev 103903 irqtest(103741): <- get_pf_vdev 103918 irqtest(103741): <- vfio_pci_vf_token_user_add 103919 irqtest(103741): <- vfio_pci_open vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_read 1 irqtest(103741): -> vfio_pci_rw 3 irqtest(103741): -> vfio_pci_config_rw 5 irqtest(103741): -> vfio_basic_config_read 6 irqtest(103741): -> vfio_default_config_read 8 irqtest(103741): -> vfio_user_config_read 10 irqtest(103741): <- vfio_user_config_read 12 irqtest(103741): <- vfio_default_config_read 13 irqtest(103741): <- vfio_basic_config_read 14 irqtest(103741): <- vfio_pci_config_rw 15 irqtest(103741): <- vfio_pci_rw 16 irqtest(103741): <- vfio_pci_read 0 irqtest(103741): -> vfio_pci_write 1 irqtest(103741): -> vfio_pci_rw 2 irqtest(103741): -> vfio_pci_config_rw 3 irqtest(103741): -> vfio_basic_config_write 6 irqtest(103741): -> vfio_default_config_write 8 irqtest(103741): -> vfio_user_config_read 10 irqtest(103741): <- vfio_user_config_read 11 irqtest(103741): -> vfio_user_config_write 13 irqtest(103741): <- vfio_user_config_write 14 irqtest(103741): <- vfio_default_config_write 16 irqtest(103741): <- vfio_basic_config_write 17 irqtest(103741): <- vfio_pci_config_rw 18 irqtest(103741): <- vfio_pci_rw 19 irqtest(103741): <- vfio_pci_write vfio_pci_ioctl was called: 15211 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap 16 irqtest(103741): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap 8 irqtest(103741): <- vfio_pci_mmap vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15212 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 2 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 4 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 4 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15213 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 2 irqtest(103741): <- vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15214 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 5 irqtest(103741): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x5 0x2 0x0 0x24 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 8 irqtest(103741): -> vfio_pci_set_msi_trigger 10 irqtest(103741): -> vfio_pci_memory_lock_and_enable 13 irqtest(103741): <- vfio_pci_memory_lock_and_enable 15 irqtest(103741): -> pci_alloc_irq_vectors_affinity 16 irqtest(103741): -> __pci_enable_msix_range 18 irqtest(103741): -> pci_msi_supported 20 irqtest(103741): <- pci_msi_supported 21 irqtest(103741): -> pci_msix_vec_count 23 irqtest(103741): <- pci_msix_vec_count 33 irqtest(103741): -> pci_msix_vec_count 35 irqtest(103741): <- pci_msix_vec_count 38 irqtest(103741): -> pci_msi_setup_msi_irqs 43 irqtest(103741): -> pci_msi_domain_check_cap 44 irqtest(103741): <- pci_msi_domain_check_cap 46 irqtest(103741): -> pci_msi_domain_calc_hwirq 48 irqtest(103741): <- pci_msi_domain_calc_hwirq 109 irqtest(103741): -> pci_msi_domain_write_msg 111 irqtest(103741): -> __pci_write_msi_msg 113 irqtest(103741): <- __pci_write_msi_msg 114 irqtest(103741): <- pci_msi_domain_write_msg 118 irqtest(103741): <- pci_msi_setup_msi_irqs 119 irqtest(103741): -> msi_verify_entries 120 irqtest(103741): <- msi_verify_entries 124 irqtest(103741): -> __pci_msix_desc_mask_irq 125 irqtest(103741): <- __pci_msix_desc_mask_irq 127 irqtest(103741): -> populate_msi_sysfs 132 irqtest(103741): <- populate_msi_sysfs 136 irqtest(103741): <- __pci_enable_msix_range 137 irqtest(103741): <- pci_alloc_irq_vectors_affinity 139 irqtest(103741): -> vfio_pci_memory_unlock_and_restore 141 irqtest(103741): <- vfio_pci_memory_unlock_and_restore vfio_msi_set_block: start: count: 0x0, 0x1 vfio_msi_set_block: vdev->num_ctx: 0x1 144 irqtest(103741): -> vfio_msi_set_block vfio_msi_set_vector_signal was called: 0 / 7 147 irqtest(103741): -> vfio_msi_set_vector_signal 149 irqtest(103741): -> pci_irq_vector 150 irqtest(103741): <- pci_irq_vector 153 irqtest(103741): -> vfio_pci_memory_lock_and_enable 156 irqtest(103741): <- vfio_pci_memory_lock_and_enable 159 irqtest(103741): -> pci_write_msi_msg 162 irqtest(103741): -> __pci_write_msi_msg 163 irqtest(103741): <- __pci_write_msi_msg 164 irqtest(103741): <- pci_write_msi_msg 178 irqtest(103741): -> pci_msi_domain_write_msg 179 irqtest(103741): -> __pci_write_msi_msg 180 irqtest(103741): <- __pci_write_msi_msg 181 irqtest(103741): <- pci_msi_domain_write_msg 186 irqtest(103741): -> pci_msi_unmask_irq 187 irqtest(103741): -> msi_set_mask_bit 188 irqtest(103741): -> __pci_msix_desc_mask_irq 190 irqtest(103741): <- __pci_msix_desc_mask_irq 192 irqtest(103741): <- msi_set_mask_bit 193 irqtest(103741): <- pci_msi_unmask_irq 213 irqtest(103741): -> vfio_pci_memory_unlock_and_restore 216 irqtest(103741): <- vfio_pci_memory_unlock_and_restore 217 irqtest(103741): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 219 irqtest(103741): <- vfio_msi_set_block 221 irqtest(103741): <- vfio_pci_set_msi_trigger 222 irqtest(103741): <- vfio_pci_set_irqs_ioctl 223 irqtest(103741): <- vfio_pci_ioctl vfio_pci_ioctl was called: 15214 0 irqtest(103741): -> vfio_pci_ioctl 1 irqtest(103741): -> vfio_pci_get_irq_count 3 irqtest(103741): <- vfio_pci_get_irq_count 5 irqtest(103741): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x2 0x2 0x1 0x24 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 7 irqtest(103741): -> vfio_pci_set_msi_trigger vfio_msi_set_block: start: count: 0x1, 0x1 vfio_msi_set_block: vdev->num_ctx: 0x1 9 irqtest(103741): -> vfio_msi_set_block 11 irqtest(103741): <- vfio_msi_set_block 12 irqtest(103741): <- vfio_pci_set_msi_trigger 13 irqtest(103741): <- vfio_pci_set_irqs_ioctl 14 irqtest(103741): <- vfio_pci_ioctl 0 irqtest(103741): -> vfio_pci_mmap_close 2 irqtest(103741): <- vfio_pci_mmap_close 0 irqtest(103741): -> vfio_pci_mmap_close 2 irqtest(103741): <- vfio_pci_mmap_close 0 irqtest(103741): -> vfio_pci_release 2 irqtest(103741): -> vfio_pci_vf_token_user_add 3 irqtest(103741): -> get_pf_vdev 5 irqtest(103741): <- get_pf_vdev 6 irqtest(103741): <- vfio_pci_vf_token_user_add 9 irqtest(103741): -> vfio_pci_set_irqs_ioctl vfio_pci_set_msi_trigger: irq_type: index: vector: flags: 0x2 0x2 0x0 0x21 vfio_pci_set_msi_trigger: vdev: 0xffff8ea6bc003200 12 irqtest(103741): -> vfio_pci_set_msi_trigger 14 irqtest(103741): -> vfio_msi_disable vfio_msi_set_block: start: count: 0x0, 0x1 vfio_msi_set_block: vdev->num_ctx: 0x1 20 irqtest(103741): -> vfio_msi_set_block vfio_msi_set_vector_signal was called: 0 / -1 22 irqtest(103741): -> vfio_msi_set_vector_signal 24 irqtest(103741): -> pci_irq_vector 25 irqtest(103741): <- pci_irq_vector 26 irqtest(103741): -> vfio_pci_memory_lock_and_enable 30 irqtest(103741): <- vfio_pci_memory_lock_and_enable 37 irqtest(103741): -> pci_msi_mask_irq 39 irqtest(103741): -> msi_set_mask_bit 40 irqtest(103741): -> __pci_msix_desc_mask_irq 41 irqtest(103741): <- __pci_msix_desc_mask_irq 43 irqtest(103741): <- msi_set_mask_bit 44 irqtest(103741): <- pci_msi_mask_irq 53 irqtest(103741): -> pci_msi_domain_write_msg 54 irqtest(103741): -> __pci_write_msi_msg 56 irqtest(103741): <- __pci_write_msi_msg 57 irqtest(103741): <- pci_msi_domain_write_msg 65 irqtest(103741): -> vfio_pci_memory_unlock_and_restore 67 irqtest(103741): <- vfio_pci_memory_unlock_and_restore 68 irqtest(103741): <- vfio_msi_set_vector_signal vfio_msi_set_vector_signal returned with: 0 77 irqtest(103741): <- vfio_msi_set_block 78 irqtest(103741): -> vfio_pci_memory_lock_and_enable 81 irqtest(103741): <- vfio_pci_memory_lock_and_enable 83 irqtest(103741): -> pci_free_irq_vectors 84 irqtest(103741): -> pci_disable_msix 88 irqtest(103741): -> free_msi_irqs 91 irqtest(103741): -> default_teardown_msi_irqs 139 irqtest(103741): <- default_teardown_msi_irqs 145 irqtest(103741): <- free_msi_irqs 146 irqtest(103741): <- pci_disable_msix 148 irqtest(103741): -> pci_disable_msi 149 irqtest(103741): <- pci_disable_msi 150 irqtest(103741): <- pci_free_irq_vectors 151 irqtest(103741): -> vfio_pci_memory_unlock_and_restore 154 irqtest(103741): <- vfio_pci_memory_unlock_and_restore 155 irqtest(103741): <- vfio_msi_disable 156 irqtest(103741): <- vfio_pci_set_msi_trigger 158 irqtest(103741): <- vfio_pci_set_irqs_ioctl 159 irqtest(103741): -> vfio_config_free 160 irqtest(103741): <- vfio_config_free 103190 irqtest(103741): -> pci_restore_msi_state 103199 irqtest(103741): <- pci_restore_msi_state 103210 irqtest(103741): -> vfio_pci_walk_wrapper 103215 irqtest(103741): -> vfio_pci_count_devs 103220 irqtest(103741): <- vfio_pci_count_devs 103224 irqtest(103741): <- vfio_pci_walk_wrapper 103228 irqtest(103741): -> vfio_pci_walk_wrapper 103232 irqtest(103741): -> vfio_pci_count_devs 103236 irqtest(103741): <- vfio_pci_count_devs 103240 irqtest(103741): <- vfio_pci_walk_wrapper 103243 irqtest(103741): -> vfio_pci_walk_wrapper 103247 irqtest(103741): -> vfio_pci_count_devs 103251 irqtest(103741): <- vfio_pci_count_devs 103255 irqtest(103741): <- vfio_pci_walk_wrapper 103258 irqtest(103741): -> vfio_pci_walk_wrapper 103262 irqtest(103741): -> vfio_pci_count_devs 103266 irqtest(103741): <- vfio_pci_count_devs 103269 irqtest(103741): <- vfio_pci_walk_wrapper 103274 irqtest(103741): -> vfio_pci_walk_wrapper 103278 irqtest(103741): -> vfio_pci_get_unused_devs 103284 irqtest(103741): <- vfio_pci_get_unused_devs 103288 irqtest(103741): <- vfio_pci_walk_wrapper 103293 irqtest(103741): -> vfio_pci_set_power_state 103297 irqtest(103741): <- vfio_pci_set_power_state 103302 irqtest(103741): <- vfio_pci_release