2022-10-10 21:00:17

by kernel test robot

[permalink] [raw]
Subject: [linux-stable-rc:linux-5.15.y 4542/9999] arch/x86/kvm/hyperv.c:2185:5: warning: stack frame size (1036) exceeds limit (1024) in 'kvm_hv_hypercall'

Hi Vitaly,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.15.y
head: ebe70cd7f54131bf594f842a69d363a9e2812d67
commit: cb188e07105f2216f5efbefac95df4b6ce266906 [4542/9999] KVM: x86: hyper-v: HVCALL_SEND_IPI_EX is an XMM fast hypercall
config: i386-buildonly-randconfig-r004-20221010
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
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://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit/?id=cb188e07105f2216f5efbefac95df4b6ce266906
git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-5.15.y
git checkout cb188e07105f2216f5efbefac95df4b6ce266906
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash arch/x86/kvm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>

All warnings (new ones prefixed by >>):

>> arch/x86/kvm/hyperv.c:2185:5: warning: stack frame size (1036) exceeds limit (1024) in 'kvm_hv_hypercall' [-Wframe-larger-than]
int kvm_hv_hypercall(struct kvm_vcpu *vcpu)
^
1 warning generated.


vim +/kvm_hv_hypercall +2185 arch/x86/kvm/hyperv.c

4ad81a91119df7 Vitaly Kuznetsov 2021-05-21 2184
e83d58874ba1de Andrey Smetanin 2015-07-03 @2185 int kvm_hv_hypercall(struct kvm_vcpu *vcpu)
e83d58874ba1de Andrey Smetanin 2015-07-03 2186 {
4e62aa96d6e55c Vitaly Kuznetsov 2021-07-30 2187 struct kvm_vcpu_hv *hv_vcpu = to_hv_vcpu(vcpu);
bd38b32053eb1c Siddharth Chandrasekaran 2021-05-26 2188 struct kvm_hv_hcall hc;
bd38b32053eb1c Siddharth Chandrasekaran 2021-05-26 2189 u64 ret = HV_STATUS_SUCCESS;
e83d58874ba1de Andrey Smetanin 2015-07-03 2190
e83d58874ba1de Andrey Smetanin 2015-07-03 2191 /*
e83d58874ba1de Andrey Smetanin 2015-07-03 2192 * hypercall generates UD from non zero cpl and real mode
e83d58874ba1de Andrey Smetanin 2015-07-03 2193 * per HYPER-V spec
e83d58874ba1de Andrey Smetanin 2015-07-03 2194 */
b3646477d458fb Jason Baron 2021-01-14 2195 if (static_call(kvm_x86_get_cpl)(vcpu) != 0 || !is_protmode(vcpu)) {
e83d58874ba1de Andrey Smetanin 2015-07-03 2196 kvm_queue_exception(vcpu, UD_VECTOR);
0d9c055eaaf41b Andrey Smetanin 2016-02-11 2197 return 1;
e83d58874ba1de Andrey Smetanin 2015-07-03 2198 }
e83d58874ba1de Andrey Smetanin 2015-07-03 2199

:::::: The code at line 2185 was first introduced by commit
:::::: e83d58874ba1de74c13d3c6b05f95a023c860d25 kvm/x86: move Hyper-V MSR's/hypercall code into hyperv.c file

:::::: TO: Andrey Smetanin <[email protected]>
:::::: CC: Paolo Bonzini <[email protected]>

--
0-DAY CI Kernel Test Service
https://01.org/lkp


Attachments:
(No filename) (3.25 kB)
config (178.35 kB)
Download all attachments

2022-10-11 09:29:19

by Vitaly Kuznetsov

[permalink] [raw]
Subject: Re: [linux-stable-rc:linux-5.15.y 4542/9999] arch/x86/kvm/hyperv.c:2185:5: warning: stack frame size (1036) exceeds limit (1024) in 'kvm_hv_hypercall'

kernel test robot <[email protected]> writes:

> Hi Vitaly,
>
> FYI, the error/warning still remains.
>
> tree:
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> linux-5.15.y

...

>
> All warnings (new ones prefixed by >>):
>
>>> arch/x86/kvm/hyperv.c:2185:5: warning: stack frame size (1036) exceeds limit (1024) in 'kvm_hv_hypercall' [-Wframe-larger-than]
> int kvm_hv_hypercall(struct kvm_vcpu *vcpu)
> ^
> 1 warning generated.

For the reference, previous discussion of the problem:
https://lore.kernel.org/kvm/[email protected]/

The patch to fix this:
https://lore.kernel.org/kvm/[email protected]/

is part of "KVM: x86: hyper-v: Fine-grained TLB flush + L2 TLB flush
features" series (v11:
https://lore.kernel.org/kvm/[email protected]/)
which I hope to see in 6.2 (fingers crossed!), however, it is unlikely
to go to stable@ unless we know that there's a real problem to fix. I'll
backport it then.

--
Vitaly