Author Topic: [fixed] 3.6.0.3: Segfault in Glest::Game::Unit::updateTimedParticles  (Read 1918 times)

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
I was just hosting a game with 8 players, we were playing for about  - roughly - 20 minutes, and at once the game displayed an error message window saying something about segfault, which vanished instantly leaving me only with this --verbose output...
Code: [Select]
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:
Error saved to logfile [/home/tomreyn/.megaglest/error.log]
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-17 20:12:55] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:
Error saved to logfile [/home/tomreyn/.megaglest/error.log]
Segmentation fault (core dumped)

... NO core file (despite of the message and my start script setting ulimit -c unlimited) and this error log:
Code: [Select]
[2012-05-17 20:18:01] Runtime Error information:
======================================================
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::handleSIGSEGV(int) address [0x6d45c2] line: 657
/lib/x86_64-linux-gnu/libc.so.6:() address [0x7f35948f94c0] line: 0

That's not a whole lot of info. ;-)

Do you think this will be better with 3.6.1? I guess the blame is on me, though, since even though i have ulimit -c unlimited in my start_megaglest script (which I did use to run the game), running ulimit -c on the same terminal window now returns 0 - I wonder why...

So this is more an experience than a bug report really.
« Last Edit: 22 September 2012, 17:48:27 by tomreyn »
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
I believe the same thing just happened again, when I was hosting again, but this time I've got a core file. This crash occurred exactly when Dylan disconnected (voluntarily).

End of verbose standard output/error:
Code: [Select]
[2012-05-18 00:05:03] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
[2012-05-18 00:05:03] *ERROR* SOCKET WRITE TIMEOUT In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/shared_lib/sources/platform/posix/socket.cpp::isWritable Line: 1639] i = 0 sock = 17
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:
Error saved to logfile [/home/user1/.megaglest/error.log]

error.log:
Code: [Select]
[2012-05-18 00:22:01] Runtime Error information:
======================================================
In [/home/softcoder/Code/megaglest/branches/release-3.6.0.3/source/glest_game/main/main.cpp::handleSIGSEGV Line: 652] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::handleSIGSEGV(int) address [0x6d45c2] line: 657
/lib/x86_64-linux-gnu/libc.so.6:() address [0x7fae2cb534c0] line: 0

GDB Backtrace (output of: gdb -q -n -ex "thread apply all bt full" -batch megaglest core)
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,239
    • View Profile
I have commited a change in svn that may stabilize the code that caused this failure. See if there is a way to reproduce this?

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
I'm afraid I don't have the slightest idea as to how to reproduce this. If anyone else is, feedback is always welcome. For now I'll tag it [lacks info].
« Last Edit: 20 July 2012, 17:23:58 by tomreyn »
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
This may be a duplicate of this bug.

If this is so, then this issue seems to occur rarely enough to not be a big problem, but still often enough to be one, in v3.6.0.3. It's currently unknown whether this still affects svn head since this has gone through hardening on the network protocol front since the 3.6.0.3 release. Also, if these bugs are related then people disconnecting (voluntarily or by force) off a server seems to trigger it. Unfortunately this alone is not information to reproduce it, yet.
« Last Edit: 20 July 2012, 17:30:37 by tomreyn »
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
Since this problem has not occurred while testing on SVN head, it seems safe to assume that the code stabilization measures [fixed] this.
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·