lttng: Fix timer calculation error

Fix timer calculation error in the lttng-tools/lttng-ust

(From OE-Core rev: 780a590cf2f0604435c05445d02c342e3387497f)

Signed-off-by: Jianchuan Wang <jianchuan.wang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jianchuan Wang
2015-07-10 14:33:12 +08:00
committed by Richard Purdie
parent a117fd5ecd
commit c18fadb068
4 changed files with 86 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
From 161496fbe1465817a77a50a1172734dae81a13ef Mon Sep 17 00:00:00 2001
From: Mikael Beckius <mikael.beckius@windriver.com>
Date: Tue, 12 May 2015 11:11:48 +0200
Subject: [PATCH] lttng-tools: Fix live timer calculation error
There is an calculation error for live timer. Variable switch_timer_interval is
based on microsecond, and it is not right to assign switch_timer_interval mod
1000000 to var tv_nsec which is based on nanosecond.
Upstream-Status: Pending
Signed-off-by: Mikael Beckius <mikael.beckius@windriver.com>
Signed-off-by: Jianchuan Wang <jianchuan.wang@windriver.com>
---
src/common/consumer-timer.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/common/consumer-timer.c b/src/common/consumer-timer.c
index 1408052..c6202ba 100644
--- a/src/common/consumer-timer.c
+++ b/src/common/consumer-timer.c
@@ -368,7 +368,7 @@ void consumer_timer_switch_start(struct lttng_consumer_channel *channel,
channel->switch_timer_enabled = 1;
its.it_value.tv_sec = switch_timer_interval / 1000000;
- its.it_value.tv_nsec = switch_timer_interval % 1000000;
+ its.it_value.tv_nsec = (switch_timer_interval % 1000000) * 1000;
its.it_interval.tv_sec = its.it_value.tv_sec;
its.it_interval.tv_nsec = its.it_value.tv_nsec;
@@ -425,7 +425,7 @@ void consumer_timer_live_start(struct lttng_consumer_channel *channel,
channel->live_timer_enabled = 1;
its.it_value.tv_sec = live_timer_interval / 1000000;
- its.it_value.tv_nsec = live_timer_interval % 1000000;
+ its.it_value.tv_nsec = (live_timer_interval % 1000000) * 1000;
its.it_interval.tv_sec = its.it_value.tv_sec;
its.it_interval.tv_nsec = its.it_value.tv_nsec;
--
1.9.1

View File

@@ -27,6 +27,7 @@ SRC_URI = "git://git.lttng.org/lttng-tools.git;branch=stable-2.6 \
file://runtest-2.4.0.patch \
file://extern-decls.patch \
file://run-ptest \
file://lttng-tools-Fix-live-timer-calculation-error.patch \
"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,42 @@
From 6d02a6c1aeb1d050ffe7c6624bab9acfa76fc05f Mon Sep 17 00:00:00 2001
From: Mikael Beckius <mikael.beckius@windriver.com>
Date: Tue, 12 May 2015 11:04:34 +0200
Subject: [PATCH] lttng-ust:Fix live timer calculation error
There is an calculation error for live timer. Variable chan->switch_timer_interval is
based on microsecond, and it is not right to assign chan->switch_timer_interval mod
1000000 to var tv_nsec which is based on nanosecond.
Upstream-Status: Pending
Signed-off-by: Mikael Beckius <mikael.beckius@windriver.com>
Signed-off-by: Jianchuan Wang <jianchuan.wang@windriver.com>
---
libringbuffer/ring_buffer_frontend.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libringbuffer/ring_buffer_frontend.c b/libringbuffer/ring_buffer_frontend.c
index eb4e486..e0377a3 100644
--- a/libringbuffer/ring_buffer_frontend.c
+++ b/libringbuffer/ring_buffer_frontend.c
@@ -528,7 +528,7 @@ void lib_ring_buffer_channel_switch_timer_start(struct channel *chan)
}
its.it_value.tv_sec = chan->switch_timer_interval / 1000000;
- its.it_value.tv_nsec = chan->switch_timer_interval % 1000000;
+ its.it_value.tv_nsec = (chan->switch_timer_interval % 1000000) * 1000;
its.it_interval.tv_sec = its.it_value.tv_sec;
its.it_interval.tv_nsec = its.it_value.tv_nsec;
@@ -582,7 +582,7 @@ void lib_ring_buffer_channel_read_timer_start(struct channel *chan)
}
its.it_value.tv_sec = chan->read_timer_interval / 1000000;
- its.it_value.tv_nsec = chan->read_timer_interval % 1000000;
+ its.it_value.tv_nsec = (chan->read_timer_interval % 1000000) * 1000;
its.it_interval.tv_sec = its.it_value.tv_sec;
its.it_interval.tv_nsec = its.it_value.tv_nsec;
--
1.9.1

View File

@@ -24,6 +24,7 @@ PE = "2"
SRC_URI = "git://git.lttng.org/lttng-ust.git;branch=stable-2.6 \
file://lttng-ust-doc-examples-disable.patch \
file://add-aarch64.patch \
file://lttng-ust-Fix-live-timer-calculation-error.patch \
"
S = "${WORKDIR}/git"