2025-07-22 01:33 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0003905Spring engineGeneralpublic2013-07-31 15:24
Reporterabma 
Assigned Toabma 
PrioritynormalSeveritycrashReproducibilityalways
StatusresolvedResolutionno change required 
Product Version 
Target Version95.0Fixed in Version 
Summary0003905: SIGFPE in rts/Game/GameHelper.cpp:606
Description[f=0006695] Error: Floating point exception (SIGFPE) in spring 94.1.1-751-ge5af6e7 develop (Debug OMP)
[f=0006695] Error: Stacktrace:
[f=0006695] Error: <0> /lib/x86_64-linux-gnu/libpthread.so.0(+0xfbd0) [0x7f367237dbd0]
[f=0006695] Error: <1> /home/abma/dev/spring/develop/rts/Game/GameHelper.cpp:606
[f=0006695] Error: <2> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:314
[f=0006695] Error: <3> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:349 (discriminator 1)
[f=0006695] Error: <4> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:285
[f=0006695] Error: <5> /home/abma/dev/spring/develop/rts/Lua/LuaUnitDefs.cpp:779 (discriminator 1)
[f=0006695] Error: <6> /home/abma/dev/spring/develop/rts/Lua/LuaUnitDefs.cpp:775 (discriminator 1)
[f=0006695] Error: <7> /home/abma/dev/spring/develop/rts/Lua/LuaUnsyncedRead.cpp:1282 (discriminator 3)
[f=0006695] Error: <8> /home/abma/dev/spring/develop/rts/Game/Game.cpp:1566
[f=0006695] Error: <9> /home/abma/dev/spring/develop/rts/Net/NetCommands.cpp:429
[f=0006695] Error: <10> /home/abma/dev/spring/develop/rts/Game/Game.cpp:966
[f=0006695] Error: <11> /usr/include/c++/4.7/ext/new_allocator.h:99
[f=0006695] Error: <12> /usr/include/c++/4.7/bits/stl_list.h:379
[f=0006695] Error: <13> /usr/include/c++/4.7/bits/stl_list.h:234
[f=0006695] Error: <14> /home/abma/dev/spring/develop/rts/Map/SMF/SMFReadMap.cpp:416 (discriminator 1)
[f=0006695] Error: <15> /home/abma/dev/spring/develop/rts/Map/SMF/SMFReadMap.cpp:600
Steps To Reproducepr-downloader swiw:stable
start game

/cheat
/give all
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0011111

cleanrock (reporter)

I cant reproduce this and stack trace doesn't make sense to me when looking at develop code here.
I use b58 and Spring 94.1.1-754-gbc5c922 develop (Debug OMP), tried RelWithDebInfo, Debug and Debug2.

Also, what version is ge5af6e7 ? It doesn't exist in repo at least.
Which map did u use ?

~0011113

abma (administrator)

sorry, uncommited again :-|

an other crash: this time with /give all & /give all 1

an other one:
[f=0000780] Error: Floating point exception (SIGFPE) in spring 94.1.1-752-gd443b86 develop (Debug OMP)
[f=0000780] Error: Stacktrace:
[f=0000780] Error: <0> /lib/x86_64-linux-gnu/libpthread.so.0(+0xfbd0) [0x7fcf5a4a4bd0]
[f=0000780] Error: <1> /home/abma/dev/spring/develop/rts/Game/GameHelper.cpp:606
[f=0000780] Error: <2> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:314
[f=0000780] Error: <3> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:349 (discriminator 1)
[f=0000780] Error: <4> /home/abma/dev/spring/develop/rts/Map/MapInfo.cpp:285
[f=0000780] Error: <5> /home/abma/dev/spring/develop/rts/Lua/LuaUnitDefs.cpp:779 (discriminator 1)
[f=0000780] Error: <6> /home/abma/dev/spring/develop/rts/Lua/LuaUnitDefs.cpp:775 (discriminator 1)
[f=0000780] Error: <7> /home/abma/dev/spring/develop/rts/Lua/LuaUnsyncedRead.cpp:1282 (discriminator 3)
[f=0000780] Error: <8> /home/abma/dev/spring/develop/rts/Game/Game.cpp:1566
[f=0000780] Error: <9> /home/abma/dev/spring/develop/rts/Net/NetCommands.cpp:429
[f=0000780] Error: <10> /home/abma/dev/spring/develop/rts/Game/Game.cpp:966
[f=0000780] Error: <11> /usr/include/c++/4.7/ext/new_allocator.h:99
[f=0000780] Error: <12> /usr/include/c++/4.7/bits/stl_list.h:379
[f=0000780] Error: <13> /usr/include/c++/4.7/bits/stl_list.h:234
[f=0000780] Error: <14> /home/abma/dev/spring/develop/rts/Map/SMF/SMFReadMap.cpp:416 (discriminator 1)
[f=0000780] Error: <15> /home/abma/dev/spring/develop/rts/Map/SMF/SMFReadMap.cpp:600
[f=0000780] Error: <16> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fcf56dcbea5]
[f=0000780] Error: <17> ??:?


crash happens when replaying demo, too.

~0011114

abma (administrator)

Last edited: 2013-07-31 13:27

View 3 revisions

print weaponDef->name
$1 = {static npos = <optimized out>,
  _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x23667f8 "imp_i_flametrooper"}}

https://github.com/spring/spring/blob/develop/rts/Game/GameHelper.cpp#L606

not sure how to fix:

std::max(1.0f, weapon->reloadTime * GAME_SPEED)

maybe?!

~0011115

abma (administrator)

Last edited: 2013-07-31 13:34

View 2 revisions

damnit... we really need regression tests so stupid people like me can fix stuff by try and error ;)

target version set to 95.0 because this SIGFPE (imo) could cause a desync.

~0011116

abma (administrator)

aww, springs stacktrace is broken! :-|

gdb's looks like this:
#0 0x000000000059db69 in CGameHelper::GenerateWeaponTargets (weapon=0x19ee5440,
    lastTargetUnit=0x0, targets=...) at rts/Game/GameHelper.cpp:606
#1 0x0000000000c1acc6 in CWeapon::AutoTarget (this=0x19ee5440) at rts/Sim/Weapons/Weapon.cpp:733
#2 0x0000000000c1bdf1 in CWeapon::SlowUpdate (this=0x19ee5440, noAutoTargetOverride=false)
    at rts/Sim/Weapons/Weapon.cpp:893
0000003 0x0000000000c1b1c1 in CWeapon::SlowUpdate (this=0x19ee5440) at rts/Sim/Weapons/Weapon.cpp:804
0000004 0x0000000000bc2d90 in CUnit::SlowUpdateWeapons (this=0x19eda400) at rts/Sim/Units/Unit.cpp:1024
0000005 0x0000000000bc2c23 in CUnit::SlowUpdate (this=0x19eda400) at rts/Sim/Units/Unit.cpp:1001
#6 0x0000000000be60ee in CUnitHandler::Update (this=0x817a280)
    at rts/Sim/Units/UnitHandler.cpp:311
#7 0x0000000000585a50 in CGame::SimFrame (this=0x1ac29a0) at rts/Game/Game.cpp:1565
#8 0x00000000006f9a2c in CGame::ClientReadNet (this=0x1ac29a0) at rts/Net/NetCommands.cpp:424
#9 0x00000000005828ec in CGame::Update (this=0x1ac29a0) at rts/Game/Game.cpp:964
0000010 0x0000000000c8a808 in Threading::UpdateGameController (ac=0x1ac29a0)
    at rts/System/Platform/Threading.cpp:348
#11 0x0000000000c93c98 in SpringApp::Update (this=0x7fffffffe350) at rts/System/SpringApp.cpp:963
0000012 0x0000000000c93f87 in SpringApp::Run (this=0x7fffffffe350, argc=2, argv=0x7fffffffe508)
    at rts/System/SpringApp.cpp:1051
0000013 0x0000000000c6c834 in Run (argc=2, argv=0x7fffffffe508) at rts/System/Main.cpp:64
0000014 0x0000000000c6cf83 in main (argc=2, argv=0x7fffffffe508) at rts/System/Main.cpp:149

~0011117

cleanrock (reporter)

Last edited: 2013-07-31 15:06

View 4 revisions

I am not sure the below problem is the same but i see this when i run develop and do /give all, /give all 1 :
[f=0023941] Error: LuaRules::RunCallIn: error = 2, GameFrame, [string "LuaRules/Gadgets/unit_attributes.lua"]:82: attempt to perform arithmetic on local 'reloadState' (a nil value)
stack traceback:
    [string "LuaRules/Gadgets/unit_attributes.lua"]:82: in function 'updateReloadSpeed'
    [string "LuaRules/Gadgets/unit_attributes.lua"]:168: in function 'GameFrame'
    [string "LuaGadgets/gadgets.lua"]:946: in function <[string "LuaGadgets/gadgets.lua"]:944>
    (tail call): ?

I am pretty sure we see this on develop because LUA_WEAPON_BASE_INDEX is now default 1 and iw uses zero based, from b57 (i dont have b58 source because of pr-downloader limitation) unit_attrbutes.lua:
    for i = 0, state.weaponCount do
        local w = state.weapon[i]
        local reloadState = spGetUnitWeaponState(unitID, i , 'reloadState')
        local reloadTime = spGetUnitWeaponState(unitID, i , 'reloadTime')

When i change LUA_WEAPON_BASE_INDEX to 0 the errors no longer appear.
Also, is see no lua errors when doing the same test with 94.1.

~0011118

FLOZi (reporter)

Almost certainly the case for that last post, will just fix it when 95 is released.

~0011119

abma (administrator)

doh! yeah, seems to be the cause.

"i dont have b58 source because of pr-downloader limitation"
-> http://github.com/spring/RapidTools

MakeZip path/to/<hash>.sdp file.zip

~0011120

abma (administrator)

SIGFPEs + corrupted stacktrace + many heat are confusing :-|

thanks guys!
+Notes

-Issue History
Date Modified Username Field Change
2013-07-30 17:49 abma New Issue
2013-07-31 08:26 cleanrock Note Added: 0011111
2013-07-31 13:11 abma Note Added: 0011113
2013-07-31 13:12 abma File Added: 20130731_130941_Xelric_Draw_beta2_94.1.1-752-gd443b86 develop.sdf
2013-07-31 13:21 abma Note Added: 0011114
2013-07-31 13:26 abma Note Edited: 0011114 View Revisions
2013-07-31 13:27 abma Note Edited: 0011114 View Revisions
2013-07-31 13:33 abma Note Added: 0011115
2013-07-31 13:34 abma Target Version => 95.0
2013-07-31 13:34 abma Note Edited: 0011115 View Revisions
2013-07-31 13:40 abma Note Added: 0011116
2013-07-31 14:54 cleanrock Note Added: 0011117
2013-07-31 14:55 cleanrock Note Edited: 0011117 View Revisions
2013-07-31 14:55 cleanrock Note Edited: 0011117 View Revisions
2013-07-31 15:06 cleanrock Note Edited: 0011117 View Revisions
2013-07-31 15:12 FLOZi Note Added: 0011118
2013-07-31 15:23 abma Note Added: 0011119
2013-07-31 15:24 abma Note Added: 0011120
2013-07-31 15:24 abma Status new => resolved
2013-07-31 15:24 abma Resolution open => no change required
2013-07-31 15:24 abma Assigned To => abma
+Issue History