Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
On 16/01/11 23:54, Simon McVittie wrote: > On Wed, 15 Dec 2010 at 11:17:22 +, Daniel Piddock wrote: >> I've been experiencing seg faults of the quake server using openarena from >> experimental (0.8.5-5+exp2). I recompiled both with DEB_BUILD_OPTIONS="noopt >> nostrip" and run with: >> OPENARENA_BACKTRACE=1 /usr/games/openarena-server +exec debian_server.cfg > Hi, > Thanks for testing the experimental openarena! Unfortunately, the openarena > wrapper script in revision -5+exp2 handled OPENARENA_BACKTRACE incorrectly. > Please try the attached script instead (or upgrade to -5+exp3, but you'd > need to rebuild it with nostrip again for useful results). Hi, ioquake has crashed again on oa_dm1 using the new script and gdb generated some data, although it was 3 lines later at be_aas_route.c:1863. if (aasworld.areasettings[testareanum].contents & stopcontents) Dan -- Daniel Piddock, Systems Administrator, CoreFiling Limited http://www.corefiling.com Item: 3 weapon_rocketlauncher ] Program received signal SIGSEGV, Segmentation fault. 0x00468a93 in AAS_PredictRoute (route=0x7fffd060, areanum=497, origin=0x7fffed24df18, goalareanum=2, travelflags=18616254, maxareas=100, maxtime=1000, stopevent=6, stopcontents=1024, stoptfl=67108864, stopareanum=0) at code/b otlib/be_aas_route.c:1863 1863code/botlib/be_aas_route.c: No such file or directory. in code/botlib/be_aas_route.c Thread 1 (process 1996): #0 0x00468a93 in AAS_PredictRoute (route=0x7fffd060, areanum=497, origin=0x7fffed24df18, goalareanum=2, travelflags=18616254, maxareas=100, maxtime=1000, stopevent=6, stopcontents=1024, stoptfl=67108864, stopareanum=0) at co de/botlib/be_aas_route.c:1863 curareanum = 759 reachnum = 994 i = 4 j = 0 testareanum = 53543636 curorigin = {-276, 852, -119.875} reach = 0x7fffee39d7c0 reachareas = 0x75f5fa98 #1 0x0040c879 in SV_GameSystemCalls (args=0x7fffce50) at code/server/sv_game.c:525 No locals. #2 0x00445507 in VM_DllSyscall (arg=576) at code/qcommon/vm.c:353 args = {576, 140737488343136, 497, 140737172004632, 2, 18616254, 3472609778985861220, 1000, -4294967290, 140733193389056, 140733260496896, 140733193388032, 6298758252, 433791685152, 8608550846, 140737172004632} i = 16 ap = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fffcff0, reg_save_area = 0x7fffcee0}} #3 0x7fffecfe8a2e in trap_AAS_PredictRoute (route=0x7fffd060, areanum=497, origin=0x7fffed24df18, goalareanum=2, travelflags=18616254, maxareas=100, maxtime=1000, stopevent=6, stopcontents=1024, stoptfl=67108864, stopareanum=0) at code/game/g_syscalls.c:357 No locals. #4 0x7fffecf8ca81 in BotAIPredictObstacles (bs=0x7fffed24cbe4, goal=0x7fffd220) at code/game/ai_dmq3.c:4658 modelnum = 0 entitynum = -316355612 bspent = 32767 activategoal = {inuse = 0, goal = {origin = {0, 0, 0}, areanum = 0, mins = {0, 0, 0}, maxs = {0, 0, 0}, entitynum = 0, number = 0, flags = 0, iteminfo = 0}, time = 0, start_time = 0, justused_time = 0, shoot = 0, weapon = 0, target = {0, 0, 0}, origin = {0, 0, 2.1019477e-44}, areas = {0 }, numareas = 16, areasdisabled = 0, next = 0x3f774334} route = {endpos = {-276, 852, -119.875}, endarea = 759, stopevent = 0, endcontents = 0, endtravelflags = 2, numareas = 0, time = 646} #5 0x7fffecf7b47c in AINode_Seek_LTG (bs=0x7fffed24cbe4) at code/game/ai_dmnet.c:1986 goal = {origin = {1049, 1286, 72.25}, areanum = 2, mins = {-13, -13, -13}, maxs = {13, 13, 13}, entitynum = 172, number = 202, flags = 5, iteminfo = 32} target = {0, 0, 0} dir = {0, 0, 0} moveresult = {failure = 0, type = 0, blocked = 0, blockentity = 0, traveltype = 0, flags = 0, weapon = 0, movedir = {0, 0, 0}, ideal_viewangles = {0, 0, 0}} range = 0 #6 0x7fffecf8e552 in BotDeathmatchAI (bs=0x7fffed24cbe4, thinktime=0.10001) at code/game/ai_dmq3.c:5372 gender = "\227\340\362?", '\000' "\340, \327\377\377\377\177\000\000*\207\376\354\377\177\000\000\000\000\000\000\000\000\000\000\030\337$\355\377\177\000\000@\330\377\377\377\177\000\000O\017\370\354\377\177\000\000P\330\377\377\361\001\000\000\030\337$\355\377\177\000\000\364\313$\355\377\177\000\000\343\362\370\354\377\177\000\000@\330\377\377\377\177\000\000\067\206\376\354\377\177\000\000\364\313$\355\377\177\000\000(\217\376\354\000\004\000" name = "`\330\377\377\377\177\000\000\030\337$\355\377\177\000\000\207SD\000\000\000\000\000\000\004\000\000\000\000\000\000\207SD", '\000' , "\001\000\000\006\377\177\000\000\000\000\000\000\377\177\000\000\220\334\377\377\377\177\000\000/+\373\354\020\000\000\000\277#0D\242~\236D\002\000\000\000\000\000\000\000`\330\377\377\377\177\000\000\000\004\000\000\000\000\000\000\207SD", '\000' "\260, +\232\367\377\177\000" buf = "3\001\000\000\000\000\00
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
Another crash, this time at line 1860. -- Daniel Piddock, Systems Administrator, CoreFiling Limited http://www.corefiling.com crash2 Description: Binary data
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
On Wed, 15 Dec 2010 at 11:17:22 +, Daniel Piddock wrote: > I've been experiencing seg faults of the quake server using openarena from > experimental (0.8.5-5+exp2). I recompiled both with DEB_BUILD_OPTIONS="noopt > nostrip" and run with: > OPENARENA_BACKTRACE=1 /usr/games/openarena-server +exec debian_server.cfg Hi, Thanks for testing the experimental openarena! Unfortunately, the openarena wrapper script in revision -5+exp2 handled OPENARENA_BACKTRACE incorrectly. Please try the attached script instead (or upgrade to -5+exp3, but you'd need to rebuild it with nostrip again for useful results). Regards, Simon #!/bin/sh # quake3 or quake3-server or whatever IOQ3SELF=openarena-server # "server" or "client" IOQ3ROLE=server # ioquake3 or ioq3ded IOQ3BINARY=ioq3ded # q3a or openarena IOQ3DOTDIR=openarena ENGINE="/usr/lib/ioquake3/${IOQ3BINARY}" DEBUGGER="$OPENARENA_DEBUGGER" # we're a standalone game CVARS="+set com_standalone 1" CVARS="$CVARS +set fs_basegame baseoa" CVARS="$CVARS +set fs_basepath /usr/lib/games/openarena" CVARS="$CVARS +set fs_homepath \"$HOME/.$IOQ3DOTDIR\"" # OA uses a different protocol number to reflect incompatible game content CVARS="$CVARS +set protocol 71" # OA's default master server is different CVARS="$CVARS +set sv_master1 dpmaster.deathmask.net" # update.quake3arena.com is pretty irrelevant if you're playing OA CVARS="$CVARS +set cl_motd 0" QUIET=0 EXCUSE="\ OpenArena ${IOQ3ROLE} wrapper for Debian\n\ \n\ Usage: ${IOQ3SELF} [OPTION]...\n\ \n\ -h, --help\t\tDisplay this help\n\ -q, --quiet\t\tDisable console output\n\ +\tPass commands to the engine\n" while [ "$1" != "" ]; do case "$1" in -h|--help) echo ${EXCUSE} exit 0 ;; -q|--quiet) CVARS="$CVARS +set ttycon 0" QUIET=1 ;; *) break ;; esac shift done if test "z$QUIET" = z1; then exec >/dev/null 2>&1; fi if test -n "$OPENARENA_BACKTRACE"; then exec gdb -return-child-result -batch -ex run -ex 'thread apply all bt full' -ex kill -ex quit --args ${ENGINE} ${CVARS} "$@" else exec ${DEBUGGER} ${ENGINE} ${CVARS} "$@" fi signature.asc Description: Digital signature
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
Package: ioquake3-server Version: 1.36+svn1802-1 Severity: important I've been experiencing seg faults of the quake server using openarena from experimental (0.8.5-5+exp2). I recompiled both with DEB_BUILD_OPTIONS="noopt nostrip" and run with: OPENARENA_BACKTRACE=1 /usr/games/openarena-server +exec debian_server.cfg Configured to have 4 bots play amongst themselves. Map at the time of the crash was oa_dm1.aas Last few lines of console output: Kill: 3 2 4: Grunt killed Rai by MOD_GRENADE Item: 0 item_armor_shard Item: 3 weapon_rocketlauncher Item: 0 item_armor_shard say: Rai: I hope your genitals fall off in a freak fishing accident. Rai^7: I hope your genitals fall off in a freak fishing accident. ] Program received signal SIGSEGV, Segmentation fault. 0x00468a5d in AAS_PredictRoute (route=0x7fffd160, areanum=349, origin=0x7fffed25df18, goalareanum=2, travelflags=18616254, maxareas=100, maxtime=1000, stopevent=6, stopcontents=1024, stoptfl=67108864, stopareanum=0) at code/botlib/be_aas_route.c:1860 1860code/botlib/be_aas_route.c: No such file or directory. in code/botlib/be_aas_route.c Undefined command: "". Try "help". Kill the program being debugged? (y or n) [answered Y; input not from terminal] Line 1860 is: testareanum = aasworld.reachabilityareaindex[reachareas->firstarea + j]; I don't know gdb well enough to know why it's giving "Undefined command". -- System Information: Debian Release: 5.0.7 APT prefers stable APT policy: (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-bpo.5-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages ioquake3-server depends on: ii libc6 2.7-18lenny6 GNU C Library: Shared libraries ii zlib1g 1:1.2.3.3.dfsg-12 compression library - runtime Versions of packages ioquake3-server recommends: ii openarena-server0.8.5-5+exp2 server and game logic for the game ioquake3-server suggests no packages. -- no debconf informatio -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
On 11/03/11 00:04, Simon McVittie wrote: > I haven't been able to reproduce this myself, but I reported it upstream and > Thilo Schulz suggested a patch that might fix it. Could you try ioquake3 from > experimental, version 1.36+svn1921-1? > > Regards, > S I've been running the 1.36+svn1921-1 server for almost a month. It has recently crashed on dm-oa1 again at the same point in the code. This isn't something I can easily reproduce and it has only happened on dm-oa1 so far. Attaching log output for the last map, including backtrace. Dan -- Daniel Piddock, Systems Administrator, CoreFiling Limited http://www.corefiling.com debug.log Description: Binary data
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
> > On Wed, 15 Dec 2010 at 11:17:22 +, Daniel Piddock wrote: > >> I've been experiencing seg faults of the quake server using openarena from > >> experimental (0.8.5-5+exp2). I haven't been able to reproduce this myself, but I reported it upstream and Thilo Schulz suggested a patch that might fix it. Could you try ioquake3 from experimental, version 1.36+svn1921-1? Regards, S -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
Hi, alas the backtraces you provided are not really helpful. It's not your fault, it's simply that the data that is causing this bug is buried in some structures not provided in the log. You could give additional information via a core-file, i.e. run the command generate-core-file inside gdb when it has crashed and send that file to me together with the server binary. Note that the core file contains lots of sensitive data, like server rcon password, so only post it to my email address and if you are willing to. This is a hard bug to track down, and I unsuccessfully ran a server with OpenArena for several days with bots without the bug occuring. There are two possibilities: - The map file oa_dm1 is corrupt and the bug triggers seldom only - Memory gets overwritten over the course of running the application. Either way, this should not crash ioquake3 -- Thilo Schulz signature.asc Description: This is a digitally signed message part.
Bug#607178: ioquake3-server: Seg fault caused by code/botlib/be_aas_route.c:1860
Hi, I had reproduce this bug with the same map oa_dm1 on FreeBSD. Now it's fixed for me with i suppose this commit on official github repository: https://github.com/ioquake/ioq3/commi/fc16ac6bd2d05cba8a2d057994b097e95bae28a0 Now, the server running since two months without crashing. Regards, Pascal