My root task (root thread created by kernel) checks for fault from the
other threads, which are created in root thread with badged fault_ep

    seL4_Word badge;
    seL4_MessageInfo_t messageInfo = seL4_NBRecv(init_objects.fault_cap,
&badge);
    if (seL4_MessageInfo_get_label(messageInfo) != seL4_Fault_NullFault )
    {
        process_fault(messageInfo, badge);
    }

Normally I don't have any faults, but every time I have
seL4_MessageInfo_get_label(messageInfo) == 4, which is not in
seL4_Fault_tag enumeration type

enum seL4_Fault_tag {
    seL4_Fault_NullFault = 0,
    seL4_Fault_CapFault = 1,
    seL4_Fault_UnknownSyscall = 2,
    seL4_Fault_UserException = 3,
    seL4_Fault_VMFault = 5,
    seL4_Fault_VGICMaintenance = 6,
    seL4_Fault_VCPUFault = 7,
    seL4_Fault_VPPIEvent = 8
};

Could somebody explain?

Thanks,
_______________________________________________
Devel mailing list -- devel@sel4.systems
To unsubscribe send an email to devel-leave@sel4.systems

Reply via email to