From: kernel test robot <lkp@intel.com>
To: David Woodhouse <dwmw2@infradead.org>, kvm@vger.kernel.org
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
Paolo Bonzini <pbonzini@redhat.com>,
Sean Christopherson <seanjc@google.com>,
Vitaly Kuznetsov <vkuznets@redhat.com>,
Wanpeng Li <wanpengli@tencent.com>,
Jim Mattson <jmattson@google.com>, Joerg Roedel <joro@8bytes.org>,
Joao Martins <joao.m.martins@oracle.com>,
Ankur Arora <ankur.a.arora@oracle.com>,
KarimAllah Raslan <karahmed@amazon.com>
Subject: Re: [PATCH v2 4/6] KVM: Fix kvm_map_gfn()/kvm_unmap_gfn() to take a kvm as their names imply
Date: Tue, 2 Nov 2021 11:12:21 +0800 [thread overview]
Message-ID: <202111021128.Pna2gE24-lkp@intel.com> (raw)
In-Reply-To: <20211101190314.17954-5-dwmw2@infradead.org>
[-- Attachment #1: Type: text/plain, Size: 7712 bytes --]
Hi David,
I love your patch! Yet something to improve:
[auto build test ERROR on mst-vhost/linux-next]
[also build test ERROR on linus/master v5.15 next-20211101]
[cannot apply to kvm/queue]
[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/David-Woodhouse/KVM-x86-xen-Add-in-kernel-Xen-event-channel-delivery/20211102-035038
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: x86_64-randconfig-a003-20211101 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 264d3b6d4e08401c5b50a85bd76e80b3461d77e6)
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/e0d8e28314e04209c373131aa5ca6bf57c9f1857
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review David-Woodhouse/KVM-x86-xen-Add-in-kernel-Xen-event-channel-delivery/20211102-035038
git checkout e0d8e28314e04209c373131aa5ca6bf57c9f1857
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/kvm/x86.c:3210:18: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT,
^~~~
include/linux/kvm_host.h:946:29: note: passing argument to parameter 'kvm' here
int kvm_map_gfn(struct kvm *kvm, gfn_t gfn, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:3249:16: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, false);
^~~~
include/linux/kvm_host.h:950:31: note: passing argument to parameter 'kvm' here
int kvm_unmap_gfn(struct kvm *kvm, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:4297:18: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT, &map,
^~~~
include/linux/kvm_host.h:946:29: note: passing argument to parameter 'kvm' here
int kvm_map_gfn(struct kvm *kvm, gfn_t gfn, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:4306:16: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, true);
^~~~
include/linux/kvm_host.h:950:31: note: passing argument to parameter 'kvm' here
int kvm_unmap_gfn(struct kvm *kvm, struct kvm_host_map *map,
^
4 errors generated.
vim +3210 arch/x86/kvm/x86.c
0baedd79271306 Vitaly Kuznetsov 2020-03-25 3195
c9aaa8957f203b Glauber Costa 2011-07-11 3196 static void record_steal_time(struct kvm_vcpu *vcpu)
c9aaa8957f203b Glauber Costa 2011-07-11 3197 {
b043138246a410 Boris Ostrovsky 2019-12-05 3198 struct kvm_host_map map;
b043138246a410 Boris Ostrovsky 2019-12-05 3199 struct kvm_steal_time *st;
b043138246a410 Boris Ostrovsky 2019-12-05 3200
30b5c851af7991 David Woodhouse 2021-03-01 3201 if (kvm_xen_msr_enabled(vcpu->kvm)) {
30b5c851af7991 David Woodhouse 2021-03-01 3202 kvm_xen_runstate_set_running(vcpu);
30b5c851af7991 David Woodhouse 2021-03-01 3203 return;
30b5c851af7991 David Woodhouse 2021-03-01 3204 }
30b5c851af7991 David Woodhouse 2021-03-01 3205
c9aaa8957f203b Glauber Costa 2011-07-11 3206 if (!(vcpu->arch.st.msr_val & KVM_MSR_ENABLED))
c9aaa8957f203b Glauber Costa 2011-07-11 3207 return;
c9aaa8957f203b Glauber Costa 2011-07-11 3208
b043138246a410 Boris Ostrovsky 2019-12-05 3209 /* -EAGAIN is returned in atomic context so we can just return. */
b043138246a410 Boris Ostrovsky 2019-12-05 @3210 if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT,
b043138246a410 Boris Ostrovsky 2019-12-05 3211 &map, &vcpu->arch.st.cache, false))
c9aaa8957f203b Glauber Costa 2011-07-11 3212 return;
c9aaa8957f203b Glauber Costa 2011-07-11 3213
b043138246a410 Boris Ostrovsky 2019-12-05 3214 st = map.hva +
b043138246a410 Boris Ostrovsky 2019-12-05 3215 offset_in_page(vcpu->arch.st.msr_val & KVM_STEAL_VALID_BITS);
b043138246a410 Boris Ostrovsky 2019-12-05 3216
f38a7b75267f1f Wanpeng Li 2017-12-12 3217 /*
f38a7b75267f1f Wanpeng Li 2017-12-12 3218 * Doing a TLB flush here, on the guest's behalf, can avoid
f38a7b75267f1f Wanpeng Li 2017-12-12 3219 * expensive IPIs.
f38a7b75267f1f Wanpeng Li 2017-12-12 3220 */
66570e966dd9cb Oliver Upton 2020-08-18 3221 if (guest_pv_has(vcpu, KVM_FEATURE_PV_TLB_FLUSH)) {
af3511ff7fa210 Lai Jiangshan 2021-06-01 3222 u8 st_preempted = xchg(&st->preempted, 0);
af3511ff7fa210 Lai Jiangshan 2021-06-01 3223
b382f44e98506b Wanpeng Li 2019-08-05 3224 trace_kvm_pv_tlb_flush(vcpu->vcpu_id,
af3511ff7fa210 Lai Jiangshan 2021-06-01 3225 st_preempted & KVM_VCPU_FLUSH_TLB);
af3511ff7fa210 Lai Jiangshan 2021-06-01 3226 if (st_preempted & KVM_VCPU_FLUSH_TLB)
0baedd79271306 Vitaly Kuznetsov 2020-03-25 3227 kvm_vcpu_flush_tlb_guest(vcpu);
1eff0ada88b48e Wanpeng Li 2021-05-18 3228 } else {
1eff0ada88b48e Wanpeng Li 2021-05-18 3229 st->preempted = 0;
66570e966dd9cb Oliver Upton 2020-08-18 3230 }
0b9f6c4615c993 Pan Xinhui 2016-11-02 3231
a6bd811f1209fe Boris Ostrovsky 2019-12-06 3232 vcpu->arch.st.preempted = 0;
35f3fae1784979 Wanpeng Li 2016-05-03 3233
b043138246a410 Boris Ostrovsky 2019-12-05 3234 if (st->version & 1)
b043138246a410 Boris Ostrovsky 2019-12-05 3235 st->version += 1; /* first time write, random junk */
35f3fae1784979 Wanpeng Li 2016-05-03 3236
b043138246a410 Boris Ostrovsky 2019-12-05 3237 st->version += 1;
35f3fae1784979 Wanpeng Li 2016-05-03 3238
35f3fae1784979 Wanpeng Li 2016-05-03 3239 smp_wmb();
35f3fae1784979 Wanpeng Li 2016-05-03 3240
b043138246a410 Boris Ostrovsky 2019-12-05 3241 st->steal += current->sched_info.run_delay -
c54cdf141c40a5 Liang Chen 2016-03-16 3242 vcpu->arch.st.last_steal;
c54cdf141c40a5 Liang Chen 2016-03-16 3243 vcpu->arch.st.last_steal = current->sched_info.run_delay;
35f3fae1784979 Wanpeng Li 2016-05-03 3244
35f3fae1784979 Wanpeng Li 2016-05-03 3245 smp_wmb();
35f3fae1784979 Wanpeng Li 2016-05-03 3246
b043138246a410 Boris Ostrovsky 2019-12-05 3247 st->version += 1;
c9aaa8957f203b Glauber Costa 2011-07-11 3248
b043138246a410 Boris Ostrovsky 2019-12-05 3249 kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, false);
c9aaa8957f203b Glauber Costa 2011-07-11 3250 }
c9aaa8957f203b Glauber Costa 2011-07-11 3251
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 31224 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH v2 4/6] KVM: Fix kvm_map_gfn()/kvm_unmap_gfn() to take a kvm as their names imply
Date: Tue, 02 Nov 2021 11:12:21 +0800 [thread overview]
Message-ID: <202111021128.Pna2gE24-lkp@intel.com> (raw)
In-Reply-To: <20211101190314.17954-5-dwmw2@infradead.org>
[-- Attachment #1: Type: text/plain, Size: 7834 bytes --]
Hi David,
I love your patch! Yet something to improve:
[auto build test ERROR on mst-vhost/linux-next]
[also build test ERROR on linus/master v5.15 next-20211101]
[cannot apply to kvm/queue]
[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/David-Woodhouse/KVM-x86-xen-Add-in-kernel-Xen-event-channel-delivery/20211102-035038
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: x86_64-randconfig-a003-20211101 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 264d3b6d4e08401c5b50a85bd76e80b3461d77e6)
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/e0d8e28314e04209c373131aa5ca6bf57c9f1857
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review David-Woodhouse/KVM-x86-xen-Add-in-kernel-Xen-event-channel-delivery/20211102-035038
git checkout e0d8e28314e04209c373131aa5ca6bf57c9f1857
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/kvm/x86.c:3210:18: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT,
^~~~
include/linux/kvm_host.h:946:29: note: passing argument to parameter 'kvm' here
int kvm_map_gfn(struct kvm *kvm, gfn_t gfn, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:3249:16: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, false);
^~~~
include/linux/kvm_host.h:950:31: note: passing argument to parameter 'kvm' here
int kvm_unmap_gfn(struct kvm *kvm, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:4297:18: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT, &map,
^~~~
include/linux/kvm_host.h:946:29: note: passing argument to parameter 'kvm' here
int kvm_map_gfn(struct kvm *kvm, gfn_t gfn, struct kvm_host_map *map,
^
arch/x86/kvm/x86.c:4306:16: error: incompatible pointer types passing 'struct kvm_vcpu *' to parameter of type 'struct kvm *' [-Werror,-Wincompatible-pointer-types]
kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, true);
^~~~
include/linux/kvm_host.h:950:31: note: passing argument to parameter 'kvm' here
int kvm_unmap_gfn(struct kvm *kvm, struct kvm_host_map *map,
^
4 errors generated.
vim +3210 arch/x86/kvm/x86.c
0baedd79271306 Vitaly Kuznetsov 2020-03-25 3195
c9aaa8957f203b Glauber Costa 2011-07-11 3196 static void record_steal_time(struct kvm_vcpu *vcpu)
c9aaa8957f203b Glauber Costa 2011-07-11 3197 {
b043138246a410 Boris Ostrovsky 2019-12-05 3198 struct kvm_host_map map;
b043138246a410 Boris Ostrovsky 2019-12-05 3199 struct kvm_steal_time *st;
b043138246a410 Boris Ostrovsky 2019-12-05 3200
30b5c851af7991 David Woodhouse 2021-03-01 3201 if (kvm_xen_msr_enabled(vcpu->kvm)) {
30b5c851af7991 David Woodhouse 2021-03-01 3202 kvm_xen_runstate_set_running(vcpu);
30b5c851af7991 David Woodhouse 2021-03-01 3203 return;
30b5c851af7991 David Woodhouse 2021-03-01 3204 }
30b5c851af7991 David Woodhouse 2021-03-01 3205
c9aaa8957f203b Glauber Costa 2011-07-11 3206 if (!(vcpu->arch.st.msr_val & KVM_MSR_ENABLED))
c9aaa8957f203b Glauber Costa 2011-07-11 3207 return;
c9aaa8957f203b Glauber Costa 2011-07-11 3208
b043138246a410 Boris Ostrovsky 2019-12-05 3209 /* -EAGAIN is returned in atomic context so we can just return. */
b043138246a410 Boris Ostrovsky 2019-12-05 @3210 if (kvm_map_gfn(vcpu, vcpu->arch.st.msr_val >> PAGE_SHIFT,
b043138246a410 Boris Ostrovsky 2019-12-05 3211 &map, &vcpu->arch.st.cache, false))
c9aaa8957f203b Glauber Costa 2011-07-11 3212 return;
c9aaa8957f203b Glauber Costa 2011-07-11 3213
b043138246a410 Boris Ostrovsky 2019-12-05 3214 st = map.hva +
b043138246a410 Boris Ostrovsky 2019-12-05 3215 offset_in_page(vcpu->arch.st.msr_val & KVM_STEAL_VALID_BITS);
b043138246a410 Boris Ostrovsky 2019-12-05 3216
f38a7b75267f1f Wanpeng Li 2017-12-12 3217 /*
f38a7b75267f1f Wanpeng Li 2017-12-12 3218 * Doing a TLB flush here, on the guest's behalf, can avoid
f38a7b75267f1f Wanpeng Li 2017-12-12 3219 * expensive IPIs.
f38a7b75267f1f Wanpeng Li 2017-12-12 3220 */
66570e966dd9cb Oliver Upton 2020-08-18 3221 if (guest_pv_has(vcpu, KVM_FEATURE_PV_TLB_FLUSH)) {
af3511ff7fa210 Lai Jiangshan 2021-06-01 3222 u8 st_preempted = xchg(&st->preempted, 0);
af3511ff7fa210 Lai Jiangshan 2021-06-01 3223
b382f44e98506b Wanpeng Li 2019-08-05 3224 trace_kvm_pv_tlb_flush(vcpu->vcpu_id,
af3511ff7fa210 Lai Jiangshan 2021-06-01 3225 st_preempted & KVM_VCPU_FLUSH_TLB);
af3511ff7fa210 Lai Jiangshan 2021-06-01 3226 if (st_preempted & KVM_VCPU_FLUSH_TLB)
0baedd79271306 Vitaly Kuznetsov 2020-03-25 3227 kvm_vcpu_flush_tlb_guest(vcpu);
1eff0ada88b48e Wanpeng Li 2021-05-18 3228 } else {
1eff0ada88b48e Wanpeng Li 2021-05-18 3229 st->preempted = 0;
66570e966dd9cb Oliver Upton 2020-08-18 3230 }
0b9f6c4615c993 Pan Xinhui 2016-11-02 3231
a6bd811f1209fe Boris Ostrovsky 2019-12-06 3232 vcpu->arch.st.preempted = 0;
35f3fae1784979 Wanpeng Li 2016-05-03 3233
b043138246a410 Boris Ostrovsky 2019-12-05 3234 if (st->version & 1)
b043138246a410 Boris Ostrovsky 2019-12-05 3235 st->version += 1; /* first time write, random junk */
35f3fae1784979 Wanpeng Li 2016-05-03 3236
b043138246a410 Boris Ostrovsky 2019-12-05 3237 st->version += 1;
35f3fae1784979 Wanpeng Li 2016-05-03 3238
35f3fae1784979 Wanpeng Li 2016-05-03 3239 smp_wmb();
35f3fae1784979 Wanpeng Li 2016-05-03 3240
b043138246a410 Boris Ostrovsky 2019-12-05 3241 st->steal += current->sched_info.run_delay -
c54cdf141c40a5 Liang Chen 2016-03-16 3242 vcpu->arch.st.last_steal;
c54cdf141c40a5 Liang Chen 2016-03-16 3243 vcpu->arch.st.last_steal = current->sched_info.run_delay;
35f3fae1784979 Wanpeng Li 2016-05-03 3244
35f3fae1784979 Wanpeng Li 2016-05-03 3245 smp_wmb();
35f3fae1784979 Wanpeng Li 2016-05-03 3246
b043138246a410 Boris Ostrovsky 2019-12-05 3247 st->version += 1;
c9aaa8957f203b Glauber Costa 2011-07-11 3248
b043138246a410 Boris Ostrovsky 2019-12-05 3249 kvm_unmap_gfn(vcpu, &map, &vcpu->arch.st.cache, true, false);
c9aaa8957f203b Glauber Costa 2011-07-11 3250 }
c9aaa8957f203b Glauber Costa 2011-07-11 3251
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 31224 bytes --]
next prev parent reply other threads:[~2021-11-02 3:13 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-01 19:03 [PATCH v2 0/6] KVM: x86/xen: Add in-kernel Xen event channel delivery David Woodhouse
2021-11-01 19:03 ` [PATCH v2 1/6] KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO David Woodhouse
2021-11-01 19:03 ` [PATCH v2 2/6] KVM: selftests: Add event channel upcall support to xen_shinfo_test David Woodhouse
2021-11-01 19:03 ` [PATCH v2 3/6] KVM: x86/xen: Use sizeof_field() instead of open-coding it David Woodhouse
2021-11-01 19:03 ` [PATCH v2 4/6] KVM: Fix kvm_map_gfn()/kvm_unmap_gfn() to take a kvm as their names imply David Woodhouse
2021-11-02 3:12 ` kernel test robot [this message]
2021-11-02 3:12 ` kernel test robot
2021-11-02 22:33 ` kernel test robot
2021-11-02 22:33 ` kernel test robot
2021-11-01 19:03 ` [PATCH v2 5/6] KVM: x86/xen: Maintain valid mapping of Xen shared_info page David Woodhouse
2021-11-02 1:23 ` kernel test robot
2021-11-02 1:23 ` kernel test robot
2021-11-04 19:05 ` David Woodhouse
2021-11-01 19:03 ` [PATCH v2 6/6] KVM: x86/xen: Add KVM_IRQ_ROUTING_XEN_EVTCHN and event channel delivery David Woodhouse
2021-11-02 0:25 ` David Woodhouse
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=202111021128.Pna2gE24-lkp@intel.com \
--to=lkp@intel.com \
--cc=ankur.a.arora@oracle.com \
--cc=dwmw2@infradead.org \
--cc=jmattson@google.com \
--cc=joao.m.martins@oracle.com \
--cc=joro@8bytes.org \
--cc=karahmed@amazon.com \
--cc=kbuild-all@lists.01.org \
--cc=kvm@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.com \
--cc=vkuznets@redhat.com \
--cc=wanpengli@tencent.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: link
Be 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.