diff options
| author | Denys Vlasenko <dvlasenk@redhat.com> | 2011-03-24 23:00:33 +0100 |
|---|---|---|
| committer | Denys Vlasenko <dvlasenk@redhat.com> | 2011-03-24 23:00:33 +0100 |
| commit | 4b19893e61e4baff89f9b57f851e9cbdcaf7cbf2 (patch) | |
| tree | 95b97fd2c9af252a97167ef3527027aa6fbc5e67 /src/plugins/abrt-dump-oops.c | |
| parent | 3070107b5e7ca68839b4fed9c9080615f2e5b06b (diff) | |
| download | abrt-4b19893e61e4baff89f9b57f851e9cbdcaf7cbf2.tar.gz abrt-4b19893e61e4baff89f9b57f851e9cbdcaf7cbf2.tar.xz abrt-4b19893e61e4baff89f9b57f851e9cbdcaf7cbf2.zip | |
oops: don't save bogus "executable", and save real "cmdline" instead of bogus one
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'src/plugins/abrt-dump-oops.c')
| -rw-r--r-- | src/plugins/abrt-dump-oops.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/plugins/abrt-dump-oops.c b/src/plugins/abrt-dump-oops.c index 06f44520..41432043 100644 --- a/src/plugins/abrt-dump-oops.c +++ b/src/plugins/abrt-dump-oops.c @@ -492,6 +492,14 @@ static int save_oops_to_dump_dir(GList *oops_list, unsigned oops_cnt) else perror_msg("Can't open '%s'", "/proc/sys/kernel/tainted"); + char *cmdline_str = NULL; + FILE *cmdline_fp = fopen("/proc/cmdline", "r"); + if (cmdline_fp) + { + cmdline_str = xmalloc_fgetline(cmdline_fp); + fclose(cmdline_fp); + } + time_t t = time(NULL); const char *iso_date = iso_date_string(&t); /* dump should be readable by all if we're run with -x */ @@ -520,11 +528,9 @@ static int save_oops_to_dump_dir(GList *oops_list, unsigned oops_cnt) { dd_create_basic_files(dd, /*uid:*/ my_euid); dd_save_text(dd, FILENAME_ANALYZER, "Kerneloops"); -// TODO: drop FILENAME_EXECUTABLE? - dd_save_text(dd, FILENAME_EXECUTABLE, "kernel"); dd_save_text(dd, FILENAME_KERNEL, first_line); -// TODO: drop FILENAME_CMDLINE? - dd_save_text(dd, FILENAME_CMDLINE, "not_applicable"); + if (cmdline_str) + dd_save_text(dd, FILENAME_CMDLINE, cmdline_str); dd_save_text(dd, FILENAME_BACKTRACE, second_line); // TODO: add "Kernel oops: " prefix, so that all oopses have recognizable FILENAME_REASON? // kernel oops 1st line may look quite puzzling otherwise... @@ -539,7 +545,9 @@ static int save_oops_to_dump_dir(GList *oops_list, unsigned oops_cnt) else errors++; } + free(tainted_str); + free(cmdline_str); return errors; } |
