Closed ramosian-glider closed 9 years ago
r154803 reverts r154390 and disallows the clients to set their signal handlers.
This should help Chrome, although NaCl tests are broken again.
Reported by ramosian.glider
on 2012-04-16 08:34:33
From the Chromium point of view ASan is a platform, and our SEGV handler is essentially
the default handler for this platform.
If we allow the clients to disable it at all, this may help NaCl, but we'll have to
remove all the Chromium code that disables it in the child processes, so that we don't
lose coverage.
At the moment such a change leads to NaCl being sad again, because it does not consider
ASan as a platform and does not want any signal handlers from it.
Therefore we need some changes on the NaCl side, so the question arises whether we
actually needed to change the Chrome part.
I see two possible solutions for the problem.
1. Let the clients disable our signal handler at their own risk.
Remove all the Chromium code that sets SIG_DFL for the child processes.
When the NaCl process is started, set the signal handler to SIG_DFL.
2. Keep being a platform.
Let the clients set their own signal handlers.
Choosing SIG_DFL sets the ASan handler back.
If the client (e.g. NaCl) really wants the system SIG_DFL, it must
pass some predefined value to sigaction()
(we can either define an additional SIG_ constant, or have some RTL
function with a special meaning, e.g. signal(SIGSEGV,__asan_system_default_signal_handler)
will set the handler to SIG_DFL)
Reported by ramosian.glider
on 2012-04-16 08:35:57
In fact just calling some ASan interface function (__asan_reset_default_signal_handler)
is even better than using a special value to pass to signal/sigaction.
Reported by ramosian.glider
on 2012-04-16 10:25:08
Reported by ramosian.glider
on 2012-10-29 11:46:53
is this actionable?
Reported by konstantin.s.serebryany
on 2013-02-15 14:27:01
Please reopen if we still need to do something.
Reported by konstantin.s.serebryany
on 2013-02-18 06:55:08
WontFix
Adding Project:AddressSanitizer as part of GitHub migration.
Reported by ramosian.glider
on 2015-07-30 09:12:59
Originally reported on Google Code with ID 65
Reported by
ramosian.glider
on 2012-04-16 08:31:41