gdb/testsuite/
authorJan Kratochvil <jan.kratochvil@redhat.com>
Mon, 19 Mar 2012 18:38:56 +0000 (18:38 +0000)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Mon, 19 Mar 2012 18:38:56 +0000 (18:38 +0000)
* gdb.base/auxv.c (func2): setrlimit to infinity to enable core dumps.
* gdb.base/auxv.exp: Try to compile it with -DUSE_RLIMIT first.
(generate native core dump): Make the test unsupported if core cannot
be generated.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/auxv.c
gdb/testsuite/gdb.base/auxv.exp

index 2a8bf9d0919fa303d609279f2d48a6c27d50f218..0c055760381dcdea4216aef2aa601944c7550875 100644 (file)
@@ -1,3 +1,11 @@
+2012-03-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
+           Siddhesh Poyarekar  <siddhesh@redhat.com>
+
+       * gdb.base/auxv.c (func2): setrlimit to infinity to enable core dumps.
+       * gdb.base/auxv.exp: Try to compile it with -DUSE_RLIMIT first.
+       (generate native core dump): Make the test unsupported if core cannot
+       be generated.
+
 2012-03-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
        * gdb.gdb/selftest.exp (do_steps_and_nexts): New entry
index ed5f2b6ec40a24e171621a8b453e4469475e2fab..c87d0f7c2e42a7de93f592645ad6696057d7867f 100644 (file)
 #define ABORT {char *invalid = 0; *invalid = 0xFF;}
 #endif
 
+#ifdef USE_RLIMIT
+# include <sys/resource.h>
+# ifndef RLIM_INFINITY
+#  define RLIM_INFINITY -1
+# endif
+#endif /* USE_RLIMIT */
+
 /* Don't make these automatic vars or we will have to walk back up the
    stack to access them. */
 
@@ -53,6 +60,14 @@ func2 (int x)
   int i;
   static int y;
 
+#ifdef USE_RLIMIT
+  {
+    struct rlimit rlim = { RLIM_INFINITY, RLIM_INFINITY };
+
+    setrlimit (RLIMIT_CORE, &rlim);
+  }
+#endif
+
   /* Make sure that coremaker_local doesn't get optimized away. */
   for (i = 0; i < 5; i++)
     coremaker_local[i] = i;
index da10f058a46a4d5998c97267f571f931a2437b8c..16f12c7f93d4abbad44af86296743240b3906899 100644 (file)
@@ -31,7 +31,10 @@ set binfile ${objdir}/${subdir}/${testfile}
 set corefile ${objdir}/${subdir}/${testfile}.corefile
 set gcorefile ${objdir}/${subdir}/${testfile}.gcore
 
-if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
+if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable \
+                 {debug additional_flags=-DUSE_RLIMIT}] != ""
+     && [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable \
+                 {debug}] != "" } {
     untested "couldn't compile ${srcdir}/${subdir}/${srcfile}"
     return -1
 }
@@ -155,7 +158,7 @@ if {$core_works} {
     } else {
        set core_works 0
        warning "can't generate a core file - core tests suppressed - check ulimit -c"
-       fail $test
+       unsupported $test
     }
 } else {
     unsupported $test