From: kernel test robot <lkp@intel.com> To: Yishai Hadas <yishaih@nvidia.com>, alex.williamson@redhat.com, mst@redhat.com, jasowang@redhat.com, jgg@nvidia.com Cc: oe-kbuild-all@lists.linux.dev, kvm@vger.kernel.org, virtualization@lists.linux-foundation.org, parav@nvidia.com, feliu@nvidia.com, jiri@nvidia.com, kevin.tian@intel.com, joao.m.martins@oracle.com, si-wei.liu@oracle.com, leonro@nvidia.com, yishaih@nvidia.com, maorg@nvidia.com Subject: Re: [PATCH V1 vfio 6/9] virtio-pci: Introduce APIs to execute legacy IO admin commands Date: Wed, 18 Oct 2023 04:33:40 +0800 [thread overview] Message-ID: <202310180437.jo2csM6u-lkp@intel.com> (raw) In-Reply-To: <20231017134217.82497-7-yishaih@nvidia.com> Hi Yishai, kernel test robot noticed the following build warnings: [auto build test WARNING on linus/master] [also build test WARNING on v6.6-rc6 next-20231017] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Yishai-Hadas/virtio-pci-Fix-common-config-map-for-modern-device/20231017-214450 base: linus/master patch link: https://lore.kernel.org/r/20231017134217.82497-7-yishaih%40nvidia.com patch subject: [PATCH V1 vfio 6/9] virtio-pci: Introduce APIs to execute legacy IO admin commands config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20231018/202310180437.jo2csM6u-lkp@intel.com/config) compiler: alpha-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231018/202310180437.jo2csM6u-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202310180437.jo2csM6u-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/virtio/virtio_pci_modern.c:731:5: warning: no previous prototype for 'virtio_pci_admin_list_query' [-Wmissing-prototypes] 731 | int virtio_pci_admin_list_query(struct pci_dev *pdev, u8 *buf, int buf_size) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:758:5: warning: no previous prototype for 'virtio_pci_admin_list_use' [-Wmissing-prototypes] 758 | int virtio_pci_admin_list_use(struct pci_dev *pdev, u8 *buf, int buf_size) | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:786:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_write' [-Wmissing-prototypes] 786 | int virtio_pci_admin_legacy_io_write(struct pci_dev *pdev, u16 opcode, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:831:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_read' [-Wmissing-prototypes] 831 | int virtio_pci_admin_legacy_io_read(struct pci_dev *pdev, u16 opcode, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:877:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_notify_info' [-Wmissing-prototypes] 877 | int virtio_pci_admin_legacy_io_notify_info(struct pci_dev *pdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/virtio_pci_admin_list_query +731 drivers/virtio/virtio_pci_modern.c 721 722 /* 723 * virtio_pci_admin_list_query - Provides to driver list of commands 724 * supported for the PCI VF. 725 * @dev: VF pci_dev 726 * @buf: buffer to hold the returned list 727 * @buf_size: size of the given buffer 728 * 729 * Returns 0 on success, or negative on failure. 730 */ > 731 int virtio_pci_admin_list_query(struct pci_dev *pdev, u8 *buf, int buf_size) 732 { 733 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 734 struct virtio_admin_cmd cmd = {}; 735 struct scatterlist result_sg; 736 737 if (!virtio_dev) 738 return -ENODEV; 739 740 sg_init_one(&result_sg, buf, buf_size); 741 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LIST_QUERY); 742 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 743 cmd.result_sg = &result_sg; 744 745 return vp_modern_admin_cmd_exec(virtio_dev, &cmd); 746 } 747 EXPORT_SYMBOL_GPL(virtio_pci_admin_list_query); 748 749 /* 750 * virtio_pci_admin_list_use - Provides to device list of commands 751 * used for the PCI VF. 752 * @dev: VF pci_dev 753 * @buf: buffer which holds the list 754 * @buf_size: size of the given buffer 755 * 756 * Returns 0 on success, or negative on failure. 757 */ > 758 int virtio_pci_admin_list_use(struct pci_dev *pdev, u8 *buf, int buf_size) 759 { 760 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 761 struct virtio_admin_cmd cmd = {}; 762 struct scatterlist data_sg; 763 764 if (!virtio_dev) 765 return -ENODEV; 766 767 sg_init_one(&data_sg, buf, buf_size); 768 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LIST_USE); 769 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 770 cmd.data_sg = &data_sg; 771 772 return vp_modern_admin_cmd_exec(virtio_dev, &cmd); 773 } 774 EXPORT_SYMBOL_GPL(virtio_pci_admin_list_use); 775 776 /* 777 * virtio_pci_admin_legacy_io_write - Write legacy registers of a member device 778 * @dev: VF pci_dev 779 * @opcode: op code of the io write command 780 * @offset: starting byte offset within the registers to write to 781 * @size: size of the data to write 782 * @buf: buffer which holds the data 783 * 784 * Returns 0 on success, or negative on failure. 785 */ > 786 int virtio_pci_admin_legacy_io_write(struct pci_dev *pdev, u16 opcode, 787 u8 offset, u8 size, u8 *buf) 788 { 789 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 790 struct virtio_admin_cmd_legacy_wr_data *data; 791 struct virtio_admin_cmd cmd = {}; 792 struct scatterlist data_sg; 793 int vf_id; 794 int ret; 795 796 if (!virtio_dev) 797 return -ENODEV; 798 799 vf_id = pci_iov_vf_id(pdev); 800 if (vf_id < 0) 801 return vf_id; 802 803 data = kzalloc(sizeof(*data) + size, GFP_KERNEL); 804 if (!data) 805 return -ENOMEM; 806 807 data->offset = offset; 808 memcpy(data->registers, buf, size); 809 sg_init_one(&data_sg, data, sizeof(*data) + size); 810 cmd.opcode = cpu_to_le16(opcode); 811 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 812 cmd.group_member_id = cpu_to_le64(vf_id + 1); 813 cmd.data_sg = &data_sg; 814 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 815 816 kfree(data); 817 return ret; 818 } 819 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_write); 820 821 /* 822 * virtio_pci_admin_legacy_io_read - Read legacy registers of a member device 823 * @dev: VF pci_dev 824 * @opcode: op code of the io read command 825 * @offset: starting byte offset within the registers to read from 826 * @size: size of the data to be read 827 * @buf: buffer to hold the returned data 828 * 829 * Returns 0 on success, or negative on failure. 830 */ > 831 int virtio_pci_admin_legacy_io_read(struct pci_dev *pdev, u16 opcode, 832 u8 offset, u8 size, u8 *buf) 833 { 834 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 835 struct virtio_admin_cmd_legacy_rd_data *data; 836 struct scatterlist data_sg, result_sg; 837 struct virtio_admin_cmd cmd = {}; 838 int vf_id; 839 int ret; 840 841 if (!virtio_dev) 842 return -ENODEV; 843 844 vf_id = pci_iov_vf_id(pdev); 845 if (vf_id < 0) 846 return vf_id; 847 848 data = kzalloc(sizeof(*data), GFP_KERNEL); 849 if (!data) 850 return -ENOMEM; 851 852 data->offset = offset; 853 sg_init_one(&data_sg, data, sizeof(*data)); 854 sg_init_one(&result_sg, buf, size); 855 cmd.opcode = cpu_to_le16(opcode); 856 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 857 cmd.group_member_id = cpu_to_le64(vf_id + 1); 858 cmd.data_sg = &data_sg; 859 cmd.result_sg = &result_sg; 860 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 861 862 kfree(data); 863 return ret; 864 } 865 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_read); 866 867 /* 868 * virtio_pci_admin_legacy_io_notify_info - Read the queue notification 869 * information for legacy interface 870 * @dev: VF pci_dev 871 * @req_bar_flags: requested bar flags 872 * @bar: on output the BAR number of the member device 873 * @bar_offset: on output the offset within bar 874 * 875 * Returns 0 on success, or negative on failure. 876 */ > 877 int virtio_pci_admin_legacy_io_notify_info(struct pci_dev *pdev, 878 u8 req_bar_flags, u8 *bar, 879 u64 *bar_offset) 880 { 881 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 882 struct virtio_admin_cmd_notify_info_result *result; 883 struct virtio_admin_cmd cmd = {}; 884 struct scatterlist result_sg; 885 int vf_id; 886 int ret; 887 888 if (!virtio_dev) 889 return -ENODEV; 890 891 vf_id = pci_iov_vf_id(pdev); 892 if (vf_id < 0) 893 return vf_id; 894 895 result = kzalloc(sizeof(*result), GFP_KERNEL); 896 if (!result) 897 return -ENOMEM; 898 899 sg_init_one(&result_sg, result, sizeof(*result)); 900 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LEGACY_NOTIFY_INFO); 901 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 902 cmd.group_member_id = cpu_to_le64(vf_id + 1); 903 cmd.result_sg = &result_sg; 904 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 905 if (!ret) { 906 struct virtio_admin_cmd_notify_info_data *entry; 907 int i; 908 909 ret = -ENOENT; 910 for (i = 0; i < VIRTIO_ADMIN_CMD_MAX_NOTIFY_INFO; i++) { 911 entry = &result->entries[i]; 912 if (entry->flags == VIRTIO_ADMIN_CMD_NOTIFY_INFO_FLAGS_END) 913 break; 914 if (entry->flags != req_bar_flags) 915 continue; 916 *bar = entry->bar; 917 *bar_offset = le64_to_cpu(entry->offset); 918 ret = 0; 919 break; 920 } 921 } 922 923 kfree(result); 924 return ret; 925 } 926 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_notify_info); 927 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: Yishai Hadas <yishaih@nvidia.com>, alex.williamson@redhat.com, mst@redhat.com, jasowang@redhat.com, jgg@nvidia.com Cc: kvm@vger.kernel.org, maorg@nvidia.com, oe-kbuild-all@lists.linux.dev, virtualization@lists.linux-foundation.org, jiri@nvidia.com, leonro@nvidia.com Subject: Re: [PATCH V1 vfio 6/9] virtio-pci: Introduce APIs to execute legacy IO admin commands Date: Wed, 18 Oct 2023 04:33:40 +0800 [thread overview] Message-ID: <202310180437.jo2csM6u-lkp@intel.com> (raw) In-Reply-To: <20231017134217.82497-7-yishaih@nvidia.com> Hi Yishai, kernel test robot noticed the following build warnings: [auto build test WARNING on linus/master] [also build test WARNING on v6.6-rc6 next-20231017] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Yishai-Hadas/virtio-pci-Fix-common-config-map-for-modern-device/20231017-214450 base: linus/master patch link: https://lore.kernel.org/r/20231017134217.82497-7-yishaih%40nvidia.com patch subject: [PATCH V1 vfio 6/9] virtio-pci: Introduce APIs to execute legacy IO admin commands config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20231018/202310180437.jo2csM6u-lkp@intel.com/config) compiler: alpha-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231018/202310180437.jo2csM6u-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202310180437.jo2csM6u-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/virtio/virtio_pci_modern.c:731:5: warning: no previous prototype for 'virtio_pci_admin_list_query' [-Wmissing-prototypes] 731 | int virtio_pci_admin_list_query(struct pci_dev *pdev, u8 *buf, int buf_size) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:758:5: warning: no previous prototype for 'virtio_pci_admin_list_use' [-Wmissing-prototypes] 758 | int virtio_pci_admin_list_use(struct pci_dev *pdev, u8 *buf, int buf_size) | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:786:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_write' [-Wmissing-prototypes] 786 | int virtio_pci_admin_legacy_io_write(struct pci_dev *pdev, u16 opcode, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:831:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_read' [-Wmissing-prototypes] 831 | int virtio_pci_admin_legacy_io_read(struct pci_dev *pdev, u16 opcode, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/virtio/virtio_pci_modern.c:877:5: warning: no previous prototype for 'virtio_pci_admin_legacy_io_notify_info' [-Wmissing-prototypes] 877 | int virtio_pci_admin_legacy_io_notify_info(struct pci_dev *pdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/virtio_pci_admin_list_query +731 drivers/virtio/virtio_pci_modern.c 721 722 /* 723 * virtio_pci_admin_list_query - Provides to driver list of commands 724 * supported for the PCI VF. 725 * @dev: VF pci_dev 726 * @buf: buffer to hold the returned list 727 * @buf_size: size of the given buffer 728 * 729 * Returns 0 on success, or negative on failure. 730 */ > 731 int virtio_pci_admin_list_query(struct pci_dev *pdev, u8 *buf, int buf_size) 732 { 733 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 734 struct virtio_admin_cmd cmd = {}; 735 struct scatterlist result_sg; 736 737 if (!virtio_dev) 738 return -ENODEV; 739 740 sg_init_one(&result_sg, buf, buf_size); 741 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LIST_QUERY); 742 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 743 cmd.result_sg = &result_sg; 744 745 return vp_modern_admin_cmd_exec(virtio_dev, &cmd); 746 } 747 EXPORT_SYMBOL_GPL(virtio_pci_admin_list_query); 748 749 /* 750 * virtio_pci_admin_list_use - Provides to device list of commands 751 * used for the PCI VF. 752 * @dev: VF pci_dev 753 * @buf: buffer which holds the list 754 * @buf_size: size of the given buffer 755 * 756 * Returns 0 on success, or negative on failure. 757 */ > 758 int virtio_pci_admin_list_use(struct pci_dev *pdev, u8 *buf, int buf_size) 759 { 760 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 761 struct virtio_admin_cmd cmd = {}; 762 struct scatterlist data_sg; 763 764 if (!virtio_dev) 765 return -ENODEV; 766 767 sg_init_one(&data_sg, buf, buf_size); 768 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LIST_USE); 769 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 770 cmd.data_sg = &data_sg; 771 772 return vp_modern_admin_cmd_exec(virtio_dev, &cmd); 773 } 774 EXPORT_SYMBOL_GPL(virtio_pci_admin_list_use); 775 776 /* 777 * virtio_pci_admin_legacy_io_write - Write legacy registers of a member device 778 * @dev: VF pci_dev 779 * @opcode: op code of the io write command 780 * @offset: starting byte offset within the registers to write to 781 * @size: size of the data to write 782 * @buf: buffer which holds the data 783 * 784 * Returns 0 on success, or negative on failure. 785 */ > 786 int virtio_pci_admin_legacy_io_write(struct pci_dev *pdev, u16 opcode, 787 u8 offset, u8 size, u8 *buf) 788 { 789 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 790 struct virtio_admin_cmd_legacy_wr_data *data; 791 struct virtio_admin_cmd cmd = {}; 792 struct scatterlist data_sg; 793 int vf_id; 794 int ret; 795 796 if (!virtio_dev) 797 return -ENODEV; 798 799 vf_id = pci_iov_vf_id(pdev); 800 if (vf_id < 0) 801 return vf_id; 802 803 data = kzalloc(sizeof(*data) + size, GFP_KERNEL); 804 if (!data) 805 return -ENOMEM; 806 807 data->offset = offset; 808 memcpy(data->registers, buf, size); 809 sg_init_one(&data_sg, data, sizeof(*data) + size); 810 cmd.opcode = cpu_to_le16(opcode); 811 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 812 cmd.group_member_id = cpu_to_le64(vf_id + 1); 813 cmd.data_sg = &data_sg; 814 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 815 816 kfree(data); 817 return ret; 818 } 819 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_write); 820 821 /* 822 * virtio_pci_admin_legacy_io_read - Read legacy registers of a member device 823 * @dev: VF pci_dev 824 * @opcode: op code of the io read command 825 * @offset: starting byte offset within the registers to read from 826 * @size: size of the data to be read 827 * @buf: buffer to hold the returned data 828 * 829 * Returns 0 on success, or negative on failure. 830 */ > 831 int virtio_pci_admin_legacy_io_read(struct pci_dev *pdev, u16 opcode, 832 u8 offset, u8 size, u8 *buf) 833 { 834 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 835 struct virtio_admin_cmd_legacy_rd_data *data; 836 struct scatterlist data_sg, result_sg; 837 struct virtio_admin_cmd cmd = {}; 838 int vf_id; 839 int ret; 840 841 if (!virtio_dev) 842 return -ENODEV; 843 844 vf_id = pci_iov_vf_id(pdev); 845 if (vf_id < 0) 846 return vf_id; 847 848 data = kzalloc(sizeof(*data), GFP_KERNEL); 849 if (!data) 850 return -ENOMEM; 851 852 data->offset = offset; 853 sg_init_one(&data_sg, data, sizeof(*data)); 854 sg_init_one(&result_sg, buf, size); 855 cmd.opcode = cpu_to_le16(opcode); 856 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 857 cmd.group_member_id = cpu_to_le64(vf_id + 1); 858 cmd.data_sg = &data_sg; 859 cmd.result_sg = &result_sg; 860 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 861 862 kfree(data); 863 return ret; 864 } 865 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_read); 866 867 /* 868 * virtio_pci_admin_legacy_io_notify_info - Read the queue notification 869 * information for legacy interface 870 * @dev: VF pci_dev 871 * @req_bar_flags: requested bar flags 872 * @bar: on output the BAR number of the member device 873 * @bar_offset: on output the offset within bar 874 * 875 * Returns 0 on success, or negative on failure. 876 */ > 877 int virtio_pci_admin_legacy_io_notify_info(struct pci_dev *pdev, 878 u8 req_bar_flags, u8 *bar, 879 u64 *bar_offset) 880 { 881 struct virtio_device *virtio_dev = virtio_pci_vf_get_pf_dev(pdev); 882 struct virtio_admin_cmd_notify_info_result *result; 883 struct virtio_admin_cmd cmd = {}; 884 struct scatterlist result_sg; 885 int vf_id; 886 int ret; 887 888 if (!virtio_dev) 889 return -ENODEV; 890 891 vf_id = pci_iov_vf_id(pdev); 892 if (vf_id < 0) 893 return vf_id; 894 895 result = kzalloc(sizeof(*result), GFP_KERNEL); 896 if (!result) 897 return -ENOMEM; 898 899 sg_init_one(&result_sg, result, sizeof(*result)); 900 cmd.opcode = cpu_to_le16(VIRTIO_ADMIN_CMD_LEGACY_NOTIFY_INFO); 901 cmd.group_type = cpu_to_le16(VIRTIO_ADMIN_GROUP_TYPE_SRIOV); 902 cmd.group_member_id = cpu_to_le64(vf_id + 1); 903 cmd.result_sg = &result_sg; 904 ret = vp_modern_admin_cmd_exec(virtio_dev, &cmd); 905 if (!ret) { 906 struct virtio_admin_cmd_notify_info_data *entry; 907 int i; 908 909 ret = -ENOENT; 910 for (i = 0; i < VIRTIO_ADMIN_CMD_MAX_NOTIFY_INFO; i++) { 911 entry = &result->entries[i]; 912 if (entry->flags == VIRTIO_ADMIN_CMD_NOTIFY_INFO_FLAGS_END) 913 break; 914 if (entry->flags != req_bar_flags) 915 continue; 916 *bar = entry->bar; 917 *bar_offset = le64_to_cpu(entry->offset); 918 ret = 0; 919 break; 920 } 921 } 922 923 kfree(result); 924 return ret; 925 } 926 EXPORT_SYMBOL_GPL(virtio_pci_admin_legacy_io_notify_info); 927 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki _______________________________________________ Virtualization mailing list Virtualization@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2023-10-17 20:34 UTC|newest] Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-10-17 13:42 [PATCH V1 vfio 0/9] Introduce a vfio driver over virtio devices Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 1/9] virtio-pci: Fix common config map for modern device Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 2/9] virtio: Define feature bit for administration virtqueue Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 3/9] virtio-pci: Introduce admin virtqueue Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 4/9] virtio-pci: Introduce admin command sending function Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 5/9] virtio-pci: Introduce admin commands Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 6/9] virtio-pci: Introduce APIs to execute legacy IO " Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 20:33 ` kernel test robot [this message] 2023-10-17 20:33 ` kernel test robot 2023-10-22 1:14 ` kernel test robot 2023-10-22 1:14 ` kernel test robot 2023-10-24 21:01 ` Michael S. Tsirkin 2023-10-24 21:01 ` Michael S. Tsirkin 2023-10-25 9:18 ` Yishai Hadas via Virtualization 2023-10-25 10:17 ` Michael S. Tsirkin 2023-10-25 10:17 ` Michael S. Tsirkin 2023-10-25 13:00 ` Yishai Hadas 2023-10-25 13:00 ` Yishai Hadas via Virtualization 2023-10-25 13:04 ` Michael S. Tsirkin 2023-10-25 13:04 ` Michael S. Tsirkin 2023-10-25 13:44 ` Michael S. Tsirkin 2023-10-25 13:44 ` Michael S. Tsirkin 2023-10-25 14:03 ` Yishai Hadas 2023-10-25 14:03 ` Yishai Hadas via Virtualization 2023-10-25 16:31 ` Michael S. Tsirkin 2023-10-25 16:31 ` Michael S. Tsirkin 2023-10-25 9:36 ` Yishai Hadas 2023-10-25 9:36 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 7/9] vfio/pci: Expose vfio_pci_core_setup_barmap() Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 8/9] vfio/pci: Expose vfio_pci_iowrite/read##size() Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 13:42 ` [PATCH V1 vfio 9/9] vfio/virtio: Introduce a vfio driver over virtio devices Yishai Hadas 2023-10-17 13:42 ` Yishai Hadas via Virtualization 2023-10-17 20:24 ` Alex Williamson 2023-10-17 20:24 ` Alex Williamson 2023-10-18 9:01 ` Yishai Hadas 2023-10-18 9:01 ` Yishai Hadas via Virtualization 2023-10-18 12:51 ` Alex Williamson 2023-10-18 12:51 ` Alex Williamson 2023-10-18 13:06 ` Parav Pandit 2023-10-18 13:06 ` Parav Pandit via Virtualization 2023-10-18 16:33 ` Jason Gunthorpe 2023-10-18 18:29 ` Alex Williamson 2023-10-18 18:29 ` Alex Williamson 2023-10-18 19:28 ` Jason Gunthorpe 2023-10-24 19:57 ` Alex Williamson 2023-10-24 19:57 ` Alex Williamson 2023-10-25 14:35 ` Yishai Hadas 2023-10-25 14:35 ` Yishai Hadas via Virtualization 2023-10-25 16:28 ` Michael S. Tsirkin 2023-10-25 16:28 ` Michael S. Tsirkin 2023-10-25 19:13 ` Alex Williamson 2023-10-25 19:13 ` Alex Williamson 2023-10-26 12:08 ` Yishai Hadas 2023-10-26 12:08 ` Yishai Hadas via Virtualization 2023-10-26 12:12 ` Michael S. Tsirkin 2023-10-26 12:12 ` Michael S. Tsirkin 2023-10-26 12:40 ` Parav Pandit 2023-10-26 12:40 ` Parav Pandit via Virtualization 2023-10-26 13:15 ` Michael S. Tsirkin 2023-10-26 13:15 ` Michael S. Tsirkin 2023-10-26 13:28 ` Parav Pandit 2023-10-26 13:28 ` Parav Pandit via Virtualization 2023-10-26 15:06 ` Michael S. Tsirkin 2023-10-26 15:06 ` Michael S. Tsirkin 2023-10-26 15:09 ` Parav Pandit 2023-10-26 15:09 ` Parav Pandit via Virtualization 2023-10-26 15:46 ` Michael S. Tsirkin 2023-10-26 15:46 ` Michael S. Tsirkin 2023-10-26 15:56 ` Parav Pandit 2023-10-26 15:56 ` Parav Pandit via Virtualization 2023-10-26 17:55 ` Alex Williamson 2023-10-26 17:55 ` Alex Williamson 2023-10-26 19:49 ` Michael S. Tsirkin 2023-10-26 19:49 ` Michael S. Tsirkin 2023-10-29 16:13 ` Yishai Hadas via Virtualization 2023-10-29 16:13 ` Yishai Hadas 2023-10-22 8:20 ` [PATCH V1 vfio 0/9] " Yishai Hadas 2023-10-22 8:20 ` Yishai Hadas via Virtualization 2023-10-22 9:12 ` Michael S. Tsirkin 2023-10-22 9:12 ` Michael S. Tsirkin 2023-10-23 15:33 ` Alex Williamson 2023-10-23 15:33 ` Alex Williamson 2023-10-23 15:42 ` Jason Gunthorpe 2023-10-23 16:09 ` Alex Williamson 2023-10-23 16:09 ` Alex Williamson 2023-10-23 16:20 ` Jason Gunthorpe 2023-10-23 16:45 ` Alex Williamson 2023-10-23 16:45 ` Alex Williamson 2023-10-23 17:27 ` Jason Gunthorpe 2023-10-25 8:34 ` Tian, Kevin 2023-10-25 8:34 ` Tian, Kevin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202310180437.jo2csM6u-lkp@intel.com \ --to=lkp@intel.com \ --cc=alex.williamson@redhat.com \ --cc=feliu@nvidia.com \ --cc=jasowang@redhat.com \ --cc=jgg@nvidia.com \ --cc=jiri@nvidia.com \ --cc=joao.m.martins@oracle.com \ --cc=kevin.tian@intel.com \ --cc=kvm@vger.kernel.org \ --cc=leonro@nvidia.com \ --cc=maorg@nvidia.com \ --cc=mst@redhat.com \ --cc=oe-kbuild-all@lists.linux.dev \ --cc=parav@nvidia.com \ --cc=si-wei.liu@oracle.com \ --cc=virtualization@lists.linux-foundation.org \ --cc=yishaih@nvidia.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.