Skip to content

Kins switch race in test kins-switch? #4560

Description

@BsAtHome

@grandixximo This was seen on the package-arch trixie/arm CI test.

This didn't fail on master or other times. Restarting the failed CI "fixes" the error, so this indicates a race in the code or the test.

Running test: ./tests/kins-switch
*** ./tests/kins-switch: FAIL: test run exited with 1
************** result:
        Machine configuration file is 'test.ini'
        Starting LinuxCNC...
        linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
        Found file(REL): ./sim.hal
        emc/task/emctask.cc 71: interp_error: G12.1 requires a non-negative P word
        G12.1 requires a non-negative P word
        emc/task/emctask.cc 71: interp_error: G12.1 P word does not name a kinematics type this module provides
        G12.1 P word does not name a kinematics type this module provides
        at the switch     77.6495 77.6495 -24.0301 -22.5000 45.0000 0.0000
        W ran to 10.0000, the other joints held to 0.00e+00
        *** ERROR motion.kins-type went [0, 1], not ...[0, 1, 0, 1]
        #<_kins_type> reported KINSTYPE=0.000000 KINSTYPE=1.000000 KINSTYPE=0.000000 KINSTYPE=1.000000
        refused as expected: G12.1 requires a non-negative P word
        refused as expected: G12.1 P word does not name a kinematics type this module provides
        the abort routine ran past its G13.1
        Exiting with 1 errors
        Shutting down and cleaning up LinuxCNC...
        task: 385 cycles, min=0.000002, max=0.044951, avg=0.007036, 0 latency excursions (> 10x expected cycle time of 0.010000s)
        
        !!! switchkins-type 0 is 5axiskins
        switchkins-type 0 declared: primary
        switchkins-type 1 declared: identity
        Kinematics Module emc/kinematics/5axiskins.c
          module name = 5axiskins
          coordinates = xyzbcw  Requires: [KINS]JOINTS>=6
          sparm       = NOTSPECIFIED
          default pivot-length = 250.000
        
        identityKinematicsSetup: coordinates:xyzbcw
           Joint 0 ==> Axis X
           Joint 1 ==> Axis Y
           Joint 2 ==> Axis Z
           Joint 3 ==> Axis B
           Joint 4 ==> Axis C
           Joint 5 ==> Axis W
        
        
        userkKinematicsSetup:
           emc/kinematics/userkfuncs.c <xyzbcw> max_joints=16 allow_duplicates=1
        
        LinuxCNC terminated with an error.  You can find more information in the log:
            /home/testrunner/linuxcnc_debug.txt
        and
            /home/testrunner/linuxcnc_print.txt
        as well as in the output of the shell command 'dmesg' and in the terminal
************** stderr:
        + rm -f sim.var sim.var.bak
        + linuxcnc -r test.ini
        /__w/linuxcnc/linuxcnc/tests/kins-switch/test.ini: info: [KINS]KINEMATICS=5axiskins: Unchecked
        Note: realtime scheduling unavailable (sched_setscheduler SCHED_FIFO: Operation not permitted).
          Process capabilities: cap_sys_nice=no cap_ipc_lock=no.
          Falling back to POSIX non-realtime.
          Fix: 'sudo make setcap' (preferred) or 'sudo make setuid' on rtapi_app.
          Override (testing only): set LINUXCNC_FORCE_REALTIME=1.
        Note: Using POSIX non-realtime
        No isolated CPU's found, expect some latency or set RTAPI_CPU_NUMBER to select CPU
        link (updating variable file): No such file or directory
**************

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions