diff mbox series

trace-cmd library: Do not record TSC frac bits if scaling is default

Message ID 20211210115508.103569-1-tz.stoyanov@gmail.com (mailing list archive)
State Accepted
Commit e7f02466616acf69f36b5f3efeac2b2dc2da8684
Delegated to: Steven Rostedt
Headers show
Series trace-cmd library: Do not record TSC frac bits if scaling is default | expand

Commit Message

Tzvetomir Stoyanov (VMware) Dec. 10, 2021, 11:55 a.m. UTC
Guest's TSC fraction bits have sens only if there is TSC scaling. In
case of default value for TSC scaling, fraction bits should not be used
in TSC guest clock calculation.

Fixes: https://lore.kernel.org/linux-trace-devel/20211014150204.2485499-3-tz.stoyanov@gmail.com/
	(trace-cmd library: Extend host-guest time sync with fraction bits)

Signed-off-by: Tzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
---
 lib/trace-cmd/trace-timesync-kvm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Tzvetomir Stoyanov (VMware) Feb. 16, 2022, 3:43 p.m. UTC | #1
ping
Just to remind, this one is an important bugfix. It fixes host-guest
tracing with the latest kernels, where new KVM debug info is exposed
through the debugfs.

On Fri, Dec 10, 2021 at 1:55 PM Tzvetomir Stoyanov (VMware)
<tz.stoyanov@gmail.com> wrote:
>
> Guest's TSC fraction bits have sens only if there is TSC scaling. In
> case of default value for TSC scaling, fraction bits should not be used
> in TSC guest clock calculation.
>
> Fixes: https://lore.kernel.org/linux-trace-devel/20211014150204.2485499-3-tz.stoyanov@gmail.com/
>         (trace-cmd library: Extend host-guest time sync with fraction bits)
>
> Signed-off-by: Tzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
> ---
>  lib/trace-cmd/trace-timesync-kvm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/trace-cmd/trace-timesync-kvm.c b/lib/trace-cmd/trace-timesync-kvm.c
> index 8d531922..12a22d4c 100644
> --- a/lib/trace-cmd/trace-timesync-kvm.c
> +++ b/lib/trace-cmd/trace-timesync-kvm.c
> @@ -415,7 +415,7 @@ static int kvm_clock_host(struct tracecmd_time_sync *tsync,
>                         kvm_scaling = 1;
>         }
>
> -       if (kvm->vcpu_frac && kvm->vcpu_frac[cpu])
> +       if (kvm->vcpu_frac && kvm->vcpu_frac[cpu] && kvm_scaling != 1)
>                 ret = read_ll_from_file(kvm->vcpu_frac[cpu], &kvm_frac);
>         msg = (char *)&packet;
>         size = sizeof(packet);
> --
> 2.33.1
>
Steven Rostedt Feb. 16, 2022, 4:47 p.m. UTC | #2
On Wed, 16 Feb 2022 17:43:46 +0200
Tzvetomir Stoyanov <tz.stoyanov@gmail.com> wrote:

> ping
> Just to remind, this one is an important bugfix. It fixes host-guest
> tracing with the latest kernels, where new KVM debug info is exposed
> through the debugfs.

Hi Tzvetomir,

It's actually already in my local queue. I just haven't had a chance to
push it up yet.

Thanks,

-- Steve
diff mbox series

Patch

diff --git a/lib/trace-cmd/trace-timesync-kvm.c b/lib/trace-cmd/trace-timesync-kvm.c
index 8d531922..12a22d4c 100644
--- a/lib/trace-cmd/trace-timesync-kvm.c
+++ b/lib/trace-cmd/trace-timesync-kvm.c
@@ -415,7 +415,7 @@  static int kvm_clock_host(struct tracecmd_time_sync *tsync,
 			kvm_scaling = 1;
 	}
 
-	if (kvm->vcpu_frac && kvm->vcpu_frac[cpu])
+	if (kvm->vcpu_frac && kvm->vcpu_frac[cpu] && kvm_scaling != 1)
 		ret = read_ll_from_file(kvm->vcpu_frac[cpu], &kvm_frac);
 	msg = (char *)&packet;
 	size = sizeof(packet);