RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Emulationstation crash on startup - segfault (PC - Lubuntu)

    Scheduled Pinned Locked Moved Help and Support
    crashlubuntustartupubuntu 20.04segfault
    10 Posts 2 Posters 894 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      carotman
      last edited by carotman

      Hi everyone.

      I've got a problem I just can't seem to solve.

      I'm using a PC with Lubuntu 20.04. The machine is a Compaq R4100 with 2G of ram, a SSD with 15G free on the partition and I have an Athlon64 3200+ CPU. The graphics card is a Radeon Xpress 200M

      I've played many games on this machine before. In fact, this machine has worked flawlessly with retropie for the last 6 months. This is an old machine but it just works.

      Last week, I wanted to play some games but emulationstation just kept crashing on startup. I've done many tests but couldn't find the problem so I decided to reinstall everything. I downloaded Lubuntu 20.04 and installed it, then I downloaded retropie (4.7.4) and compiled it. Other than Retropie, the system is a fresh install with the latest updates.

      Still, I have the same behavior. Emulationstation doesn't log anything. I think it crashes before it can actually log.

      I tried to "strace" emulationstation and see where it crashes but I can't tell why.

      I have included the strace log.

      I wonder if some kind of kernel update in linux or an updated module could have done something. Like I said, it was working fine and all of a sudden, it just crashes.

      [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 38486
      rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      ioctl(2, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
      stat("/home/stouki/.terminfo", 0x561037115fb0) = -1 ENOENT (No such file or directory)
      stat("/etc/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
      stat("/lib/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
      stat("/usr/share/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
      access("/etc/terminfo/x/xterm-256color", R_OK) = -1 ENOENT (No such file or directory)
      access("/lib/terminfo/x/xterm-256color", R_OK) = 0
      openat(AT_FDCWD, "/lib/terminfo/x/xterm-256color", O_RDONLY) = 3
      fstat(3, {st_mode=S_IFREG|0644, st_size=3503, ...}) = 0
      read(3, "\36\2%\0&\0\17\0\235\1\356\5xterm-256color|xterm"..., 32768) = 3503
      read(3, "", 28672)                      = 0
      close(3)                                = 0
      ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
      ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
      ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
      ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
      ioctl(1, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      ioctl(0, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      brk(0x561037143000)                     = 0x561037143000
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=38486, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
      wait4(-1, 0x7ffecd6e56d0, WNOHANG, NULL) = -1 ECHILD (No child processes)
      rt_sigreturn({mask=[]})                 = 0
      read(255, "tput civis\n\"/opt/retropie/supple"..., 1068) = 525
      stat(".", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
      stat("/usr/local/sbin/tput", 0x7ffecd6e5b10) = -1 ENOENT (No such file or directory)
      stat("/usr/local/bin/tput", 0x7ffecd6e5b10) = -1 ENOENT (No such file or directory)
      stat("/usr/sbin/tput", 0x7ffecd6e5b10)  = -1 ENOENT (No such file or directory)
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/tput", X_OK)           = 0
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/tput", R_OK)           = 0
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/tput", X_OK)           = 0
      stat("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=26968, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/tput", R_OK)           = 0
      rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
      lseek(255, -514, SEEK_CUR)              = 554
      clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f1bbc545a10) = 38487
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigaction(SIGINT, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 38487
      rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      ioctl(2, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=38487, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
      wait4(-1, 0x7ffecd6e56d0, WNOHANG, NULL) = -1 ECHILD (No child processes)
      rt_sigreturn({mask=[]})                 = 0
      read(255, "\"/opt/retropie/supplementary/emu"..., 1068) = 514
      rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
      lseek(255, -442, SEEK_CUR)              = 626
      clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f1bbc545a10) = 38488
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigaction(SIGINT, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      wait4(-1, Segmentation fault (core dumped)
      [{WIFEXITED(s) && WEXITSTATUS(s) == 139}], 0, NULL) = 38488
      rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      ioctl(2, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=38488, si_uid=1000, si_status=139, si_utime=0, si_stime=0} ---
      wait4(-1, 0x7ffecd6e56d0, WNOHANG, NULL) = -1 ECHILD (No child processes)
      rt_sigreturn({mask=[]})                 = 0
      read(255, "if [[ $? -eq 139 ]]; then\n    di"..., 1068) = 442
      stat(".", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
      stat("/usr/local/sbin/dialog", 0x7ffecd6e59e0) = -1 ENOENT (No such file or directory)
      stat("/usr/local/bin/dialog", 0x7ffecd6e59e0) = -1 ENOENT (No such file or directory)
      stat("/usr/sbin/dialog", 0x7ffecd6e59e0) = -1 ENOENT (No such file or directory)
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/dialog", X_OK)         = 0
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/dialog", R_OK)         = 0
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/dialog", X_OK)         = 0
      stat("/usr/bin/dialog", {st_mode=S_IFREG|0755, st_size=251768, ...}) = 0
      geteuid()                               = 1000
      getegid()                               = 1001
      getuid()                                = 1000
      getgid()                                = 1001
      access("/usr/bin/dialog", R_OK)         = 0
      rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
      lseek(255, -11, SEEK_CUR)               = 1057
      clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f1bbc545a10) = 38501
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigaction(SIGINT, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
                                                                                   
                                                                                   
             ┌──────────────────────────────────────────────────────────┐          
             │ Emulation Station crashed!                               │          
             │                                                          │          
             │ If this is your first boot of RetroPie - make sure you   │          
             │ are using the correct image for your system.             │          
             │                                                          │          
             │ Check your rom file/folder permissions and if running on │          
             │ a Raspberry Pi, make sure your gpu_split is set high     │          
             │ enough and/or switch back to using carbon theme.         │          
             │                                                          │          
             │ For more help please use the RetroPie forum.             │          
             │                                                          │          
             │                                                          │          
             │                                                          │          
             │                                                          │          
             │                                                          │          
             │                                                          │          
             ├──────────────────────────────────────────────────────────┤          
             │                         <  OK  >                         │          
             └──────────────────────────────────────────────────────────┘          
                                                                                   
                                                                                   
                                                                                   
      [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 38501                    
      rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      ioctl(2, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=38501, si_uid=1000, si_status=0, si_utime=0, si_stime=1} ---
      wait4(-1, 0x7ffecd6e55d0, WNOHANG, NULL) = -1 ECHILD (No child processes)
      rt_sigreturn({mask=[]})                 = 0
      read(255, "tput cnorm\n", 1068)         = 11
      rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
      clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f1bbc545a10) = 38502
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigaction(SIGINT, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 38502
      rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, {sa_handler=0x5610353c0480, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f1bbc58e210}, 8) = 0
      ioctl(2, TIOCGWINSZ, {ws_row=26, ws_col=77, ws_xpixel=0, ws_ypixel=0}) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=38502, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
      wait4(-1, 0x7ffecd6e56d0, WNOHANG, NULL) = -1 ECHILD (No child processes)
      rt_sigreturn({mask=[]})                 = 0
      read(255, "", 1068)                     = 0
      rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
      rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
      exit_group(0)                           = ?
      +++ exited with 0 +++
      
      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        @carotman said in Emulationstation crash on startup - segfault (PC - Lubuntu):

        I'm using a PC with Lubuntu 20.04. The machine is a Compaq R4100 with 2G of ram, a SSD with 15G free on the partition and I have an Athlon64 3200+ CPU. The graphics card is a Radeon Xpress 200M

        Did you install any proprietary drivers for your GPU ?
        Can you try and install the emulationstation-dev package (from the experimental section) and see if EmulationStation starts ?

        1 Reply Last reply Reply Quote 0
        • C
          carotman
          last edited by

          I might try the dev packages, this is a good idea! I haven't installed any proprietary drivers.

          However, I kind of got an idea of what could be the problem

          I reinstalled (again) Lubuntu 20.04 from the installation media. This time, I didn't install the updades and didn't do any distribution upgrade prior to installing Retropie. The only thing I did was to install the B43 firmware for my WiFi adapter.

          Once I compiled the packages, I was able to run emulationstation without problems at all. Everything works like it did before. The only thing it wasn't able to install was the libgbm-dev package. I don't know where it's needed but I'll look into it.

          So, I guess that the distribution updates break something. A module? a kernel patch?

          I will update the modules one at a time and see where it breaks.

          mituM 1 Reply Last reply Reply Quote 0
          • mituM
            mitu Global Moderator @carotman
            last edited by

            @carotman said in Emulationstation crash on startup - segfault (PC - Lubuntu):

            So, I guess that the distribution updates break something. A module? a kernel patch?

            Without a log from EmulationStation, it's difficult to pin-point the issue. Try starting it with the --debug parameter from the command line and see if something is reported.

            emulationstation --debug
            
            1 Reply Last reply Reply Quote 0
            • C
              carotman
              last edited by

              Nothing is reported with the --debug option. The log is still empty.

              I managed to install packages one by one and I started emulationstation each time between the installation to see where it breaks.

              emulationstation crashes after I install this package and it's dependencies (one new and 4 upgrades)

              libegl-mesa0
              (Install)
              libllvm11
              (Upgrade)
              libglapi-mesa
              libgbm1
              libgl1-mesa-dri
              libglx-mesa0

              So, what's in those packages? Is there something to configure after I upgrade these?

              This is where I am now.

              mituM 1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator @carotman
                last edited by

                @carotman I don't think there would be something to configure after the upgrades. Can you run glxinfo and post the output on pastebin.com ?

                1 Reply Last reply Reply Quote 0
                • C
                  carotman
                  last edited by

                  Well well, look at that.

                  glxinfo core dumps

                  You can view the output on pastebin here:

                  https://pastebin.com/uBhyDZVc

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @carotman
                    last edited by

                    @carotman said in Emulationstation crash on startup - segfault (PC - Lubuntu):

                    glxinfo core dumps

                    That's not a good sign. Looks like the updates have some unintended side-effects.

                    1 Reply Last reply Reply Quote 0
                    • C
                      carotman
                      last edited by

                      Yup.

                      I reinstalled again and did not upgrade anything. Retropie works fine but now every game I play has laggy/choppy sound. Everything was soooo smooth before :(

                      I might try to downgrade to Lubuntu 18.04 and see if that helps.

                      1 Reply Last reply Reply Quote 0
                      • C
                        carotman
                        last edited by

                        Well, It turns out that my sound problem was probably due to the display refresh rate not being on sync.

                        After many reinstalls (both OS and Retropie) I was able to make sense of all this and I now can enjoy Retropie again on my old laptop with Lubuntu 20.04.

                        Thank you mitu for your time, this is really appreciated.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                        Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.