Skip to content

x86_64 SMP: gale thread-lifecycle subtest failures + mutex_api in-test hang (exposed after boot-hang fix #46) #47

Description

@avrabe

Follow-up to #46, which fixed the early-boot hang in the gale x86_64 SMP path. With the hang gone, the three SMP suites now boot and run, exposing two distinct gale-SMP-correctness issues (previously masked):

1. smp_threads (tests/kernel/threads/thread_apis) — 9 subtest failures
Stock (no gale): PROJECT EXECUTION SUCCESSFUL, 86/0. Gale overlay: 77 PASS / 9 FAIL, threads_lifecycle suite 86.67%. Failing subtests:

  • test_resume_unsuspend_thread
  • test_thread_name_user_get_set
  • test_threads_abort_others
  • test_threads_spawn_forever

Points at gale's thread_lifecycle / sched primitives diverging from stock under SMP.

2. smp_mutex (tests/kernel/mutex/mutex_api) — hangs inside the test
Boots and prints Running TESTSUITE mutex_api, then hangs (no further output, >40s). A gale mutex operation appears to deadlock/hang under SMP (distinct from the spinlock-validate boot hang).

Repro (local, qemu_x86_64 SMP, Zephyr SDK x86_64-zephyr-elf):

west build -b qemu_x86_64 -s zephyr/tests/kernel/threads/thread_apis \
  -- -DOVERLAY_CONFIG="<gale>/zephyr/gale_overlay.conf;<gale>/zephyr/gale_smp_overlay.conf" \
     -DZEPHYR_EXTRA_MODULES=<gale>
west build -t run

(smp_semaphore fully passes after #46 — 61/0 — so the harness/overlay is sound; these are primitive-specific.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions