Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

libunity.so crash

Discussion in 'Multiplayer' started by rend-master, Mar 14, 2017.

  1. rend-master

    rend-master

    Joined:
    Sep 22, 2015
    Posts:
    11
    Hi, guys. I'm making a multiplayer game using the NetworkTransport api.

    The game is currently for android devices and sends unreliable packets 20 times every second.
    I have use a model of LAN client/server architeture. When I'm playing with only another player (totalizing two players) the game runs fine. But when a third peer connects, most of the times the server player crashes with the following error:

    F/libc (27722): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x65737341 in tid 28423 (UNET)

    I/DEBUG ( 249): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***

    I/DEBUG ( 249): Build fingerprint: 'asus/WW_Phone/ASUS_X014D_1:5.1.1/LMY47V/12.2.5.23-20161201:user/release-keys'

    I/DEBUG ( 249): Revision: '0'

    I/DEBUG ( 249): ABI: 'arm'

    I/DEBUG ( 249): pid: 27722, tid: 28423, name: UNET >>> com.TDBrothers.JogoBicnho <<<

    I/DEBUG ( 249): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x65737341

    I/DEBUG ( 249): r0 65737341 r1 00000868 r2 00000868 r3 00000868

    I/DEBUG ( 249): r4 b95290d8 r5 b95292c8 r6 9dd4cc08 r7 b985a770

    I/DEBUG ( 249): r8 b985f040 r9 b985f040 sl b9861210 fp 00000350

    I/DEBUG ( 249): ip 00000000 sp 9dd4cb98 lr a50d7c34 pc a4aed578 cpsr 20010010

    I/DEBUG ( 249):

    I/DEBUG ( 249): backtrace:

    I/DEBUG ( 249): #00 pc 005ad578 /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN10MemoryPool8AllocateEj+208)

    I/DEBUG ( 249): #01 pc 00b97c30 /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN4UNET4Host8SendPingEPNS_13NetConnectionE+104)

    I/DEBUG ( 249): #02 pc 00b9a444 /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN4UNET4Host12HandleTimersEv+244)

    I/DEBUG ( 249): #03 pc 00ba4038 /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN4UNET7Reactor14DispatchSelectEv+632)

    I/DEBUG ( 249): #04 pc 00b9e2fc /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN4UNET7Reactor3RunEv+920)

    I/DEBUG ( 249): #05 pc 00ba3d7c /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN4UNET7Reactor10ThreadFuncEPv+44)

    I/DEBUG ( 249): #06 pc 00585af0 /data/app/com.TDBrothers.JogoBicnho-2/lib/arm/libunity.so (_ZN6Thread16RunThreadWrapperEPv+84)

    I/DEBUG ( 249): #07 pc 0001362b /system/lib/libc.so (_ZL15__pthread_startPv+30)

    I/DEBUG ( 249): #08 pc 00011557 /system/lib/libc.so (__start_thread+6)




    Can anyone help me? Is this a unity bug?
     
  2. larus

    larus

    Unity Technologies

    Joined:
    Oct 12, 2007
    Posts:
    277
    Seems like the last item in the backtrace, ZN10MemoryPool8AllocateEj, could point to the device running out of memory. Do a lot of allocations happen when adding a new player to the game? Does it happen on more than one device (or on a mac/win/lin standalone player)? If it's a quite consistent crash you could just file a bug report with the project attached and we can try to reproduce it.
     
  3. rend-master

    rend-master

    Joined:
    Sep 22, 2015
    Posts:
    11
    Hi, larus.
    When debugging, I could see nothing special about the memory consumption. When a player is spawned, I instantiate 20 bullets for its character. But the crash when spawning a new player only ocurred sometimes.

    But the problem seemed to have something to do with the packetSize of the ConnectionConfig I was using. I set it to 5120 bytes. By searching about network configurations that could cause this behavior, I discovered, through the Unity 5.6 documentation, that the maximum recommended packetSize is 1470. Strangely, after fixing this, the crash didn't occur anymore. Even after an hour of playing.

    I could only test the game with two mobile devices. The crash was only happenning on my Zenfone GO. The problem seems solved.
     
    BostonGamesLLC and larus like this.