• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Register
  • Login
ModalAI Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
    • Register
    • Login

    Fatal: ThreadLocker acquire: QSystemSemaphore::handle: unknown error 38

    Ask your questions right here!
    2
    8
    166
    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.
    • V
      voxl2_user
      last edited by 19 Feb 2025, 18:23

      Hello. We are attempting to run our application on VOXL2. This application is linked against some pre-compiled libraries that we received from a third-party as their SDK. We have successfully run this application on x86_64 and on another arm64 platform, but on VOXL2 we receive the error message in the title "Fatal: ThreadLocker acquire: QSystemSemaphore::handle: unknown error 38"

      In troubleshooting, I see that on VOXL2 the file /proc/sys/kernel/sem is not present. Could this be indicative that the kernel must be reconfigured for certain types of semaphore usage? I am able to download the MODAL.AI kernel build docker and build the default v1.8.02 kernel. But any time I try to make a change to the kernel config using menuconfig in one of the build_mount/lu.um.121/apps_proc/src/kernel/* directories, the rebuild fails (even if I clean first). So perhaps this is not the right way to reconfigure the build? I went down this road because it seemed that adding Qualcomm IPCC support (menuconfig, device drivers, SOC drivers, qualcomm IPCC) could potentially resolve the issue.

      Any and all advice is welcome, including the proper way to reconfigure the kernel (via menuconfig or otherwise) or in troubleshooting this semaphore issue itself.

      A 1 Reply Last reply 19 Feb 2025, 23:35 Reply Quote 0
      • A
        Alex Kushleyev ModalAI Team @voxl2_user
        last edited by 19 Feb 2025, 23:35

        @voxl2_user after doing quick search, it seems CONFIG_SYSVIPC=y needs to be enabled in kona-perf_defconfig .

        workspace/lu.um.1.2.1/apps_proc/poky/meta-voxl2-bsp/recipes-kernel/linux-msm/files/configs/m0054/kona-perf_defconfig
        

        Make sure you are building a perf build..

        We have not tried enabling it, but it could be all that's necessary. Give it a try!

        I can try it as well and see if it builds and see if /proc/sys/kernel/sem shows up..

        Alex

        A 1 Reply Last reply 20 Feb 2025, 00:26 Reply Quote 0
        • A
          Alex Kushleyev ModalAI Team @Alex Kushleyev
          last edited by 20 Feb 2025, 00:26

          I just tried it and it seems to be working

          voxl2:/$ ls /proc/sys/kernel/sem*
          /proc/sys/kernel/sem
          
          voxl2:/$ ipcs -l                             
          
          ------ Messages Limits --------
          max queues system wide = 32000
          max size of message (bytes) = 8192
          default max size of queue (bytes) = 16384
          
          ------ Shared Memory Limits --------
          max number of segments = 4096
          max seg size (kbytes) = 18014398509465599
          max total shared memory (kbytes) = 18014398509481980
          min seg size (bytes) = 1
          
          ------ Semaphore Limits --------
          max number of arrays = 32000
          max semaphores per array = 32000
          max semaphores system wide = 1024000000
          max ops per semop call = 500
          semaphore max value = 32767
          
          V 1 Reply Last reply 20 Feb 2025, 03:49 Reply Quote 0
          • V
            voxl2_user @Alex Kushleyev
            last edited by 20 Feb 2025, 03:49

            @Alex-Kushleyev Thank you for the quick reply. Your advice successfully enabled SYSVIPC in my kernel. Sadly, SYSVIPC also broke eth0 on my system and I'm still attempting to troubleshoot that...

            A 1 Reply Last reply 20 Feb 2025, 05:53 Reply Quote 0
            • A
              Alex Kushleyev ModalAI Team @voxl2_user
              last edited by 20 Feb 2025, 05:53

              @voxl2_user , yes, I can also confirm that my usb to ethernet adapter (eth0) is no longer working on my voxl2 after enabling this..

              It is possible that enabling SYSVIPC disables some other IPC mechanism used by the usb ethernet driver.. or something else is going on.. not sure..

              Alex

              V 2 Replies Last reply 20 Feb 2025, 16:05 Reply Quote 0
              • V
                voxl2_user @Alex Kushleyev
                last edited by 20 Feb 2025, 16:05

                @Alex-Kushleyev in my case, 'lsmod' is empty after booting the kernel with SYSVIPC enabled...its as though none of the kernel modules are loading anymore.

                1 Reply Last reply Reply Quote 0
                • V
                  voxl2_user @Alex Kushleyev
                  last edited by 20 Feb 2025, 16:09

                  @Alex-Kushleyev Is there a way to run menuconfig and build the kernel successfully? I wonder if menuconfig might "deconflict" certain feature dependencies, if there are any? When I tried running menuconfig from apps_proc/src/kernel/*, the resulting build failed with errors about the source tree not being clean.

                  A 1 Reply Last reply 20 Feb 2025, 17:12 Reply Quote 0
                  • A
                    Alex Kushleyev ModalAI Team @voxl2_user
                    last edited by 20 Feb 2025, 17:12

                    @voxl2_user , i will ask around..

                    Also, there may be some sysv compatibility mode, instead of fully utilizing sysv for all IPC. I think i saw something like that when grepping the kernel build source for sysv supprt. I will check a bit later.

                    Alex

                    1 Reply Last reply Reply Quote 0
                    1 out of 8
                    • First post
                      1/8
                      Last post
                    Powered by NodeBB | Contributors