[systemd-devel] [PATCH] bootchart: Do not try to access data for non-existing CPU's

philippedeswert at gmail.com philippedeswert at gmail.com
Sun Sep 28 08:12:51 PDT 2014


From: Philippe De Swert <philippe.deswert at jollamobile.com>

Cpu's are assigned normally, so starting at 0, so the MAX_CPU index will
always be one smaller than the actual number.

Found with Coverity.
---
 src/bootchart/store.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bootchart/store.c b/src/bootchart/store.c
index 3099ff1..9ea1b27 100644
--- a/src/bootchart/store.c
+++ b/src/bootchart/store.c
@@ -199,7 +199,7 @@ vmstat_next:
 
                 if (strstr(key, "cpu")) {
                         r = safe_atoi((const char*)(key+3), &c);
-                        if (r < 0 || c > MAXCPUS)
+                        if (r < 0 || c > MAXCPUS -1)
                                 /* Oops, we only have room for MAXCPUS data */
                                 break;
                         sampledata->runtime[c] = atoll(rt);
-- 
1.8.3.2



More information about the systemd-devel mailing list