ABI revisions

Revision Purpose libevl release
33 Allow in-band threads to use event mask monitors (wait-any, unicast only). r42
32 Extend the ungated event monitor interface (conjunctive/disjunctive wait on event mask, broadcasting). r42
31 EVL_HMDIAG_LKDEPEND is now sent to the thread which switches in-band while owning mutexes (no more to the waiter(s) sleeping on such mutex(es)). r41
30 Introduce the T_WOSO flag for enabling notification on schedule overrun. r40
29 Complete overhaul of the locking model to address basic ABBA issues in the mutex support code. This ABI release is marking a functional upgrade, not an interface change. r39
28 Report differentiated causes for interrupted wait on gated monitors from EVL_MONIOC_WAIT. r37
27 Handle prctl()-based syscall form. This enables Valgrind for EVL applications, while keeping backward compatibility for the legacy call form. r28
26 Add socket interface. r21
25 Add latmus request for measuring in-band response time to synthetic interrupt latency. r21
24 Add proxy read side. r19
23 Add the Observable element, and thread observability. r17
22 Add EVL_THRIOC_UNBLOCK, EVL_THRIOC_DEMOTE and EVL_THRIOC_YIELD, update EVL_THRIOC_*_MODE operations. r16
21 Introduce element visibility attribute r15
20 Add support for compat mode (32-bit exec over 64-bit kernel) r12
19 Make y2038 safe r11
18 Plan for supporting a range of ABI revisions -
17 Replace SIGEVL_ACTION_HOME with RETUSER event -
16 Add synchronous breakpoint support -
15 Notify stax-related oob exclusion via SIGDEBUG_STAGE_LOCKED -
14 Add stax test helpers to 'hectic' driver -
13 Add stage exclusion lock mechanism -
12 Add support for recursive gate monitor lock -
11 Read count of timer expiries as a 64bit value -
10 Track count of remote thread wakeups -
9 Complete information returned by EVL_THRIOC_GET_STATE -
8 Add query for CPU state -
7 Drop time remainder return from EVL_CLKIOC_SLEEP -
6 Enable fixed-size writes to proxy -
5 Ensure latmus sends the ultimate bulk of results -
4 Split per-thread debug mode flags -
3 Add count of referrers to poll object shared state -
2 Drop obsolete T_MOVED from thread status bits -
1 Add protocol specifier to monitor element -
0 Initial revision -

Last modified: Sat, 11 Nov 2023 12:19:04 +0100