summaryrefslogtreecommitdiffstats
path: root/meta/classes/buildstats.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/buildstats.bbclass')
-rw-r--r--meta/classes/buildstats.bbclass24
1 files changed, 16 insertions, 8 deletions
diff --git a/meta/classes/buildstats.bbclass b/meta/classes/buildstats.bbclass
index e58d37be5e..2d63589e4b 100644
--- a/meta/classes/buildstats.bbclass
+++ b/meta/classes/buildstats.bbclass
@@ -25,13 +25,14 @@ def get_process_cputime(pid):
25 'cstime' : fields[16], 25 'cstime' : fields[16],
26 } 26 }
27 iostats = {} 27 iostats = {}
28 with open("/proc/%d/io" % pid, "r") as f: 28 if os.path.isfile("/proc/%d/io" % pid):
29 while True: 29 with open("/proc/%d/io" % pid, "r") as f:
30 i = f.readline().strip() 30 while True:
31 if not i: 31 i = f.readline().strip()
32 break 32 if not i:
33 i = i.split(": ") 33 break
34 iostats[i[0]] = i[1] 34 i = i.split(": ")
35 iostats[i[0]] = i[1]
35 resources = resource.getrusage(resource.RUSAGE_SELF) 36 resources = resource.getrusage(resource.RUSAGE_SELF)
36 childres = resource.getrusage(resource.RUSAGE_CHILDREN) 37 childres = resource.getrusage(resource.RUSAGE_CHILDREN)
37 return stats, iostats, resources, childres 38 return stats, iostats, resources, childres
@@ -111,7 +112,14 @@ python run_buildstats () {
111 112
112 if isinstance(e, bb.event.BuildStarted): 113 if isinstance(e, bb.event.BuildStarted):
113 ######################################################################## 114 ########################################################################
114 # at first pass make the buildstats heriarchy and then 115 # If the kernel was not configured to provide I/O statistics, issue
116 # a one time warning.
117 ########################################################################
118 if not os.path.isfile("/proc/%d/io" % os.getpid()):
119 bb.warn("The Linux kernel on your build host was not configured to provide process I/O statistics. (CONFIG_TASK_IO_ACCOUNTING is not set)")
120
121 ########################################################################
122 # at first pass make the buildstats hierarchy and then
115 # set the buildname 123 # set the buildname
116 ######################################################################## 124 ########################################################################
117 bb.utils.mkdirhier(bsdir) 125 bb.utils.mkdirhier(bsdir)