Age | Commit message (Collapse) | Author |
|
This commit rips out systemd-bootchart. It will be given a new home, outside
of the systemd repository. The code itself isn't actually specific to
systemd and can be used without systemd even, so let's put it somewhere
else.
|
|
This should be handled fine now by .dir-locals.el, so need to carry that
stuff in every file.
|
|
Also add a coccinelle receipt to help with such transitions.
|
|
Sort the includes accoding to the new coding style.
|
|
|
|
There are more than enough to deserve their own .c file, hence move them
over.
|
|
Use get_proc_field and PROC_CPUINFO_MODEL to get the CPU type. Also don't
fail if it missing, instead restore the old behaviour and print "Unknown".
Fixes the following error seen with v225 on powerpc:
Unable to read module name from cpuinfo.
Error generating svg file: No such file or directory
|
|
Another Coccinelle script.
|
|
Patch via coccinelle.
|
|
In VMs / virtio drives there is no model. Also don't print "Disk:
(null)" in output if no model is available.
|
|
Until commit 1f2ecb0 ("bootchart: kill a bunch of global variables")
variable "head" was declared global and this action was performed by svg_header.
Now that "head" is local and passed to each function called by svg_do(...)
move the code at the beginning of svg_do(...) to restore the correct behaviour.
|
|
Closes systemd/systemd#330
|
|
|
|
* kill unnecessary {}
* add newlines where appropriate
* remove dead code
* reorder variable declarations
* fix more return code logic
* pass O_CLOEXEC to all open*() calles
* use safe_close() where possible
|
|
This code is in a confusingly bad shape. Kill a bunch of global variables
and pass needed variables around in function calls.
|
|
Retrieve the handle to procfs in main(), and pass it functions
that need it. Kill the global variables.
Also, refactor lots of code in svg_title(). There's no need to access any
global variables from there either, and we really should return proper
errors from there as well.
|
|
Let the helper functions take care of the string message output.
|
|
Correctly handle the potential failure of fdopen() (because of OOM, for instance)
after potentially successful open(). Prevent leaking open fd in such case.
|
|
If we have less samples than expected, systemd-bootchart will crash.
|
|
This patch removes includes that are not used. The removals were found with
include-what-you-use which checks if any of the symbols from a header is
in use.
|
|
|
|
|
|
Found by coverity. Fixes: CID#996314 and #996312
|
|
|
|
since 376cd3b89c62f580a6f576cecfbbb28d3944118f LIST_FIND_TAIL accepts
an empty list. That removed an assert in LIST_FIND_TAIL and we now
theoretically risk a null pointer deref. This adds the assert directly
to protect against that.
|
|
In programs like eog and gimp the transparant background did not
look very good.
Similar fix from the one done in systemd-analyze (418e3750)
|
|
|
|
In trying to track down a stupid linker bug, I noticed a bunch of
memset() calls that should be using memzero() to make it more "obvious"
that the options are correct (i.e. 0 is not the length, but the data to
set). So fix up all current calls to memset(foo, 0, length) to
memzero(foo, length).
|
|
Use double and not float, as there is little to no benefit.
|
|
|
|
- Add space between if/for and the opening parentheses
- Place the opening brace on same line as the function (not for udev)
From the CODING_STYLE
Try to use this:
void foo() {
}
instead of this:
void foo()
{
}
|
|
each invocation
We can determine the list entry type via the typeof() gcc construct, and
so we should to make the macros much shorter to use.
|
|
Since the invention of read-only memory, write-only memory has been
considered deprecated. Where appropriate, either make use of the
value, or avoid writing it, to make it clear that it is not used.
|
|
"Corporation" was misspelled as "Coproration"
|
|
Instead of storing bootchart sample data in arrays, this patch moves
storage to linked lists so that there is no more limit on samples.
This patch also fixes parsing of /proc/<pid>/smaps in kernels > 3.7.
|
|
http://lists.freedesktop.org/archives/systemd-devel/2013-April/010510.html
|
|
|
|
code in src/shared/macro.h only defined MAX/MIN in case
they were not defined previously. however the MAX/MIN
macros implemented in glibc are not of the "safe" kind but defined
as:
define MIN(a,b) (((a)<(b))?(a):(b))
define MAX(a,b) (((a)>(b))?(a):(b))
Avoid nasty side effects by using our own versions instead.
Also fix the warnings derived from this change.
[zj: - modify MAX3 macro to fix warning about _a shadowing _a,
- do bootchart/svg.c too,
- remove unused MIN3.]
|
|
Based on coverity report.
|
|
The new gcc isn't bad!
In file included from src/bootchart/svg.c:36:0:
src/bootchart/svg.c: In function 'svg_ps_bars':
./src/shared/util.h:524:13: warning: 'enc_name' may be used uninitialized in this function [-Wmaybe-uninitialized]
free(*(void**) p);
^
src/bootchart/svg.c:821:37: note: 'enc_name' was declared here
char _cleanup_free_*enc_name;
^
CC src/udev/mtd_probe/mtd_probe-probe_smartmedia.o
XSLT man/systemd.unit.5
In file included from src/bootchart/svg.c:36:0:
src/bootchart/svg.c: In function 'svg_pss_graph':
./src/shared/util.h:524:13: warning: 'enc_name' may be used uninitialized in this function [-Wmaybe-uninitialized]
free(*(void**) p);
^
src/bootchart/svg.c:395:37: note: 'enc_name' was declared here
char _cleanup_free_*enc_name;
^
|
|
Let's update bootchar to share the coding style a bit more with the rest
of the package.
- Some tabs/spaces fixes
- add #pragma to header
- split up header so that we have a 1:1 relation between .c and .h files
like everywhere else
- Prefix user command line arguments/configuration settings with "arg_".
- other coding style fixes
|
|
This reverts commit 0ea9530d401827e299c6e04a433e69a7a2a89d80.
attribute(cleanup) can only be used inside functions (*of, sysfd
are leaked).
Cleanup functions are only called once when exiting scope (*f
is leaked twice).
|
|
use _cleanup_{close_,fclose_} to close streams and file descriptors
|
|
|
|
|
|
|
|
Also parse it early, so that we can get it in the initramfs.
|
|
|
|
As of [1], bootchart stores files in /run/log, not /var/log, by default.
[1] f2f85884caac671da84256acb44148df9a4dca70
|
|
bootchart.conf: direct users to `bootchart.conf(5)`, not a nonexistent
man page.
svg.c: Fix some English in the svg comment header.
* Chrome/Chromium => Chrome, Chromium
* firefox => Firefox
* much more slow => more slowly
|