ok...
I did valgrind just like I stated. I did recompile todays CVS with --enable-debug during configure...... re-made all my plugins. In this instance, I loaded ONLY rogue genocide.
The core dump still took place, but when I tried to do a backtrace like I've done in the past, it said the core didnt match, and to go to hell. There was not a file dumped like DTRemenak described would happen.... the bzfslog.pidXXXXX file... not there.
Code: Select all
Player connect time: 141.468277
Player messages in: al:12(4) en:1(251) kl:8(11) ps:449(31) sb:28(47) se:8(9) total:506(15694) max msgs/bytes per second: 23/713
Player messages out: ac:1(5) al:67(21) ap:4(175) df:6(62) fu:13(63) gf:7(62) kl:59(12) mg:16(82) pb:4(21) ps:2379(34) rp:2(5) sb:263(47) sc:59(19) se:46(9) sv:3(1014) tp:2(9) tu:63(21) total:2994(96911) max msgs/bytes per second: 53/4191
Player connect time: 141.443608
Player messages in: al:13(4) en:1(251) kl:10(11) ps:444(31) sb:66(47) se:10(9) total:544(17369) max msgs/bytes per second: 23/713
Player messages out: ac:1(5) al:67(21) ap:3(175) df:6(62) fu:13(63) gf:7(62) kl:59(12) mg:15(82) pb:3(21) ps:2383(34) rp:2(5) sb:263(47) sc:59(19) se:46(9) sv:3(1014) tp:2(9) tu:62(21) total:2994(96790) max msgs/bytes per second: 49/3988
Player [0] accept() from 69.28.129.166:37020 on 6
Player [0] submitted reverse resolve query
Player [0] removed at 2005-08-28 17:07:29: Disconnected
Queuing ADD message to list server
Player [0] accept() from 69.28.129.166:37021 on 6
Player [0] submitted reverse resolve query
Player [0] removed at 2005-08-28 17:07:29: Disconnected
Player [0] accept() from 192.168.1.1:53444 on 6
Player [0] submitted reverse resolve query
Player [0] inbound UDP up 192.168.1.1:53444 actual 53444
Player [0] outbound UDP up
Player [0] failed to resolve: error 4
Player Darth Vader [0] sent version string: 2.0.3.20050821-DEVEL-linux-SDL
Time elapsed: 0.004126 seconds
Player Darth Vader [0] has joined from 192.168.1.1 at 2005-08-28 17:07:34 with token "1306573705"
Queuing ADD message to list server
Player [1] accept() from 69.28.129.166:37026 on 7
Player [1] submitted reverse resolve query
Player [1] removed at 2005-08-28 17:07:34: Disconnected
Got: TOKGOOD: Darth Vader:MoFo.Admin:MoFo.Cop
Identify DARTH VADER
Queuing ADD message to list server
Player [1] accept() from 69.28.129.166:37027 on 7
Player [1] submitted reverse resolve query
Player [1] removed at 2005-08-28 17:07:34: Disconnected
Player [1] accept() from 201.26.95.14:1411 on 7
Player [1] submitted reverse resolve query
==10435==
==10435== Invalid read of size 1
==10435== at 0x1B906116: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x8105B71: bz_killPlayer(int, bool, int, char const*) (bzfsAPI.cxx:1143)
==10435== by 0x1B906136: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x818E5BB: handleCommand(int, void const*, bool) (bzfs.cxx:3126)
==10435== by 0x818FFFE: handleTcp(NetHandler&, int, RxStatus) (bzfs.cxx:3653)
==10435== by 0x81471C4: GameKeeper::Player::handleTcpPacket(fd_set*) (GameKeeper.cxx:309)
==10435== by 0x8195EEA: main (bzfs.cxx:4803)
==10435== Address 0x2C is not stack'd, malloc'd or (recently) free'd
==10435==
==10435== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==10435== Access not within mapped region at address 0x2C
==10435== at 0x1B906116: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x8105B71: bz_killPlayer(int, bool, int, char const*) (bzfsAPI.cxx:1143)
==10435== by 0x1B906136: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x818E5BB: handleCommand(int, void const*, bool) (bzfs.cxx:3126)
==10435== by 0x818FFFE: handleTcp(NetHandler&, int, RxStatus) (bzfs.cxx:3653)
==10435== by 0x81471C4: GameKeeper::Player::handleTcpPacket(fd_set*) (GameKeeper.cxx:309)
==10435== by 0x8195EEA: main (bzfs.cxx:4803)
==10435==
==10435== ERROR SUMMARY: 79 errors from 12 contexts (suppressed: 40 from 2)
==10435== malloc/free: in use at exit: 278648 bytes in 991 blocks.
==10435== malloc/free: 18114 allocs, 17123 frees, 2556961 bytes allocated.
==10435== For counts of detected errors, rerun with: -v
==10435== searching for pointers to 991 not-freed blocks.
==10435== checked 552624 bytes.
==10435==
==10435==
==10435== 28 bytes in 1 blocks are possibly lost in loss record 68 of 135
==10435== at 0x1B9000BA: operator new[](unsigned) (in /usr/lib/valgrind/vgpreload_memcheck.so)
==10435== by 0x81F018B: FlagType::FlagType(char const*, char const*, FlagEndurance, ShotType, FlagQuality, TeamColor, char const*) (Flag.h:126)
==10435== by 0x81EDD14: Flags::init() (Flag.cxx:86)
==10435== by 0x8191AEB: main (bzfs.cxx:3947)
==10435==
==10435==
==10435== 104 (64 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 90 of 135
==10435== at 0x1B8FFC78: operator new(unsigned) (in /usr/lib/valgrind/vgpreload_memcheck.so)
==10435== by 0x810379B: bz_getPlayerByIndex(int) (bzfsAPI.cxx:668)
==10435== by 0x1B906110: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x8105B71: bz_killPlayer(int, bool, int, char const*) (bzfsAPI.cxx:1143)
==10435== by 0x1B906136: RogueDeathHandler::process(bz_EventData*) (in /home/death/bzflag/plugins/RogueGenocide/RogueGenocide.so)
==10435== by 0x816A856: WorldEventManager::callEvents(bz_eEventType, bz_EventData*) (WorldEventManager.cxx:97)
==10435== by 0x818B468: playerKilled(int, int, int, short, FlagType const*, int, bool) (bzfs.cxx:2261)
==10435== by 0x818E5BB: handleCommand(int, void const*, bool) (bzfs.cxx:3126)
==10435== by 0x818FFFE: handleTcp(NetHandler&, int, RxStatus) (bzfs.cxx:3653)
==10435== by 0x81471C4: GameKeeper::Player::handleTcpPacket(fd_set*) (GameKeeper.cxx:309)
==10435==
==10435==
==10435== 1844 bytes in 1 blocks are possibly lost in loss record 119 of 135
==10435== at 0x1B9000BA: operator new[](unsigned) (in /usr/lib/valgrind/vgpreload_memcheck.so)
==10435== by 0x81452C5: FlagInfo::setSize(int) (FlagInfo.cxx:77)
==10435== by 0x8129EE4: parse(int, char**, CmdLineOptions&, bool) (CmdLineOptions.cxx:1251)
==10435== by 0x819235E: main (bzfs.cxx:3968)
==10435==
==10435==
==10435== 2000 bytes in 3 blocks are possibly lost in loss record 120 of 135
==10435== at 0x1B8FFC78: operator new(unsigned) (in /usr/lib/valgrind/vgpreload_memcheck.so)
==10435== by 0x1B9AA1A4: std::__default_alloc_template<true, 0>::allocate(unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9ACAA7: std::string::_Rep::_S_create(unsigned, std::allocator<char> const&) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9AD13B: std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9AD1E5: std::string::reserve(unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9AE9B2: std::string::append(char const*, unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9AEA34: std::string::operator+=(char const*) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x812491D: parse(int, char**, CmdLineOptions&, bool) (CmdLineOptions.cxx:560)
==10435== by 0x8124F42: parse(int, char**, CmdLineOptions&, bool) (CmdLineOptions.cxx:612)
==10435== by 0x819235E: main (bzfs.cxx:3968)
==10435==
==10435==
==10435== 30864 bytes in 10 blocks are possibly lost in loss record 132 of 135
==10435== at 0x1B8FFC78: operator new(unsigned) (in /usr/lib/valgrind/vgpreload_memcheck.so)
==10435== by 0x1B9A9E28: std::__default_alloc_template<true, 0>::_S_chunk_alloc(unsigned, int&) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9A9F1C: std::__default_alloc_template<true, 0>::_S_refill(unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9AA236: std::__default_alloc_template<true, 0>::allocate(unsigned) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9ACAA7: std::string::_Rep::_S_create(unsigned, std::allocator<char> const&) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9ACB0F: char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x1B9ACC35: std::string::string(char const*, std::allocator<char> const&) (in /usr/lib/libstdc++.so.5.0.7)
==10435== by 0x8219B18: __static_initialization_and_destruction_0(int, int) (BundleMgr.cxx:29)
==10435== by 0x8219B98: _GLOBAL__I__ZN9BundleMgr13currentBundleE (BundleMgr.cxx:117)
==10435== by 0x8225D68: (within /home/death/bzflag/bin/bzfs)
==10435== by 0x80F8150: (within /home/death/bzflag/bin/bzfs)
==10435== by 0x8225CD0: __libc_csu_init (elf-init.c:77)
==10435==
==10435== LEAK SUMMARY:
==10435== definitely lost: 64 bytes in 1 blocks.
==10435== indirectly lost: 40 bytes in 6 blocks.
==10435== possibly lost: 34736 bytes in 15 blocks.
==10435== still reachable: 243808 bytes in 969 blocks.
==10435== suppressed: 0 bytes in 0 blocks.
==10435== Reachable blocks (those to which a pointer was found) are not shown.
==10435== To see them, rerun with: --show-reachable=yes
Segmentation fault (core dumped)
death@linux:~> gdb --core=/home/death/core
GNU gdb 6.2.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i586-suse-linux".
Core was generated by `valgrind --gen-suppressions=no --db-attach=no --leak-check=yes ./bzfs -conf FFA'.
Program terminated with signal 11, Segmentation fault.
#0 0xb0021ae8 in ?? ()
(gdb) file /home/death/bzflag/bin/bzfs
warning: core file may not match specified executable file.
Reading symbols from /home/death/bzflag/bin/bzfs...done.
Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) bt
#0 0xb0021ae8 in ?? ()
(gdb)