Thread synchronization with in the same address space

teclis High Elf teclis.high.elf at gmail.com
Fri Oct 10 18:00:31 CEST 2014


I have two threads running in the same server. On thread handles incoming
ipc messages from the clients in different address spaces and the other
thread does the work. The thread handling the incoming ipc needs to pass an
integer value to the worker thread. Could I synchronize them using

int l4util_cmpxchg32
<https://os.inf.tu-dresden.de/L4Re/doc/group__l4util__atomic.html#gacb4a5e47fea67cc4c61b488fc374df62>
(volatile l4_uint32_t
<https://os.inf.tu-dresden.de/L4Re/doc/group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a>
*dest, l4_uint32_t
<https://os.inf.tu-dresden.de/L4Re/doc/group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a>
cmp_val, l4_uint32_t
<https://os.inf.tu-dresden.de/L4Re/doc/group__l4__basic__types.html#gac1d09f3e382e711b776931f10e6e1e5a>
new_val)

the worker thread could then check the value of dest to get the integer.
Would the worker thread need to use an atomic read function when it reads
the value of dest and if so which function would the worker thread use for
the atomic read?

thanks,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20141010/653a98fd/attachment.html>


More information about the l4-hackers mailing list