| OLD | NEW |
| 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import grp, logging, os, pwd, re, stat, subprocess | 5 import grp, logging, os, pwd, re, stat, subprocess |
| 6 from signal import SIGSEGV | 6 from signal import SIGSEGV |
| 7 from autotest_lib.client.bin import site_crash_test, site_utils, test | 7 from autotest_lib.client.bin import site_crash_test, site_utils, test |
| 8 from autotest_lib.client.common_lib import error, utils | 8 from autotest_lib.client.common_lib import error, utils |
| 9 | 9 |
| 10 _CORE_PATTERN = '/proc/sys/kernel/core_pattern' | 10 _CORE_PATTERN = '/proc/sys/kernel/core_pattern' |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 raise error.TestFail('core pattern should have been core, not %s' % | 46 raise error.TestFail('core pattern should have been core, not %s' % |
| 47 output) | 47 output) |
| 48 | 48 |
| 49 | 49 |
| 50 def _prepare_crasher(self): | 50 def _prepare_crasher(self): |
| 51 """Extract the crasher and set its permissions. | 51 """Extract the crasher and set its permissions. |
| 52 | 52 |
| 53 crasher is only gzipped to subvert Portage stripping. | 53 crasher is only gzipped to subvert Portage stripping. |
| 54 """ | 54 """ |
| 55 self._crasher_path = os.path.join(self.srcdir, 'crasher_nobreakpad') | 55 self._crasher_path = os.path.join(self.srcdir, 'crasher_nobreakpad') |
| 56 utils.system('cd %s; tar xzf crasher.tgz' % | 56 utils.system('cd %s; tar xzf crasher.tgz-unmasked' % |
| 57 self.srcdir) | 57 self.srcdir) |
| 58 | 58 |
| 59 | 59 |
| 60 def _populate_symbols(self): | 60 def _populate_symbols(self): |
| 61 """Set up Breakpad's symbol structure. | 61 """Set up Breakpad's symbol structure. |
| 62 | 62 |
| 63 Breakpad's minidump processor expects symbols to be in a directory | 63 Breakpad's minidump processor expects symbols to be in a directory |
| 64 hierarchy: | 64 hierarchy: |
| 65 <symbol-root>/<module_name>/<file_id>/<module_name>.sym | 65 <symbol-root>/<module_name>/<file_id>/<module_name>.sym |
| 66 """ | 66 """ |
| (...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 449 def run_once(self): | 449 def run_once(self): |
| 450 self.run_crash_tests(['reporter_startup', | 450 self.run_crash_tests(['reporter_startup', |
| 451 'reporter_shutdown', | 451 'reporter_shutdown', |
| 452 'no_crash', | 452 'no_crash', |
| 453 'chronos_nobreakpad_crasher', | 453 'chronos_nobreakpad_crasher', |
| 454 'root_nobreakpad_crasher', | 454 'root_nobreakpad_crasher', |
| 455 'max_enqueued_crashes', | 455 'max_enqueued_crashes', |
| 456 'core_file_persists_in_debug', | 456 'core_file_persists_in_debug', |
| 457 'core_file_removed_in_production'], | 457 'core_file_removed_in_production'], |
| 458 initialize_crash_reporter = True) | 458 initialize_crash_reporter = True) |
| OLD | NEW |