All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Tianrui Zhao <zhaotianrui@loongson.cn>,
	Paolo Bonzini <pbonzini@redhat.com>
Cc: oe-kbuild-all@lists.linux.dev,
	Huacai Chen <chenhuacai@kernel.org>,
	WANG Xuerui <kernel@xen0n.name>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	loongarch@lists.linux.dev, linux-kernel@vger.kernel.org,
	kvm@vger.kernel.org, Jens Axboe <axboe@kernel.dk>,
	Mark Brown <broonie@kernel.org>,
	Alex Deucher <alexander.deucher@amd.com>,
	Oliver Upton <oliver.upton@linux.dev>,
	maobibo@loongson.cn
Subject: Re: [PATCH v2 29/29] LoongArch: KVM: Enable kvm config and add the makefile
Date: Mon, 20 Feb 2023 17:47:33 +0800	[thread overview]
Message-ID: <202302201710.ERtpPSuD-lkp@intel.com> (raw)
In-Reply-To: <20230220065735.1282809-30-zhaotianrui@loongson.cn>

Hi Tianrui,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linus/master]
[also build test WARNING on v6.2]
[cannot apply to kvm/queue kvm/linux-next next-20230220]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Tianrui-Zhao/LoongArch-KVM-Add-kvm-related-header-files/20230220-151305
patch link:    https://lore.kernel.org/r/20230220065735.1282809-30-zhaotianrui%40loongson.cn
patch subject: [PATCH v2 29/29] LoongArch: KVM: Enable kvm config and add the makefile
config: loongarch-defconfig (https://download.01.org/0day-ci/archive/20230220/202302201710.ERtpPSuD-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 12.1.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/intel-lab-lkp/linux/commit/55ee4e26440ad32966cf3ee796b8a519c77ac66b
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Tianrui-Zhao/LoongArch-KVM-Add-kvm-related-header-files/20230220-151305
        git checkout 55ee4e26440ad32966cf3ee796b8a519c77ac66b
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch SHELL=/bin/bash arch/loongarch/kvm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302201710.ERtpPSuD-lkp@intel.com/

All warnings (new ones prefixed by >>):

   arch/loongarch/kvm/vcpu.c: In function 'kvm_own_fpu':
>> arch/loongarch/kvm/vcpu.c:595:23: warning: variable 'sr' set but not used [-Wunused-but-set-variable]
     595 |         unsigned long sr;
         |                       ^~
   arch/loongarch/kvm/vcpu.c: At top level:
>> arch/loongarch/kvm/vcpu.c:636:5: warning: no previous prototype for 'kvm_vcpu_ioctl_interrupt' [-Wmissing-prototypes]
     636 | int kvm_vcpu_ioctl_interrupt(struct kvm_vcpu *vcpu,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:746,
                    from include/linux/kvm_host.h:16,
                    from arch/loongarch/kvm/vcpu.c:6:
   arch/loongarch/kvm/vcpu.c:126:25: warning: 'vcpu_pid_fops' defined but not used [-Wunused-const-variable=]
     126 | DEFINE_SIMPLE_ATTRIBUTE(vcpu_pid_fops, vcpu_pid_get, NULL, "%llu\n");
         |                         ^~~~~~~~~~~~~
   include/linux/fs.h:3496:37: note: in definition of macro 'DEFINE_SIMPLE_ATTRIBUTE_XSIGNED'
    3496 | static const struct file_operations __fops = {                          \
         |                                     ^~~~~~
   arch/loongarch/kvm/vcpu.c:126:1: note: in expansion of macro 'DEFINE_SIMPLE_ATTRIBUTE'
     126 | DEFINE_SIMPLE_ATTRIBUTE(vcpu_pid_fops, vcpu_pid_get, NULL, "%llu\n");
         | ^~~~~~~~~~~~~~~~~~~~~~~
   arch/loongarch/kvm/vcpu.c:116:25: warning: 'lvcpu_stat_fops' defined but not used [-Wunused-const-variable=]
     116 | DEFINE_SIMPLE_ATTRIBUTE(lvcpu_stat_fops, lvcpu_stat_get, NULL, "%llu\n");
         |                         ^~~~~~~~~~~~~~~
   include/linux/fs.h:3496:37: note: in definition of macro 'DEFINE_SIMPLE_ATTRIBUTE_XSIGNED'
    3496 | static const struct file_operations __fops = {                          \
         |                                     ^~~~~~
   arch/loongarch/kvm/vcpu.c:116:1: note: in expansion of macro 'DEFINE_SIMPLE_ATTRIBUTE'
     116 | DEFINE_SIMPLE_ATTRIBUTE(lvcpu_stat_fops, lvcpu_stat_get, NULL, "%llu\n");
         | ^~~~~~~~~~~~~~~~~~~~~~~


vim +/sr +595 arch/loongarch/kvm/vcpu.c

81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  591  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  592  /* Enable FPU for guest and restore context */
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  593  void kvm_own_fpu(struct kvm_vcpu *vcpu)
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  594  {
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20 @595  	unsigned long sr;
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  596  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  597  	preempt_disable();
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  598  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  599  	sr = kvm_read_hw_gcsr(LOONGARCH_CSR_EUEN);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  600  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  601  	/*
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  602  	 * Enable FPU for guest
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  603  	 * We set FR and FRE according to guest context
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  604  	 */
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  605  	set_csr_euen(CSR_EUEN_FPEN);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  606  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  607  	/* If guest FPU state not active, restore it now */
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  608  	if (!(vcpu->arch.aux_inuse & KVM_LARCH_FPU)) {
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  609  		kvm_restore_fpu(&vcpu->arch.fpu);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  610  		vcpu->arch.aux_inuse |= KVM_LARCH_FPU;
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  611  		trace_kvm_aux(vcpu, KVM_TRACE_AUX_RESTORE, KVM_TRACE_AUX_FPU);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  612  	} else {
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  613  		trace_kvm_aux(vcpu, KVM_TRACE_AUX_ENABLE, KVM_TRACE_AUX_FPU);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  614  	}
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  615  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  616  	preempt_enable();
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  617  }
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  618  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  619  /* Save and disable FPU */
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  620  void kvm_lose_fpu(struct kvm_vcpu *vcpu)
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  621  {
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  622  	preempt_disable();
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  623  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  624  	if (vcpu->arch.aux_inuse & KVM_LARCH_FPU) {
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  625  		kvm_save_fpu(&vcpu->arch.fpu);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  626  		vcpu->arch.aux_inuse &= ~KVM_LARCH_FPU;
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  627  		trace_kvm_aux(vcpu, KVM_TRACE_AUX_SAVE, KVM_TRACE_AUX_FPU);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  628  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  629  		/* Disable FPU */
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  630  		clear_csr_euen(CSR_EUEN_FPEN);
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  631  	}
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  632  
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  633  	preempt_enable();
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  634  }
81d0b9f4fa1f11 Tianrui Zhao 2023-02-20  635  
a4dadfc6695b38 Tianrui Zhao 2023-02-20 @636  int kvm_vcpu_ioctl_interrupt(struct kvm_vcpu *vcpu,
a4dadfc6695b38 Tianrui Zhao 2023-02-20  637  			     struct kvm_loongarch_interrupt *irq)
a4dadfc6695b38 Tianrui Zhao 2023-02-20  638  {
a4dadfc6695b38 Tianrui Zhao 2023-02-20  639  	int intr = (int)irq->irq;
a4dadfc6695b38 Tianrui Zhao 2023-02-20  640  	struct kvm_vcpu *dvcpu = NULL;
a4dadfc6695b38 Tianrui Zhao 2023-02-20  641  
a4dadfc6695b38 Tianrui Zhao 2023-02-20  642  	if (irq->cpu == -1)
a4dadfc6695b38 Tianrui Zhao 2023-02-20  643  		dvcpu = vcpu;
a4dadfc6695b38 Tianrui Zhao 2023-02-20  644  	else
a4dadfc6695b38 Tianrui Zhao 2023-02-20  645  		dvcpu = kvm_get_vcpu(vcpu->kvm, irq->cpu);
a4dadfc6695b38 Tianrui Zhao 2023-02-20  646  
a4dadfc6695b38 Tianrui Zhao 2023-02-20  647  	if (intr > 0)
a4dadfc6695b38 Tianrui Zhao 2023-02-20  648  		_kvm_queue_irq(dvcpu, intr);
a4dadfc6695b38 Tianrui Zhao 2023-02-20  649  	else if (intr < 0)
a4dadfc6695b38 Tianrui Zhao 2023-02-20  650  		_kvm_dequeue_irq(dvcpu, -intr);
a4dadfc6695b38 Tianrui Zhao 2023-02-20  651  	else {
a4dadfc6695b38 Tianrui Zhao 2023-02-20  652  		kvm_err("%s: invalid interrupt ioctl (%d:%d)\n", __func__,
a4dadfc6695b38 Tianrui Zhao 2023-02-20  653  				irq->cpu, irq->irq);
a4dadfc6695b38 Tianrui Zhao 2023-02-20  654  		return -EINVAL;
a4dadfc6695b38 Tianrui Zhao 2023-02-20  655  	}
a4dadfc6695b38 Tianrui Zhao 2023-02-20  656  
a4dadfc6695b38 Tianrui Zhao 2023-02-20  657  	kvm_vcpu_kick(dvcpu);
a4dadfc6695b38 Tianrui Zhao 2023-02-20  658  	return 0;
a4dadfc6695b38 Tianrui Zhao 2023-02-20  659  }
a4dadfc6695b38 Tianrui Zhao 2023-02-20  660  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

  reply	other threads:[~2023-02-20  9:48 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-20  6:57 [PATCH v2 00/29] Add KVM LoongArch support Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 01/29] LoongArch: KVM: Add kvm related header files Tianrui Zhao
2023-02-20 18:22   ` Paolo Bonzini
2023-02-21  2:56     ` Tianrui Zhao
2023-02-21  6:49       ` Paolo Bonzini
2023-02-20 18:54   ` WANG Xuerui
2023-02-21  4:36   ` Xi Ruoyao
2023-02-24  1:27     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 02/29] LoongArch: KVM: Implement kvm module related interface Tianrui Zhao
2023-02-20 17:46   ` Paolo Bonzini
2023-02-21  3:02     ` Tianrui Zhao
2023-02-21  6:59     ` maobibo
2023-02-21  8:14       ` Paolo Bonzini
2023-02-21 10:18         ` maobibo
2023-02-21 10:37           ` WANG Xuerui
2023-02-21 11:39             ` maobibo
2023-02-21 12:38               ` WANG Xuerui
2023-02-20  6:57 ` [PATCH v2 03/29] LoongArch: KVM: Implement kvm hardware enable, disable interface Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 04/29] LoongArch: KVM: Implement VM related functions Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 05/29] LoongArch: KVM: Add vcpu related header files Tianrui Zhao
2023-02-20 18:57   ` WANG Xuerui
2023-02-27  1:39     ` Tianrui Zhao
2023-02-21  4:44   ` Xi Ruoyao
2023-02-21  6:46     ` maobibo
2023-02-21  6:48       ` Paolo Bonzini
2023-02-21  7:12       ` Xi Ruoyao
2023-02-21  7:35         ` Paolo Bonzini
2023-02-20  6:57 ` [PATCH v2 06/29] LoongArch: KVM: Implement vcpu create and destroy interface Tianrui Zhao
2023-02-20 17:53   ` Paolo Bonzini
2023-02-22  1:52     ` Tianrui Zhao
2023-02-22 12:17       ` Paolo Bonzini
2023-02-23  1:23         ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 07/29] LoongArch: KVM: Implement vcpu run interface Tianrui Zhao
2023-02-20 18:44   ` Paolo Bonzini
2023-02-22  2:08     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 08/29] LoongArch: KVM: Implement vcpu handle exit interface Tianrui Zhao
2023-02-20 17:46   ` Paolo Bonzini
2023-02-20 18:45   ` Paolo Bonzini
2023-02-21  3:17     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 09/29] LoongArch: KVM: Implement vcpu get, vcpu set registers Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 10/29] LoongArch: KVM: Implement vcpu ENABLE_CAP, CHECK_EXTENSION ioctl interface Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 11/29] LoongArch: KVM: Implement fpu related operations for vcpu Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 12/29] LoongArch: KVM: Implement vcpu interrupt operations Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 13/29] LoongArch: KVM: Implement misc vcpu related interfaces Tianrui Zhao
2023-02-20 18:50   ` Paolo Bonzini
2023-02-21  3:19     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 14/29] LoongArch: KVM: Implement vcpu load and vcpu put operations Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 15/29] LoongArch: KVM: Implement vcpu status description Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 16/29] LoongArch: KVM: Implement update VM id function Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 17/29] LoongArch: KVM: Implement virtual machine tlb operations Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 18/29] LoongArch: KVM: Implement vcpu timer operations Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 19/29] LoongArch: KVM: Implement kvm mmu operations Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 20/29] LoongArch: KVM: Implement handle csr excption Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 21/29] LoongArch: KVM: Implement handle iocsr exception Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 22/29] LoongArch: KVM: Implement handle idle exception Tianrui Zhao
2023-02-20 18:40   ` Paolo Bonzini
2023-02-21  9:48     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 23/29] LoongArch: KVM: Implement handle gspr exception Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 24/29] LoongArch: KVM: Implement handle mmio exception Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 25/29] LoongArch: KVM: Implement handle fpu exception Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 26/29] LoongArch: KVM: Implement kvm exception vector Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 27/29] LoongArch: KVM: Implement vcpu world switch Tianrui Zhao
2023-02-21  7:45   ` Paolo Bonzini
2023-02-21 13:00     ` Tianrui Zhao
2023-02-21  8:18   ` Paolo Bonzini
2023-02-21 12:58     ` Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 28/29] LoongArch: KVM: Implement probe virtualization when loongarch cpu init Tianrui Zhao
2023-02-20  6:57 ` [PATCH v2 29/29] LoongArch: KVM: Enable kvm config and add the makefile Tianrui Zhao
2023-02-20  9:47   ` kernel test robot [this message]
2023-02-20 11:09   ` kernel test robot

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=202302201710.ERtpPSuD-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=alexander.deucher@amd.com \
    --cc=axboe@kernel.dk \
    --cc=broonie@kernel.org \
    --cc=chenhuacai@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=kernel@xen0n.name \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=loongarch@lists.linux.dev \
    --cc=maobibo@loongson.cn \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=oliver.upton@linux.dev \
    --cc=pbonzini@redhat.com \
    --cc=zhaotianrui@loongson.cn \
    /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.