[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKwvOdnEyGLi14b0qsc2=aSRafCrQD-Zyh+Oq+E-vx+c1viErg@mail.gmail.com>
Date: Mon, 21 Mar 2022 10:51:29 -0700
From: Nick Desaulniers <ndesaulniers@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
linux-kernel@...r.kernel.org, kernel test robot <lkp@...el.com>,
Mark Rutland <mark.rutland@....com>
Subject: Re: [peterz-queue:locking/core 17/19] arch/x86/kvm/x86.h:29:30:
error: too many arguments to function call, expected 0, have 1
On Fri, Mar 18, 2022 at 9:10 PM kernel test robot <lkp@...el.com> wrote:
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git locking/core
> head: 200a79c670d24d4d9a75a6a9cbfd14af2f5d0ad9
> commit: 5c9f3806a4400c2957abeea9419547f856457a20 [17/19] lockdep: Fix -Wunused-parameter for _THIS_IP_
> config: x86_64-randconfig-a014 (https://download.01.org/0day-ci/archive/20220319/202203191213.tC0sjaY7-lkp@intel.com/config)
> compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project a6e70e4056dff962ec634c5bd4f2f4105a0bef71)
> 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/peterz/queue.git/commit/?id=5c9f3806a4400c2957abeea9419547f856457a20
> git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
> git fetch --no-tags peterz-queue locking/core
> git checkout 5c9f3806a4400c2957abeea9419547f856457a20
> # save the config file to linux build tree
> mkdir build_dir
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@...el.com>
>
> All errors (new ones prefixed by >>):
>
> In file included from arch/x86/kvm/x86.c:22:
> In file included from arch/x86/kvm/mmu.h:7:
> In file included from arch/x86/kvm/cpuid.h:5:
> >> arch/x86/kvm/x86.h:29:30: error: too many arguments to function call, expected 0, have 1
> lockdep_hardirqs_on_prepare(CALLER_ADDR0);
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~
Peter, I think you dropped the hunk to include/linux/kvm_host.h when
applying this patch?
Compare:
https://lore.kernel.org/lkml/20220314221909.2027027-1-ndesaulniers@google.com/
vs
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/patch/?id=1923a1429507b15b2061968614a6943365159738
> include/linux/ftrace.h:879:22: note: expanded from macro 'CALLER_ADDR0'
> #define CALLER_ADDR0 ((unsigned long)ftrace_return_address0)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/linux/irqflags.h:23:15: note: 'lockdep_hardirqs_on_prepare' declared here
> extern void lockdep_hardirqs_on_prepare(void);
> ^
> In file included from arch/x86/kvm/x86.c:41:
> include/linux/mman.h:158:9: warning: division by zero is undefined [-Wdivision-by-zero]
> _calc_vm_trans(flags, MAP_SYNC, VM_SYNC ) |
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/linux/mman.h:136:21: note: expanded from macro '_calc_vm_trans'
> : ((x) & (bit1)) / ((bit1) / (bit2))))
> ^ ~~~~~~~~~~~~~~~~~
> 1 warning and 1 error generated.
> --
> In file included from arch/x86/kvm/emulate.c:28:
> >> arch/x86/kvm/x86.h:29:30: error: too many arguments to function call, expected 0, have 1
> lockdep_hardirqs_on_prepare(CALLER_ADDR0);
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~
> include/linux/ftrace.h:879:22: note: expanded from macro 'CALLER_ADDR0'
> #define CALLER_ADDR0 ((unsigned long)ftrace_return_address0)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/linux/irqflags.h:23:15: note: 'lockdep_hardirqs_on_prepare' declared here
> extern void lockdep_hardirqs_on_prepare(void);
> ^
> 1 error generated.
>
>
> vim +29 arch/x86/kvm/x86.h
>
> 65297341d8e15b Uros Bizjak 2021-08-09 12
> bc908e091b3264 Sean Christopherson 2021-05-04 13 static __always_inline void kvm_guest_enter_irqoff(void)
> bc908e091b3264 Sean Christopherson 2021-05-04 14 {
> bc908e091b3264 Sean Christopherson 2021-05-04 15 /*
> bc908e091b3264 Sean Christopherson 2021-05-04 16 * VMENTER enables interrupts (host state), but the kernel state is
> bc908e091b3264 Sean Christopherson 2021-05-04 17 * interrupts disabled when this is invoked. Also tell RCU about
> bc908e091b3264 Sean Christopherson 2021-05-04 18 * it. This is the same logic as for exit_to_user_mode().
> bc908e091b3264 Sean Christopherson 2021-05-04 19 *
> bc908e091b3264 Sean Christopherson 2021-05-04 20 * This ensures that e.g. latency analysis on the host observes
> bc908e091b3264 Sean Christopherson 2021-05-04 21 * guest mode as interrupt enabled.
> bc908e091b3264 Sean Christopherson 2021-05-04 22 *
> bc908e091b3264 Sean Christopherson 2021-05-04 23 * guest_enter_irqoff() informs context tracking about the
> bc908e091b3264 Sean Christopherson 2021-05-04 24 * transition to guest mode and if enabled adjusts RCU state
> bc908e091b3264 Sean Christopherson 2021-05-04 25 * accordingly.
> bc908e091b3264 Sean Christopherson 2021-05-04 26 */
> bc908e091b3264 Sean Christopherson 2021-05-04 27 instrumentation_begin();
> bc908e091b3264 Sean Christopherson 2021-05-04 28 trace_hardirqs_on_prepare();
> bc908e091b3264 Sean Christopherson 2021-05-04 @29 lockdep_hardirqs_on_prepare(CALLER_ADDR0);
> bc908e091b3264 Sean Christopherson 2021-05-04 30 instrumentation_end();
> bc908e091b3264 Sean Christopherson 2021-05-04 31
> bc908e091b3264 Sean Christopherson 2021-05-04 32 guest_enter_irqoff();
> bc908e091b3264 Sean Christopherson 2021-05-04 33 lockdep_hardirqs_on(CALLER_ADDR0);
> bc908e091b3264 Sean Christopherson 2021-05-04 34 }
> bc908e091b3264 Sean Christopherson 2021-05-04 35
>
> :::::: The code at line 29 was first introduced by commit
> :::::: bc908e091b3264672889162733020048901021fb KVM: x86: Consolidate guest enter/exit logic to common helpers
>
> :::::: TO: Sean Christopherson <seanjc@...gle.com>
> :::::: CC: Thomas Gleixner <tglx@...utronix.de>
>
> ---
> 0-DAY CI Kernel Test Service
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
--
Thanks,
~Nick Desaulniers
Powered by blists - more mailing lists