chiark / gitweb /
Fix for SIGSEGV in systemd-bootchart on short-living processes
authorIgor Zhbanov <i.zhbanov@samsung.com>
Tue, 15 Oct 2013 10:35:13 +0000 (14:35 +0400)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 15 Oct 2013 13:40:34 +0000 (09:40 -0400)
commit306e6650221d88b29831bcdcef94447afb65df5c
tree8246089ac0060fe046c1914e938754a1d9612172
parent72f4d9669c253d5bd7c126bf2e7a0db0198cf2eb
Fix for SIGSEGV in systemd-bootchart on short-living processes

The function svg_ps_bars() dereferencess NULL pointer in the line
endtime = ps->last->sampledata->sampletime;
because of partially initialized ps_struct (ps->last == NULL).

If some process terminates between scaning /proc directory in the log_sample()
function and reading additional information from /proc/PID/... files,
the files couldn't be read, the loop will be continued and partially
initialized structure returned.
src/bootchart/store.c