]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix 325714 Empty vgcore but RLIMIT_CORE is big enough (too big)
authorPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Mon, 16 Dec 2013 22:52:20 +0000 (22:52 +0000)
committerPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Mon, 16 Dec 2013 22:52:20 +0000 (22:52 +0000)
Use ULong rather than UInt for coredump file size.

Tested manually by
  ulimit -c 4294967296
  ./vg-in-place ./gdbserver_tests/gone abort
valgrind creates vgcore.xxxxx unusable by GDB.

With the fix, GDB can read the core dump.

Patch from  Romain Geissler

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

NEWS
coregrind/m_coredump/coredump-elf.c
coregrind/m_coredump/coredump-macho.c
coregrind/pub_core_coredump.h

diff --git a/NEWS b/NEWS
index 6e484ef8f878636ccff9129b3f3b8072b94709f2..fa4537c95886afa2793c676fda2669b018ab3f5b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -13,8 +13,8 @@ Release 3.10.0 (?? ?????? 201?)
 
 * New and modified GDB server monitor features:
 
-  - A new monitor command "v.info stats" that shows various valgrind core and tool
-    statistics.
+  - A new monitor command "v.info stats" that shows various valgrind core and
+    tool statistics.
 
 * ==================== FIXED BUGS ====================
 
@@ -29,6 +29,7 @@ To see details of a given bug, visit
   https://bugs.kde.org/show_bug.cgi?id=XXXXXX
 where XXXXXX is the bug number as listed below.
 
+325714  Empty vgcore but RLIMIT_CORE is big enough (too big) 
 326462  Refactor vgdb to isolate invoker stuff into separate module
 326983  Clear direction flag after tests on amd64.
 327238  Callgrind Assertion 'passed <= last_bb->cjmp_count' failed
index 98d855bbf0672135523c2dde715084ca274db187..65b706104207a100fdeaf4fc91fdefc92aa47a36 100644 (file)
@@ -518,7 +518,7 @@ static void fill_xfpu(const ThreadState *tst, vki_elf_fpxregset_t *xfpu)
 #endif
 
 static
-void make_elf_coredump(ThreadId tid, const vki_siginfo_t *si, UInt max_size)
+void make_elf_coredump(ThreadId tid, const vki_siginfo_t *si, ULong max_size)
 {
    HChar* buf = NULL;
    const HChar *basename = "vgcore";
@@ -692,7 +692,7 @@ void make_elf_coredump(ThreadId tid, const vki_siginfo_t *si, UInt max_size)
    VG_(close)(core_fd);
 }
 
-void VG_(make_coredump)(ThreadId tid, const vki_siginfo_t *si, UInt max_size)
+void VG_(make_coredump)(ThreadId tid, const vki_siginfo_t *si, ULong max_size)
 {
    make_elf_coredump(tid, si, max_size);
 }
index 499bebabcbdb4364b3e9d65a725313df89904ee3..dbd3d6a425f062d0720dc5401dca54d5ad1945d2 100644 (file)
@@ -36,7 +36,7 @@
 #include "pub_core_libcsetjmp.h"   // to keep _threadstate.h happy
 #include "pub_core_threadstate.h"
 
-void VG_(make_coredump)(ThreadId tid, const vki_siginfo_t *si, UInt max_size)
+void VG_(make_coredump)(ThreadId tid, const vki_siginfo_t *si, ULong max_size)
 {
    // DDD: #warning GrP fixme coredump
 }
index c981e7faca2027a49e51c15cd51b1b6b63e0e0b3..08e41079cc713bc9fe5c8b7347177b2e23906508 100644 (file)
@@ -39,7 +39,7 @@
 //--------------------------------------------------------------------
 
 extern void VG_(make_coredump) ( ThreadId tid, const vki_siginfo_t *si,
-                                 UInt max_size );
+                                 ULong max_size );
 
 #endif   // __PUB_CORE_COREDUMP_H