Hi Quentin,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on kvmarm/next]
[also build test WARNING on arm64/for-next/core linus/master v5.12-rc3 next-20210319]
[cannot apply to linux/master]
[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]
url:
https://github.com/0day-ci/linux/commits/Quentin-Perret/KVM-arm64-Stage-2...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git next
config: arm64-randconfig-r036-20210318 (attached as .config)
compiler: clang version 13.0.0 (
https://github.com/llvm/llvm-project
fcc1ce00931751ac02498986feb37744e9ace8de)
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
#
https://github.com/0day-ci/linux/commit/d9cbcf8f8115531ae6333bb07ed1d8652...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Quentin-Perret/KVM-arm64-Stage-2-for-the-host/20210319-180524
git checkout d9cbcf8f8115531ae6333bb07ed1d865233e7e10
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
> arch/arm64/kvm/hyp/nvhe/setup.c:133:17: warning: no previous
prototype for function '__pkvm_init_finalise' [-Wmissing-prototypes]
void
__noreturn __pkvm_init_finalise(void)
^
arch/arm64/kvm/hyp/nvhe/setup.c:133:1: note: declare 'static' if the function
is not intended to be used outside of this translation unit
void __noreturn __pkvm_init_finalise(void)
^
static
1 warning generated.
vim +/__pkvm_init_finalise +133 arch/arm64/kvm/hyp/nvhe/setup.c
132
133 void __noreturn __pkvm_init_finalise(void)
134 {
135 struct kvm_host_data *host_data = this_cpu_ptr(&kvm_host_data);
136 struct kvm_cpu_context *host_ctxt = &host_data->host_ctxt;
137 unsigned long nr_pages, reserved_pages, pfn;
138 int ret;
139
140 /* Now that the vmemmap is backed, install the full-fledged allocator */
141 pfn = hyp_virt_to_pfn(hyp_pgt_base);
142 nr_pages = hyp_s1_pgtable_pages();
143 reserved_pages = hyp_early_alloc_nr_used_pages();
144 ret = hyp_pool_init(&hpool, pfn, nr_pages, reserved_pages);
145 if (ret)
146 goto out;
147
148 pkvm_pgtable_mm_ops = (struct kvm_pgtable_mm_ops) {
149 .zalloc_page = hyp_zalloc_hyp_page,
150 .phys_to_virt = hyp_phys_to_virt,
151 .virt_to_phys = hyp_virt_to_phys,
152 .get_page = hyp_get_page,
153 .put_page = hyp_put_page,
154 };
155 pkvm_pgtable.mm_ops = &pkvm_pgtable_mm_ops;
156
157 out:
158 /*
159 * We tail-called to here from handle___pkvm_init() and will not return,
160 * so make sure to propagate the return value to the host.
161 */
162 cpu_reg(host_ctxt, 1) = ret;
163
164 __host_enter(host_ctxt);
165 }
166
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org