Adds support for scanning ARM backtraces so that kernel crash reporting
can work on ARM.
BUG=chromium-os:12454
TEST=cat /sys/kernel/debug/preserved/kcrash > x
crash_reporter -generate_kernel_signature x
Verify that it finds a backtrace properly.
FEATURES=test emerge-x86-mario crash-reporter
- check all tests pass (this will run both ARM and X86 tests)
Change-Id: I4dc6d7a2bae53d05883da9425ec8e9ac4a5c2bba
Review URL: http://codereview.chromium.org/6599022
When unable to generate a crash, don't show the commands' arguments with
'ps' because they may contain PII.
Change-Id: I1e2f40e59535f4de08f43012727ab8e92bad8a0d
BUG=chromium-os:13206
TEST=unit tests, logging_UserCrash autotest
Review URL: http://codereview.chromium.org/6722017
The original code review link is here: http://codereview.chromium.org/6559003/
BUG=chromium-os:12207
TESTS=logging_UserCrash, logging_CrashSender, manual test which involves
purposely crashing a test to determine if minidump information is properly collected
Change-Id: I20274050cd698434951c65612e246f510c8082cb
TEST=
Review URL: http://codereview.chromium.org/6615021
BUG=chromium-os:12207
TESTS=logging_UserCrash, logging_CrashSender, manual test which involves
purposely crashing a test to determine if minidump information is properly
collected
Change-Id: Id2195125289a695515b1722442116d6a6d9c4895
Review URL: http://codereview.chromium.org/6559003
We add logging messages that are generated during invocation of core2md, but we also enable sending arbitrary system info based on the configuration file. In this case we add the list of running processes, meminfo, and dmesg.
Change-Id: Ifdf29b89dd60d56349fa39095d2aa07f6b5e2de2
BUG=chromium-os:6299,chromium-os:9345
TEST=UserCrash, unit tests
Review URL: http://codereview.chromium.org/6297004
Change-Id: Idcb3dff3b98951b41a55b9f48968c3608b44efae
BUG=9352
TEST=
1) UserCrash
2) Crash random process and verify Chrome indicates "other user" crashes
occurred in its stability UMA data.
Review URL: http://codereview.chromium.org/6138005
Additional change for the relocation of Autotest from /home/autotest to /usr/local/autotest. See http://codereview.chromium.org/6090004/
Change-Id: I2995fdc76f56d4efbb6450d4a7da3adc321eae91
BUG=chromium-os:10799
TEST=Will test as whole with rest of /usr/local changes.
Review URL: http://codereview.chromium.org/5964016
We also disallow more than 4 nested crashes. This way we know if core2md crashes for instance, but not if crash_reporter crashes while handling the core2md crash that came from crash_reporter. Note that the kernel does not know about parent/child process relationships, it just counts concurrent handling, so it is possible that some of many crashing processes will be discarded.
See crash report id 473c22ed428d33a9 for an example report with update_engine logs.
Change-Id: I9ff9f03a94dc87d2d42840511c2e5e42ee37cea8
BUG=9176
TEST=UserCrash,CrashSender,unit tests
Review URL: http://codereview.chromium.org/5814001
Updated the unclean shutdown collector to check and report the
modification times of trace files left by power manager to indicate that
the system was suspended and that it was running on low battery.
These files are interpreted by the unclean shutdown collector to
determine the cause of an unclean shutdown -- either the battery ran
out during suspend or the battery ran out after resuming from a low
battery-induced suspend and it continued to run on battery.
BUG=chromium-os:1472
TEST=Let the battery run below the cutoff, suspend & resume, and then
remove the battery to simulate running dry; check crash reporter
logs. Alternatively/additionally, let it suspend and remove the battery
while suspended. Restart and check crash reporter logs.
Signed-off-by: Simon Que <sque@chromium.org>
Change-Id: I8e6767e8457afb7abf1e7300eac020adda1ebb48
Review URL: http://codereview.chromium.org/3644007
BUG=8415
TEST=Run UserCrash and CrashSender while an unrelated process is crashing at about 10Hz
Change-Id: I7f86df8caec19278337ca463f09705e4fcd788f3
Review URL: http://codereview.chromium.org/4190014
Also, move the logic for picking which extra parameters to send up above where mock sending ends so UserCrash detects this regression in the future. And merge unknown and undefined special strings into one to avoid confusion.
Change-Id: Ic55a0c5b473a0cef39eac2c1250d1607deffe050
BUG=8266
TEST=User/KernelCrash and CrashSender
Review URL: http://codereview.chromium.org/4139011
Change-Id: I40ba7fb556217bf0bea156e0496145d7195a1229
BUG=7783
TEST=sudo pkill -STOP dbus-daemon;sleep 100&ill -SEGV $!;pgrep crash_reporter shows crash_reporter finished dumping sleep, even though dbus-daemon is unreachable. Also ran UserCrash and CrashSender.
Review URL: http://codereview.chromium.org/3976001
Adding meta files also:
1) ensures atomically added crash reports
2) allows us to remove orphaned crash report payload files
(such as core files)
3) gives us better control over the number of reports in
crash directory
While we're here, also made these minor changes
1) send board (x86-generic, x86-mario, etc) to crash server
2) send hwclass to crash server
3) Only record crash reports when metrics are enabled.
4) No longer allow crash reporting to staging server.
BUG=6100,5805,5624,6865
TEST=unit tests plus UserCrash,CrashSender,KernelCrash autotests
Change-Id: Ieea9bdc8e0680b379c65b91cc56ca0611dd0f31c
Review URL: http://codereview.chromium.org/3436029
There's no need to write to a file since we only log messages for commandline parameter validations (ie. usage errors).
BUG=6446
TEST=unit test
Change-Id: I0e55d569534f953526a6b788dbc6b3e284ff8b4f
Review URL: http://codereview.chromium.org/3464008
Up to 32 crashes per spool and 32 sends per day.
BUG=6355,6782
Change-Id: I99e86265c035ad62937aa135467681be8ef70f9a
TEST=UserCrash and CrashSender
Review URL: http://codereview.chromium.org/3414006
logging_KernelCrashServer and logging_UserCrash tests fail on an Official
image, because crash_sender's is_official() test leaks the "Official" line:
grep needs the quiet option (and does not need a cut).
BUG=837
TEST=logging_UserCrash
Signed-off-by: Hugh Dickins <hughd@chromium.org>
Review URL: http://codereview.chromium.org/3357010
No kcrash was collected because the IsEnabled() test always failed:
we must do the kernel_collector->Enable() first. I've not checked
if this might break the Override path (for local testing): it's more
important for the feature to work for real than in an artificial test.
BUG=837,5865
TEST=logging_KernelCrashServer or manual procedure
Signed-off-by: Hugh Dickins <hughd@chromium.org>
Review URL: http://codereview.chromium.org/3317007
BUG=6134
TEST=Run CrashSender and UserCrash, also test starting those tests while crash_sender is already running.
Change-Id: Ie80c450f6b0da1b67398aa67fd9b74903abc430b
Review URL: http://codereview.chromium.org/3197024