All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Oliver Upton <oupton@google.com>,
	kvm@vger.kernel.org, kvmarm@lists.cs.columbia.edu
Cc: kbuild-all@lists.01.org, Paolo Bonzini <pbonzini@redhat.com>,
	Sean Christopherson <seanjc@google.com>,
	Marc Zyngier <maz@kernel.org>, Peter Shier <pshier@google.com>,
	Jim Mattson <jmattson@google.com>,
	David Matlack <dmatlack@google.com>,
	Ricardo Koller <ricarkol@google.com>,
	Jing Zhang <jingzhangos@google.com>
Subject: Re: [PATCH v2 01/12] KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK
Date: Mon, 19 Jul 2021 06:30:50 +0800	[thread overview]
Message-ID: <202107190654.Mpi5k5U4-lkp@intel.com> (raw)
In-Reply-To: <20210716212629.2232756-2-oupton@google.com>

[-- Attachment #1: Type: text/plain, Size: 3631 bytes --]

Hi Oliver,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on kvm/queue]
[also build test WARNING on vhost/linux-next v5.14-rc1 next-20210716]
[cannot apply to kvmarm/next]
[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/Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
config: x86_64-rhel-8.3-kselftests (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-341-g8af24329-dirty
        # https://github.com/0day-ci/linux/commit/72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
        git checkout 72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> arch/x86/kvm/x86.c:2784: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
    * Returns true if realtime and TSC values were written back to the caller.


vim +2784 arch/x86/kvm/x86.c

  2782	
  2783	/**
> 2784	 * Returns true if realtime and TSC values were written back to the caller.
  2785	 * Returns false if a clock triplet cannot be obtained, such as if the host's
  2786	 * realtime clock is not based on the TSC.
  2787	 */
  2788	static bool get_kvmclock_and_realtime(struct kvm *kvm, u64 *kvmclock_ns,
  2789					      u64 *realtime_ns, u64 *tsc)
  2790	{
  2791		struct kvm_arch *ka = &kvm->arch;
  2792		struct pvclock_vcpu_time_info hv_clock;
  2793		unsigned long flags;
  2794		bool ret = false;
  2795	
  2796		spin_lock_irqsave(&ka->pvclock_gtod_sync_lock, flags);
  2797		if (!ka->use_master_clock) {
  2798			spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2799			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2800			return false;
  2801		}
  2802	
  2803		hv_clock.tsc_timestamp = ka->master_cycle_now;
  2804		hv_clock.system_time = ka->master_kernel_ns + ka->kvmclock_offset;
  2805		spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2806	
  2807		/* both __this_cpu_read() and rdtsc() should be on the same cpu */
  2808		get_cpu();
  2809	
  2810		if (__this_cpu_read(cpu_tsc_khz)) {
  2811			struct timespec64 ts;
  2812			u64 tsc_val;
  2813	
  2814			kvm_get_time_scale(NSEC_PER_SEC, __this_cpu_read(cpu_tsc_khz) * 1000LL,
  2815					   &hv_clock.tsc_shift,
  2816					   &hv_clock.tsc_to_system_mul);
  2817	
  2818			if (kvm_get_walltime_and_clockread(&ts, &tsc_val)) {
  2819				*realtime_ns = ts.tv_nsec + NSEC_PER_SEC * ts.tv_sec;
  2820				*tsc = tsc_val;
  2821				ret = true;
  2822			}
  2823	
  2824			*kvmclock_ns = __pvclock_read_cycles(&hv_clock, tsc_val);
  2825		} else
  2826			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2827	
  2828		put_cpu();
  2829	
  2830		return ret;
  2831	}
  2832	

---
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: 41845 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Oliver Upton <oupton@google.com>,
	kvm@vger.kernel.org, kvmarm@lists.cs.columbia.edu
Cc: kbuild-all@lists.01.org, Marc Zyngier <maz@kernel.org>,
	Peter Shier <pshier@google.com>,
	Sean Christopherson <seanjc@google.com>,
	David Matlack <dmatlack@google.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Jim Mattson <jmattson@google.com>
Subject: Re: [PATCH v2 01/12] KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK
Date: Mon, 19 Jul 2021 06:30:50 +0800	[thread overview]
Message-ID: <202107190654.Mpi5k5U4-lkp@intel.com> (raw)
In-Reply-To: <20210716212629.2232756-2-oupton@google.com>

[-- Attachment #1: Type: text/plain, Size: 3631 bytes --]

Hi Oliver,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on kvm/queue]
[also build test WARNING on vhost/linux-next v5.14-rc1 next-20210716]
[cannot apply to kvmarm/next]
[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/Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
config: x86_64-rhel-8.3-kselftests (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-341-g8af24329-dirty
        # https://github.com/0day-ci/linux/commit/72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
        git checkout 72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> arch/x86/kvm/x86.c:2784: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
    * Returns true if realtime and TSC values were written back to the caller.


vim +2784 arch/x86/kvm/x86.c

  2782	
  2783	/**
> 2784	 * Returns true if realtime and TSC values were written back to the caller.
  2785	 * Returns false if a clock triplet cannot be obtained, such as if the host's
  2786	 * realtime clock is not based on the TSC.
  2787	 */
  2788	static bool get_kvmclock_and_realtime(struct kvm *kvm, u64 *kvmclock_ns,
  2789					      u64 *realtime_ns, u64 *tsc)
  2790	{
  2791		struct kvm_arch *ka = &kvm->arch;
  2792		struct pvclock_vcpu_time_info hv_clock;
  2793		unsigned long flags;
  2794		bool ret = false;
  2795	
  2796		spin_lock_irqsave(&ka->pvclock_gtod_sync_lock, flags);
  2797		if (!ka->use_master_clock) {
  2798			spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2799			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2800			return false;
  2801		}
  2802	
  2803		hv_clock.tsc_timestamp = ka->master_cycle_now;
  2804		hv_clock.system_time = ka->master_kernel_ns + ka->kvmclock_offset;
  2805		spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2806	
  2807		/* both __this_cpu_read() and rdtsc() should be on the same cpu */
  2808		get_cpu();
  2809	
  2810		if (__this_cpu_read(cpu_tsc_khz)) {
  2811			struct timespec64 ts;
  2812			u64 tsc_val;
  2813	
  2814			kvm_get_time_scale(NSEC_PER_SEC, __this_cpu_read(cpu_tsc_khz) * 1000LL,
  2815					   &hv_clock.tsc_shift,
  2816					   &hv_clock.tsc_to_system_mul);
  2817	
  2818			if (kvm_get_walltime_and_clockread(&ts, &tsc_val)) {
  2819				*realtime_ns = ts.tv_nsec + NSEC_PER_SEC * ts.tv_sec;
  2820				*tsc = tsc_val;
  2821				ret = true;
  2822			}
  2823	
  2824			*kvmclock_ns = __pvclock_read_cycles(&hv_clock, tsc_val);
  2825		} else
  2826			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2827	
  2828		put_cpu();
  2829	
  2830		return ret;
  2831	}
  2832	

---
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: 41845 bytes --]

[-- Attachment #3: Type: text/plain, Size: 151 bytes --]

_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

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 01/12] KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK
Date: Mon, 19 Jul 2021 06:30:50 +0800	[thread overview]
Message-ID: <202107190654.Mpi5k5U4-lkp@intel.com> (raw)
In-Reply-To: <20210716212629.2232756-2-oupton@google.com>

[-- Attachment #1: Type: text/plain, Size: 3724 bytes --]

Hi Oliver,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on kvm/queue]
[also build test WARNING on vhost/linux-next v5.14-rc1 next-20210716]
[cannot apply to kvmarm/next]
[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/Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
config: x86_64-rhel-8.3-kselftests (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-341-g8af24329-dirty
        # https://github.com/0day-ci/linux/commit/72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Oliver-Upton/KVM-Add-idempotent-controls-for-migrating-system-counter-state/20210718-103407
        git checkout 72b6d584e6ac692038a7d70e8782f0dfa179e5fb
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> arch/x86/kvm/x86.c:2784: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
    * Returns true if realtime and TSC values were written back to the caller.


vim +2784 arch/x86/kvm/x86.c

  2782	
  2783	/**
> 2784	 * Returns true if realtime and TSC values were written back to the caller.
  2785	 * Returns false if a clock triplet cannot be obtained, such as if the host's
  2786	 * realtime clock is not based on the TSC.
  2787	 */
  2788	static bool get_kvmclock_and_realtime(struct kvm *kvm, u64 *kvmclock_ns,
  2789					      u64 *realtime_ns, u64 *tsc)
  2790	{
  2791		struct kvm_arch *ka = &kvm->arch;
  2792		struct pvclock_vcpu_time_info hv_clock;
  2793		unsigned long flags;
  2794		bool ret = false;
  2795	
  2796		spin_lock_irqsave(&ka->pvclock_gtod_sync_lock, flags);
  2797		if (!ka->use_master_clock) {
  2798			spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2799			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2800			return false;
  2801		}
  2802	
  2803		hv_clock.tsc_timestamp = ka->master_cycle_now;
  2804		hv_clock.system_time = ka->master_kernel_ns + ka->kvmclock_offset;
  2805		spin_unlock_irqrestore(&ka->pvclock_gtod_sync_lock, flags);
  2806	
  2807		/* both __this_cpu_read() and rdtsc() should be on the same cpu */
  2808		get_cpu();
  2809	
  2810		if (__this_cpu_read(cpu_tsc_khz)) {
  2811			struct timespec64 ts;
  2812			u64 tsc_val;
  2813	
  2814			kvm_get_time_scale(NSEC_PER_SEC, __this_cpu_read(cpu_tsc_khz) * 1000LL,
  2815					   &hv_clock.tsc_shift,
  2816					   &hv_clock.tsc_to_system_mul);
  2817	
  2818			if (kvm_get_walltime_and_clockread(&ts, &tsc_val)) {
  2819				*realtime_ns = ts.tv_nsec + NSEC_PER_SEC * ts.tv_sec;
  2820				*tsc = tsc_val;
  2821				ret = true;
  2822			}
  2823	
  2824			*kvmclock_ns = __pvclock_read_cycles(&hv_clock, tsc_val);
  2825		} else
  2826			*kvmclock_ns = get_kvmclock_base_ns() + ka->kvmclock_offset;
  2827	
  2828		put_cpu();
  2829	
  2830		return ret;
  2831	}
  2832	

---
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: 41845 bytes --]

  parent reply	other threads:[~2021-07-18 22:30 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-16 21:26 [PATCH v2 00/12] KVM: Add idempotent controls for migrating system counter state Oliver Upton
2021-07-16 21:26 ` Oliver Upton
2021-07-16 21:26 ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 01/12] KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-18 20:02   ` kernel test robot
2021-07-18 20:02     ` kernel test robot
2021-07-18 20:02     ` kernel test robot
2021-07-18 22:30   ` kernel test robot [this message]
2021-07-18 22:30     ` kernel test robot
2021-07-18 22:30     ` kernel test robot
2021-07-19  0:48   ` kernel test robot
2021-07-19  0:48     ` kernel test robot
2021-07-19  0:48     ` kernel test robot
2021-07-16 21:26 ` [PATCH v2 02/12] KVM: x86: Refactor tsc synchronization code Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 03/12] KVM: x86: Expose TSC offset controls to userspace Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-18 20:42   ` Paolo Bonzini
2021-07-18 20:42     ` Paolo Bonzini
2021-07-18 20:42     ` Paolo Bonzini
2021-07-18 20:50   ` kernel test robot
2021-07-18 20:50     ` kernel test robot
2021-07-18 20:50     ` kernel test robot
2021-07-16 21:26 ` [PATCH v2 04/12] tools: arch: x86: pull in pvclock headers Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 05/12] selftests: KVM: Add test for KVM_{GET,SET}_CLOCK Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-21 14:58   ` Andrew Jones
2021-07-21 14:58     ` [PATCH v2 05/12] selftests: KVM: Add test for KVM_{GET, SET}_CLOCK Andrew Jones
2021-07-21 14:58     ` Andrew Jones
2021-07-16 21:26 ` [PATCH v2 06/12] selftests: KVM: Add helpers for vCPU device attributes Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-21 15:14   ` Andrew Jones
2021-07-21 15:14     ` Andrew Jones
2021-07-21 15:14     ` Andrew Jones
2021-07-16 21:26 ` [PATCH v2 07/12] selftests: KVM: Introduce system counter offset test Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-21 15:17   ` Andrew Jones
2021-07-21 15:17     ` Andrew Jones
2021-07-21 15:17     ` Andrew Jones
2021-07-16 21:26 ` [PATCH v2 08/12] KVM: arm64: Allow userspace to configure a vCPU's virtual offset Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 09/12] selftests: KVM: Add support for aarch64 to system_counter_offset_test Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 10/12] KVM: arm64: Provide userspace access to the physical counter offset Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 11/12] selftests: KVM: Test physical counter offsetting Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26 ` [PATCH v2 12/12] selftests: KVM: Add counter emulation benchmark Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:26   ` Oliver Upton
2021-07-16 21:29 ` [PATCH v2 00/12] KVM: Add idempotent controls for migrating system counter state Oliver Upton
2021-07-16 21:29   ` Oliver Upton
2021-07-16 21:29   ` Oliver Upton
2021-07-21 15:28 ` Andrew Jones
2021-07-21 15:28   ` Andrew Jones
2021-07-21 15:28   ` Andrew Jones
2021-07-22 15:42   ` Oliver Upton
2021-07-22 15:42     ` Oliver Upton
2021-07-22 15:42     ` Oliver Upton
2021-07-18 20:14 [PATCH v2 01/12] KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK 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=202107190654.Mpi5k5U4-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=dmatlack@google.com \
    --cc=jingzhangos@google.com \
    --cc=jmattson@google.com \
    --cc=kbuild-all@lists.01.org \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=maz@kernel.org \
    --cc=oupton@google.com \
    --cc=pbonzini@redhat.com \
    --cc=pshier@google.com \
    --cc=ricarkol@google.com \
    --cc=seanjc@google.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.