]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
ppc32-linux: di_notify_mmap: accept data sections mapped rwx as well as ones
authorJulian Seward <jseward@acm.org>
Sun, 16 Aug 2009 01:48:35 +0000 (01:48 +0000)
committerJulian Seward <jseward@acm.org>
Sun, 16 Aug 2009 01:48:35 +0000 (01:48 +0000)
mapped rw-.  Fixes #190820.  Really, this logic is still pretty ropey; we
could do a lot better here.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10828

coregrind/m_debuginfo/debuginfo.c

index bb2016f14e3687e7f53cfd88aff44a4c4894403b..eed2ab1f46cd8a4f12cd0cebd124f9946089969a 100644 (file)
@@ -699,13 +699,16 @@ ULong VG_(di_notify_mmap)( Addr a, Bool allow_SkFileV )
 
       x86-linux:   consider if r and x
       all others:  consider if r and x and not w
+
+      2009 Aug 16: apply similar kludge to ppc32-linux.
+      See http://bugs.kde.org/show_bug.cgi?id=190820
    */
    is_rx_map = False;
    is_rw_map = False;
-#  if defined(VGA_x86)
+#  if defined(VGA_x86) || defined(VGA_ppc32)
    is_rx_map = seg->hasR && seg->hasX;
    is_rw_map = seg->hasR && seg->hasW;
-#  elif defined(VGA_amd64) || defined(VGA_ppc32) || defined(VGA_ppc64)
+#  elif defined(VGA_amd64) || defined(VGA_ppc64)
    is_rx_map = seg->hasR && seg->hasX && !seg->hasW;
    is_rw_map = seg->hasR && seg->hasW && !seg->hasX;
 #  else