]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Partial merge of r5662 (Fix CPU feature identification for ppc32)
authorJulian Seward <jseward@acm.org>
Tue, 28 Feb 2006 13:05:00 +0000 (13:05 +0000)
committerJulian Seward <jseward@acm.org>
Tue, 28 Feb 2006 13:05:00 +0000 (13:05 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_1_BRANCH@5703

coregrind/m_machine.c

index 8c3d096935a59a584ccc1dda0c022d5b222d7666..8b0469ac31558e5ce065408e44902730d48bffdb 100644 (file)
@@ -341,8 +341,12 @@ Bool VG_(machine_get_hwcaps)( void )
      VG_(sigaction)(VKI_SIGILL, NULL, &saved_act);
      tmp_act = saved_act;
 
+     /* NODEFER: signal handler does not return (from the kernel's
+        point of view), hence if it is to successfully catch a signal
+        more than once, we need the NODEFER flag. */
      tmp_act.sa_flags &= ~VKI_SA_RESETHAND;
      tmp_act.sa_flags &= ~VKI_SA_SIGINFO;
+     tmp_act.sa_flags |=  VKI_SA_NODEFER;
 
      tmp_act.ksa_handler = handler_sigill;
      VG_(sigaction)(VKI_SIGILL, &tmp_act, NULL);