seL4 / sel4test

Test suite for seL4.
http://sel4.systems
Other
24 stars 60 forks source link

DOMAINS0001 runs into a assert in sel4test-tests/src/main.c@:250 #107

Open axel-h opened 10 months ago

axel-h commented 10 months ago

I've just seen these assertions during test runs on all architectures. Seems this happen reqularly. Is this just a QEMU issue, or could DOMAINS0001 be improved to avoid this message, or it these a real problem?

[...]
Running test DOMAINS0001 (Change domain successfully())
Test DOMAINS0001 passed
Assertion failed: !"unreachable" (/github/workspace/projects/sel4test/apps/sel4test-tests/src/main.c: main: 250)
    </testcase>
    <testcase classname="sel4test" name="DOMAINS0002">
Running test DOMAINS0002 (Try non-existant domain())
<<seL4(CPU 0) [decodeDomainInvocation/1584 T0xfc411400 "32" @80654eb]: Domain Configure: invalid domain (14 >= 4).>>
Test DOMAINS0002 passed
[...]
All is well in the universe
int main(int argc, char **argv)
{
   [...]
   printf("Test %s %s\n", init_data->name, result == SUCCESS ? "passed" : "failed");
    /* send our result back */
    seL4_MessageInfo_t info = seL4_MessageInfo_new(seL4_Fault_NullFault, 0, 0, 1);
    seL4_SetMR(0, result);
    seL4_Send(endpoint, info);

    /* It is expected that we are torn down by the test driver before we are
     * scheduled to run again after signalling them with the above send.
     */
    assert(!"unreachable");
    return 0;
}
lsf37 commented 10 months ago

Interesting, I have not seen that one yet. Do you have a pointer to a run?

axel-h commented 10 months ago

For example ARMVIRT_debug_DOM_clang_64 at https://github.com/seL4/seL4/actions/runs/6785175754/job/18442892398?pr=824

lsf37 commented 10 months ago

Oh right, of course, they would be in successful runs. That explains why I haven't seen them. Yes, that would definitely be good to address.

axel-h commented 10 months ago

Yes, the test pass. I saw this just by chance in one run and then found it in more places also. I've clarified the log except above to say that the test run passes.