Blame SOURCES/0001-sar-make-buffers-that-hold-timestamps-bigger.patch

9a8d55
From f3964e0fa19e0c33470f37014ebcebf0b4253363 Mon Sep 17 00:00:00 2001
9a8d55
From: Michal Sekletar <msekleta@redhat.com>
9a8d55
Date: Fri, 30 Sep 2016 18:05:44 +0200
9a8d55
Subject: [PATCH] sar: make buffers that hold timestamps bigger
9a8d55
MIME-Version: 1.0
9a8d55
Content-Type: text/plain; charset=UTF-8
9a8d55
Content-Transfer-Encoding: 8bit
9a8d55
9a8d55
On systems that use Korean UTF-8 locale sar will not print timestamp
9a8d55
because there is not enough space in the buffer.
9a8d55
9a8d55
I bumped buffer size to 64 bytes because I figured out that 32 bytes is
9a8d55
still not enough to print out timestamp when using some glibc supported
9a8d55
locales.
9a8d55
9a8d55
$ LC_TIME=ko_KR.UTF-8 ./sar 1 1
9a8d55
9a8d55
Before:
9a8d55
Linux 4.7.2-201.fc24.x86_64 (morgoth.usersys.redhat.com)        2016년 09월 30일   _x86_64_        (4 CPU)
9a8d55
9a8d55
                CPU     %user     %nice   %system   %iowait    %steal     %idle
9a8d55
                all      4.51      0.00      2.51      0.00      0.00     92.98
9a8d55
Average:        all      4.51      0.00      2.51      0.00      0.00     92.98
9a8d55
9a8d55
After:
9a8d55
Linux 4.7.2-201.fc24.x86_64 (morgoth.usersys.redhat.com)   2016년 09월 30일   _x86_64_        (4 CPU)
9a8d55
9a8d55
18시 18분 36초     CPU     %user     %nice   %system   %iowait    %steal     %idle
9a8d55
18시 18분 37초     all      3.76      0.00      2.26      0.00      0.00     93.98
9a8d55
Average:        all      3.76      0.00      2.26      0.00      0.00     93.98
9a8d55
---
9a8d55
 sa.h  | 2 +-
9a8d55
 sar.c | 4 ++--
9a8d55
 2 files changed, 3 insertions(+), 3 deletions(-)
9a8d55
9a8d55
diff --git a/sa.h b/sa.h
9a8d55
index 54e7a4e..c11dbe9 100644
9a8d55
--- a/sa.h
9a8d55
+++ b/sa.h
9a8d55
@@ -199,7 +199,7 @@
9a8d55
 #define NR_USB_PREALLOC		5
9a8d55
 
9a8d55
 #define UTSNAME_LEN		65
9a8d55
-#define TIMESTAMP_LEN		16
9a8d55
+#define TIMESTAMP_LEN		64
9a8d55
 #define HEADER_LINE_LEN		512
9a8d55
 
9a8d55
 /* Maximum number of args that can be passed to sadc */
9a8d55
diff --git a/sar.c b/sar.c
9a8d55
index e8ad83e..8dd998b 100644
9a8d55
--- a/sar.c
9a8d55
+++ b/sar.c
9a8d55
@@ -469,10 +469,10 @@ int write_stats(int curr, int read_from_file, long *cnt, int use_tm_start,
9a8d55
 	}
9a8d55
 
9a8d55
 	/* Set previous timestamp */
9a8d55
-	if (set_record_timestamp_string(!curr, timestamp[!curr], 16))
9a8d55
+	if (set_record_timestamp_string(!curr, timestamp[!curr], TIMESTAMP_LEN))
9a8d55
 		return 0;
9a8d55
 	/* Set current timestamp */
9a8d55
-	if (set_record_timestamp_string(curr,  timestamp[curr],  16))
9a8d55
+	if (set_record_timestamp_string(curr,  timestamp[curr],  TIMESTAMP_LEN))
9a8d55
 		return 0;
9a8d55
 
9a8d55
 	/* Check if we are beginning a new day */
9a8d55
-- 
9a8d55
2.9.3
9a8d55