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 |