Add Xianyi's patch for segfaults on kernel 2.6.32 and add documentation
authorAlexander Eberspächer <alex.eberspaecher@gmail.com>
Wed, 2 May 2012 09:33:06 +0000 (11:33 +0200)
committerAlexander Eberspächer <alex.eberspaecher@gmail.com>
Wed, 2 May 2012 09:33:06 +0000 (11:33 +0200)
accordingly.

GotoBLAS_03FAQ.txt
segfaults.patch [new file with mode: 0644]

index b6033fe..b45e6d0 100644 (file)
        number of threads will consume extra resource. I recommend you to
        specify minimum number of threads.
 
+1.9  Q I have segfaults when I compile with USE_OPENMP=1. What's wrong?
+
+     A This may be related to a bug in the Linux kernel 2.6.32. Try applying
+     the patch segaults.patch using
+
+     git am segfaults.patch
+
+     and see if the crashes persist.
 
 2. Architecture Specific issue or Implementation
 
diff --git a/segfaults.patch b/segfaults.patch
new file mode 100644 (file)
index 0000000..9585fa0
--- /dev/null
@@ -0,0 +1,27 @@
+From ac40907baa90a0acc78139762ffa3c6f09274236 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alexander=20Ebersp=C3=A4cher?= <alex.eberspaecher@gmail.com>
+Date: Wed, 2 May 2012 11:22:52 +0200
+Subject: [PATCH] Fix segfaults with kernel 2.6.32. This comes at the price of many compiler warnings.
+
+---
+ common_linux.h |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/common_linux.h b/common_linux.h
+index b0381d9..40a94cb 100644
+--- a/common_linux.h
++++ b/common_linux.h
+@@ -76,8 +76,8 @@ static inline int my_mbind(void *addr, unsigned long len, int mode,
+ #endif
+ #else
+ //Fixed randomly SEGFAULT when nodemask==NULL with above Linux 2.6.34
+-//    unsigned long null_nodemask=0;
+-      return syscall(SYS_mbind, addr, len, mode, nodemask, maxnode, flags);
++      unsigned long null_nodemask=0;
++      return syscall(SYS_mbind, addr, len, mode, &nodemask, maxnode, flags);
+ #endif
+ }
+-- 
+1.7.1
+