From: Martin Jansa <martin.jansa@gmail.com>
To: openembedded-core@lists.openembedded.org
Cc: Daniel Lublin <daniel@lublin.se>, Pavel Modilaynen <pavelmn@axis.com>
Subject: [morty][PATCH] buildstats.bbclass: Avoid index exception in /proc/PID/io parsing
Date: Wed, 31 Jan 2018 19:10:38 +0000 [thread overview]
Message-ID: <20180131191038.99-1-Martin.Jansa@gmail.com> (raw)
From: Pavel Modilaynen <pavelmn@axis.com>
There is some probability (depends on system load) to get empty
or line containing "0" as the last line while reading /proc/PID/io.
Avoid build failure by checking if line contains separator
":" before split.
Backport from pyro commit b26feaf51af55f17fad79dbd53dd3ec0a37c38ff
Signed-off-by: Pavel Modilaynen <pavelmn@axis.com>
Signed-off-by: Daniel Lublin <daniel@lublin.se>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
meta/classes/buildstats.bbclass | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/meta/classes/buildstats.bbclass b/meta/classes/buildstats.bbclass
index 599a219984..415d2ee820 100644
--- a/meta/classes/buildstats.bbclass
+++ b/meta/classes/buildstats.bbclass
@@ -31,6 +31,11 @@ def get_process_cputime(pid):
i = f.readline().strip()
if not i:
break
+ if not ":" in i:
+ # one more extra line is appended (empty or containing "0")
+ # most probably due to race condition in kernel while
+ # updating IO stats
+ break
i = i.split(": ")
iostats[i[0]] = i[1]
resources = resource.getrusage(resource.RUSAGE_SELF)
--
2.15.1
next reply other threads:[~2018-01-31 19:10 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-31 19:10 Martin Jansa [this message]
2018-03-04 11:41 ` [morty][PATCH] buildstats.bbclass: Avoid index exception in /proc/PID/io parsing Martin Jansa
2018-03-04 13:20 ` Richard Purdie
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=20180131191038.99-1-Martin.Jansa@gmail.com \
--to=martin.jansa@gmail.com \
--cc=daniel@lublin.se \
--cc=openembedded-core@lists.openembedded.org \
--cc=pavelmn@axis.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox