Profiler on linux: use SA_RESTART signal flag to have most of the syscalls restarted...
authorvitalyr@chromium.org <vitalyr@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 27 Oct 2010 12:45:46 +0000 (12:45 +0000)
committervitalyr@chromium.org <vitalyr@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 27 Oct 2010 12:45:46 +0000 (12:45 +0000)
This change keeps the interactive shell alive.

Review URL: http://codereview.chromium.org/4197002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5720 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/platform-linux.cc

index eefaec9..c0eb213 100644 (file)
@@ -856,7 +856,7 @@ void Sampler::Start() {
   struct sigaction sa;
   sa.sa_sigaction = ProfilerSignalHandler;
   sigemptyset(&sa.sa_mask);
-  sa.sa_flags = SA_SIGINFO;
+  sa.sa_flags = SA_RESTART | SA_SIGINFO;
   if (sigaction(SIGPROF, &sa, &data_->old_signal_handler_) != 0) return;
   data_->signal_handler_installed_ = true;