Hi "Kirill,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on tip/x86/core]
[also build test ERROR on v5.9]
[cannot apply to kvm/linux-next hnaz-linux-mm/master next-20201016]
[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/Kirill-A-Shutemov/KVM-protected-...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
238c91115cd05c71447ea071624a4c9fe661f970
config: mips-randconfig-r031-20201020 (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.0
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
#
https://github.com/0day-ci/linux/commit/47745b863bc9c5221c7b7f10bb0e1456a...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Kirill-A-Shutemov/KVM-protected-memory-extension/20201020-142130
git checkout 47745b863bc9c5221c7b7f10bb0e1456a7c1416a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
arch/mips/kvm/../../../virt/kvm/kvm_main.c: In function '__kvm_map_gfn':
> arch/mips/kvm/../../../virt/kvm/kvm_main.c:2193:9: error:
implicit declaration of function 'ioremap_cache_force'; did you mean
'ioremap_cache'? [-Werror=implicit-function-declaration]
2193 | hva =
ioremap_cache_force(pfn_to_hpa(pfn), PAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~
| ioremap_cache
> arch/mips/kvm/../../../virt/kvm/kvm_main.c:2193:7: warning:
assignment to 'void *' from 'int' makes pointer from integer without a
cast [-Wint-conversion]
2193 | hva = ioremap_cache_force(pfn_to_hpa(pfn),
PAGE_SIZE);
| ^
cc1: some warnings being treated as errors
vim +2193 arch/mips/kvm/../../../virt/kvm/kvm_main.c
2157
2158 static int __kvm_map_gfn(struct kvm_memslots *slots, gfn_t gfn,
2159 struct kvm_host_map *map,
2160 struct gfn_to_pfn_cache *cache,
2161 bool atomic)
2162 {
2163 kvm_pfn_t pfn;
2164 void *hva = NULL;
2165 struct page *page = KVM_UNMAPPED_PAGE;
2166 struct kvm_memory_slot *slot = __gfn_to_memslot(slots, gfn);
2167 bool protected;
2168 u64 gen = slots->generation;
2169
2170 if (!map)
2171 return -EINVAL;
2172
2173 if (cache) {
2174 if (!cache->pfn || cache->gfn != gfn ||
2175 cache->generation != gen) {
2176 if (atomic)
2177 return -EAGAIN;
2178 kvm_cache_gfn_to_pfn(slot, gfn, cache, gen);
2179 }
2180 pfn = cache->pfn;
2181 protected = cache->protected;
2182 } else {
2183 if (atomic)
2184 return -EAGAIN;
2185 pfn = gfn_to_pfn_memslot_protected(slot, gfn, &protected);
2186 }
2187 if (is_error_noslot_pfn(pfn))
2188 return -EINVAL;
2189
2190 if (protected) {
2191 if (atomic)
2192 return -EAGAIN;
2193 hva = ioremap_cache_force(pfn_to_hpa(pfn), PAGE_SIZE);
2194 } else if (pfn_valid(pfn)) {
2195 page = pfn_to_page(pfn);
2196 if (atomic)
2197 hva = kmap_atomic(page);
2198 else
2199 hva = kmap(page);
2200 #ifdef CONFIG_HAS_IOMEM
2201 } else if (!atomic) {
2202 hva = memremap(pfn_to_hpa(pfn), PAGE_SIZE, MEMREMAP_WB);
2203 } else {
2204 return -EINVAL;
2205 #endif
2206 }
2207
2208 if (!hva)
2209 return -EFAULT;
2210
2211 map->page = page;
2212 map->hva = hva;
2213 map->pfn = pfn;
2214 map->gfn = gfn;
2215 map->protected = protected;
2216
2217 return 0;
2218 }
2219
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org