From: kernel test robot <lkp@intel.com>
To: Nuno Das Neves <nunodasneves@linux.microsoft.com>,
linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org,
x86@kernel.org, linux-arm-kernel@lists.infradead.org,
linux-arch@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev, patches@lists.linux.dev,
mikelley@microsoft.com, kys@microsoft.com, wei.liu@kernel.org,
gregkh@linuxfoundation.org, haiyangz@microsoft.com,
decui@microsoft.com, apais@linux.microsoft.com,
Tianyu.Lan@microsoft.com, ssengar@linux.microsoft.com,
mukeshrathor@microsoft.com, stanislav.kinsburskiy@gmail.com,
jinankjain@linux.microsoft.com, vkuznets@redhat.com,
tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
dave.hansen@linux.intel.com, hpa@zytor.com, will@kernel.org,
catalin.marinas@arm.com
Subject: Re: [PATCH v4 15/15] Drivers: hv: Add modules to expose /dev/mshv to VMMs running on Hyper-V
Date: Mon, 6 Nov 2023 12:03:31 +0800 [thread overview]
Message-ID: <202311061139.Zrlkam3w-lkp@intel.com> (raw)
In-Reply-To: <1696010501-24584-16-git-send-email-nunodasneves@linux.microsoft.com>
Hi Nuno,
kernel test robot noticed the following build warnings:
[auto build test WARNING on arnd-asm-generic/master]
[also build test WARNING on tip/x86/core arm64/for-next/core linus/master v6.6 next-20231103]
[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/Nuno-Das-Neves/hyperv-tlfs-Change-shared-HV_REGISTER_-defines-to-HV_MSR_/20230930-041305
base: https://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git master
patch link: https://lore.kernel.org/r/1696010501-24584-16-git-send-email-nunodasneves%40linux.microsoft.com
patch subject: [PATCH v4 15/15] Drivers: hv: Add modules to expose /dev/mshv to VMMs running on Hyper-V
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20231106/202311061139.Zrlkam3w-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231106/202311061139.Zrlkam3w-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/202311061139.Zrlkam3w-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/hv/hv_call.c:21:5: warning: no previous prototype for 'hv_call_get_vp_registers' [-Wmissing-prototypes]
21 | int hv_call_get_vp_registers(u32 vp_index, u64 partition_id, u16 count,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/hv_call.c:65:5: warning: no previous prototype for 'hv_call_set_vp_registers' [-Wmissing-prototypes]
65 | int hv_call_set_vp_registers(u32 vp_index, u64 partition_id, u16 count,
| ^~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/hv/mshv_root_main.c:1816:12: warning: no previous prototype for 'mshv_root_init' [-Wmissing-prototypes]
1816 | int __init mshv_root_init(void)
| ^~~~~~~~~~~~~~
>> drivers/hv/mshv_root_main.c:1896:13: warning: no previous prototype for 'mshv_root_exit' [-Wmissing-prototypes]
1896 | void __exit mshv_root_exit(void)
| ^~~~~~~~~~~~~~
--
>> drivers/hv/mshv_synic.c:27:1: warning: no previous prototype for 'synic_event_ring_get_queued_port' [-Wmissing-prototypes]
27 | synic_event_ring_get_queued_port(u32 sint_index)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/hv/mshv_root_hv_call.c:46:5: warning: no previous prototype for 'hv_call_withdraw_memory' [-Wmissing-prototypes]
46 | int hv_call_withdraw_memory(u64 count, int node, u64 partition_id)
| ^~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:94:5: warning: no previous prototype for 'hv_call_create_partition' [-Wmissing-prototypes]
94 | int hv_call_create_partition(u64 flags,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:139:5: warning: no previous prototype for 'hv_call_initialize_partition' [-Wmissing-prototypes]
139 | int hv_call_initialize_partition(u64 partition_id)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:166:5: warning: no previous prototype for 'hv_call_finalize_partition' [-Wmissing-prototypes]
166 | int hv_call_finalize_partition(u64 partition_id)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:177:5: warning: no previous prototype for 'hv_call_delete_partition' [-Wmissing-prototypes]
177 | int hv_call_delete_partition(u64 partition_id)
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:188:5: warning: no previous prototype for 'hv_call_map_gpa_pages' [-Wmissing-prototypes]
188 | int hv_call_map_gpa_pages(u64 partition_id, u64 gpa_target, u64 page_count,
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:241:5: warning: no previous prototype for 'hv_call_unmap_gpa_pages' [-Wmissing-prototypes]
241 | int hv_call_unmap_gpa_pages(u64 partition_id, u64 gpa_target, u64 page_count,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:277:5: warning: no previous prototype for 'hv_call_get_gpa_access_states' [-Wmissing-prototypes]
277 | int hv_call_get_gpa_access_states(u64 partition_id, u32 count,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:320:5: warning: no previous prototype for 'hv_call_install_intercept' [-Wmissing-prototypes]
320 | int hv_call_install_intercept(u64 partition_id, u32 access_type,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:350:5: warning: no previous prototype for 'hv_call_assert_virtual_interrupt' [-Wmissing-prototypes]
350 | int hv_call_assert_virtual_interrupt(u64 partition_id, u32 vector, u64 dest_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:372:5: warning: no previous prototype for 'hv_call_get_vp_state' [-Wmissing-prototypes]
372 | int hv_call_get_vp_state(u32 vp_index, u64 partition_id,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:429:5: warning: no previous prototype for 'hv_call_set_vp_state' [-Wmissing-prototypes]
429 | int hv_call_set_vp_state(u32 vp_index, u64 partition_id,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:494:5: warning: no previous prototype for 'hv_call_map_vp_state_page' [-Wmissing-prototypes]
494 | int hv_call_map_vp_state_page(u64 partition_id, u32 vp_index, u32 type,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:531:5: warning: no previous prototype for 'hv_call_unmap_vp_state_page' [-Wmissing-prototypes]
531 | int hv_call_unmap_vp_state_page(u64 partition_id, u32 vp_index, u32 type)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:554:5: warning: no previous prototype for 'hv_call_get_partition_property' [-Wmissing-prototypes]
554 | int hv_call_get_partition_property(u64 partition_id, u64 property_code,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:581:5: warning: no previous prototype for 'hv_call_set_partition_property' [-Wmissing-prototypes]
581 | int hv_call_set_partition_property(u64 partition_id, u64 property_code,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:609:5: warning: no previous prototype for 'hv_call_translate_virtual_address' [-Wmissing-prototypes]
609 | int hv_call_translate_virtual_address(u32 vp_index, u64 partition_id, u64 flags,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:648:1: warning: no previous prototype for 'hv_call_clear_virtual_interrupt' [-Wmissing-prototypes]
648 | hv_call_clear_virtual_interrupt(u64 partition_id)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:662:1: warning: no previous prototype for 'hv_call_create_port' [-Wmissing-prototypes]
662 | hv_call_create_port(u64 port_partition_id, union hv_port_id port_id,
| ^~~~~~~~~~~~~~~~~~~
>> drivers/hv/mshv_root_hv_call.c:703:1: warning: no previous prototype for 'hv_call_delete_port' [-Wmissing-prototypes]
703 | hv_call_delete_port(u64 port_partition_id, union hv_port_id port_id)
| ^~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:721:1: warning: no previous prototype for 'hv_call_connect_port' [-Wmissing-prototypes]
721 | hv_call_connect_port(u64 port_partition_id, union hv_port_id port_id,
| ^~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:761:1: warning: no previous prototype for 'hv_call_disconnect_port' [-Wmissing-prototypes]
761 | hv_call_disconnect_port(u64 connection_partition_id,
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:781:1: warning: no previous prototype for 'hv_call_notify_port_ring_empty' [-Wmissing-prototypes]
781 | hv_call_notify_port_ring_empty(u32 sint_index)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:798:5: warning: no previous prototype for 'hv_call_register_intercept_result' [-Wmissing-prototypes]
798 | int hv_call_register_intercept_result(u32 vp_index, u64 partition_id,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:834:5: warning: no previous prototype for 'hv_call_signal_event_direct' [-Wmissing-prototypes]
834 | int hv_call_signal_event_direct(u32 vp_index, u64 partition_id, u8 vtl,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:861:5: warning: no previous prototype for 'hv_call_post_message_direct' [-Wmissing-prototypes]
861 | int hv_call_post_message_direct(u32 vp_index, u64 partition_id, u8 vtl,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hv/mshv_root_hv_call.c:883:5: warning: no previous prototype for 'hv_call_get_vp_cpuid_values' [-Wmissing-prototypes]
883 | int hv_call_get_vp_cpuid_values(u32 vp_index, u64 partition_id,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/hv/xfer_to_guest.c:15:5: warning: no previous prototype for 'mshv_xfer_to_guest_mode_handle_work' [-Wmissing-prototypes]
15 | int mshv_xfer_to_guest_mode_handle_work(unsigned long ti_work)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/hv_call_get_vp_registers +21 drivers/hv/hv_call.c
14
15 #define HV_GET_REGISTER_BATCH_SIZE \
16 (HV_HYP_PAGE_SIZE / sizeof(union hv_register_value))
17 #define HV_SET_REGISTER_BATCH_SIZE \
18 ((HV_HYP_PAGE_SIZE - sizeof(struct hv_input_set_vp_registers)) \
19 / sizeof(struct hv_register_assoc))
20
> 21 int hv_call_get_vp_registers(u32 vp_index, u64 partition_id, u16 count,
22 union hv_input_vtl input_vtl,
23 struct hv_register_assoc *registers)
24 {
25 struct hv_input_get_vp_registers *input_page;
26 union hv_register_value *output_page;
27 u16 completed = 0;
28 unsigned long remaining = count;
29 int rep_count, i;
30 u64 status = HV_STATUS_SUCCESS;
31 unsigned long flags;
32
33 local_irq_save(flags);
34
35 input_page = *this_cpu_ptr(hyperv_pcpu_input_arg);
36 output_page = *this_cpu_ptr(hyperv_pcpu_output_arg);
37
38 input_page->partition_id = partition_id;
39 input_page->vp_index = vp_index;
40 input_page->input_vtl.as_uint8 = input_vtl.as_uint8;
41 input_page->rsvd_z8 = 0;
42 input_page->rsvd_z16 = 0;
43
44 while (remaining) {
45 rep_count = min(remaining, HV_GET_REGISTER_BATCH_SIZE);
46 for (i = 0; i < rep_count; ++i)
47 input_page->names[i] = registers[i].name;
48
49 status = hv_do_rep_hypercall(HVCALL_GET_VP_REGISTERS, rep_count,
50 0, input_page, output_page);
51 if (!hv_result_success(status))
52 break;
53 completed = hv_repcomp(status);
54 for (i = 0; i < completed; ++i)
55 registers[i].value = output_page[i];
56
57 registers += completed;
58 remaining -= completed;
59 }
60 local_irq_restore(flags);
61
62 return hv_status_to_errno(status);
63 }
64
> 65 int hv_call_set_vp_registers(u32 vp_index, u64 partition_id, u16 count,
66 union hv_input_vtl input_vtl,
67 struct hv_register_assoc *registers)
68 {
69 struct hv_input_set_vp_registers *input_page;
70 u16 completed = 0;
71 unsigned long remaining = count;
72 int rep_count;
73 u64 status = HV_STATUS_SUCCESS;
74 unsigned long flags;
75
76 local_irq_save(flags);
77 input_page = *this_cpu_ptr(hyperv_pcpu_input_arg);
78
79 input_page->partition_id = partition_id;
80 input_page->vp_index = vp_index;
81 input_page->input_vtl.as_uint8 = input_vtl.as_uint8;
82 input_page->rsvd_z8 = 0;
83 input_page->rsvd_z16 = 0;
84
85 while (remaining) {
86 rep_count = min(remaining, HV_SET_REGISTER_BATCH_SIZE);
87 memcpy(input_page->elements, registers,
88 sizeof(struct hv_register_assoc) * rep_count);
89
90 status = hv_do_rep_hypercall(HVCALL_SET_VP_REGISTERS, rep_count,
91 0, input_page, NULL);
92 if (!hv_result_success(status))
93 break;
94 completed = hv_repcomp(status);
95 registers += completed;
96 remaining -= completed;
97 }
98
99 local_irq_restore(flags);
100
101 return hv_status_to_errno(status);
102 }
103
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2023-11-06 4:04 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-29 18:01 [PATCH v4 00/15] Introduce /dev/mshv drivers Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 01/15] hyperv-tlfs: Change shared HV_REGISTER_* defines to HV_MSR_* Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 02/15] mshyperv: Introduce hv_get_hypervisor_version function Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 03/15] mshyperv: Introduce numa_node_to_proximity_domain_info Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 04/15] asm-generic/mshyperv: Introduce hv_recommend_using_aeoi() Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 05/15] hyperv: Move hv_connection_id to hyperv-tlfs Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 06/15] hyperv-tlfs: Introduce hv_status_to_string and hv_status_to_errno Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 07/15] Drivers: hv: Move hv_call_deposit_pages and hv_call_create_vp to common code Nuno Das Neves
2023-10-03 2:51 ` kernel test robot
2023-09-29 18:01 ` [PATCH v4 08/15] Drivers: hv: Introduce per-cpu event ring tail Nuno Das Neves
2023-09-30 11:26 ` kernel test robot
2023-09-29 18:01 ` [PATCH v4 09/15] Drivers: hv: Introduce hv_output_arg_exists in hv_common.c Nuno Das Neves
2023-10-02 19:29 ` Alex Ionescu
2023-10-04 18:27 ` Nuno Das Neves
2023-10-06 18:13 ` Long Li
2023-09-29 18:01 ` [PATCH v4 10/15] x86: hyperv: Add mshv_handler irq handler and setup function Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 11/15] Drivers: hv: export vmbus_isr, hv_context and hv_post_message Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 12/15] Documentation: Reserve ioctl number for mshv driver Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 13/15] uapi: hyperv: Add mshv driver headers defining hypervisor ABIs Nuno Das Neves
2023-09-30 6:09 ` Greg KH
2023-09-30 22:01 ` Wei Liu
2023-10-01 6:19 ` Greg KH
2023-10-03 23:29 ` Wei Liu
2023-10-04 6:11 ` Greg KH
2023-10-04 18:14 ` Wei Liu
2023-10-05 3:59 ` Wei Liu
2023-10-03 23:37 ` Nuno Das Neves
2023-10-04 6:09 ` Greg KH
2023-10-04 17:36 ` Dexuan Cui
2023-10-04 17:50 ` Greg KH
2023-10-04 18:16 ` Nuno Das Neves
2023-10-05 6:26 ` Greg KH
2023-09-30 16:33 ` kernel test robot
2023-10-05 10:27 ` Greg KH
2023-09-29 18:01 ` [PATCH v4 14/15] asm-generic: hyperv: Use new Hyper-V headers conditionally Nuno Das Neves
2023-10-02 19:35 ` Alex Ionescu
2023-10-03 0:41 ` Nuno Das Neves
2023-10-05 19:52 ` Alex Ionescu
2023-10-11 23:32 ` Nuno Das Neves
2023-09-29 18:01 ` [PATCH v4 15/15] Drivers: hv: Add modules to expose /dev/mshv to VMMs running on Hyper-V Nuno Das Neves
2023-09-30 6:02 ` kernel test robot
2023-09-30 6:11 ` Greg KH
2023-09-30 18:11 ` Wei Liu
2023-09-30 18:31 ` Greg KH
2023-09-30 21:13 ` Wei Liu
2023-10-01 6:20 ` Greg KH
2023-10-03 23:35 ` Wei Liu
2023-11-06 4:03 ` kernel test robot [this message]
2023-11-06 11:51 ` kernel test robot
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=202311061139.Zrlkam3w-lkp@intel.com \
--to=lkp@intel.com \
--cc=Tianyu.Lan@microsoft.com \
--cc=apais@linux.microsoft.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=dave.hansen@linux.intel.com \
--cc=decui@microsoft.com \
--cc=gregkh@linuxfoundation.org \
--cc=haiyangz@microsoft.com \
--cc=hpa@zytor.com \
--cc=jinankjain@linux.microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=mingo@redhat.com \
--cc=mukeshrathor@microsoft.com \
--cc=nunodasneves@linux.microsoft.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=patches@lists.linux.dev \
--cc=ssengar@linux.microsoft.com \
--cc=stanislav.kinsburskiy@gmail.com \
--cc=tglx@linutronix.de \
--cc=vkuznets@redhat.com \
--cc=wei.liu@kernel.org \
--cc=will@kernel.org \
--cc=x86@kernel.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).