most_conf_sync Struct Reference


Data Fields

bool reconfigure_flag
int counter
rtdm_event_t wait_read_write
wait_queue_head_t wait_reconfigure

Detailed Description

This structure is used for synchronisation between most_sync_nrt_setup_rx() /most_sync_rt_read() and most_sync_nrt_setup_tx()/most_sync_rt_write(). If a task is inside read()/write(), no reconfiguring can take place but other tasks can also be in read() or write(). However, if one task is reconfiguring, no other tasks can read() or write().

This is a classical n-readers/1-writers approach, but since reconfiguring takes place from NRT and configuration takes place from RT, things are more difficult.

Note: If reconfiguring takes place, the real-time task must wait until reconfiguration is finished. Until this is done, the behaviour is non-deterministic.

Definition at line 60 of file most-sync-rt.h.


Field Documentation

bool most_conf_sync::reconfigure_flag

flag that is set to 1 if most_sync_nrt_setup_rx() or most_sync_nrt_setup_tx() is executed

Definition at line 61 of file most-sync-rt.h.

Referenced by most_sync_nrt_reconfigure_begin(), most_sync_nrt_reconfigure_end(), and most_sync_rt_read_write_begin().

int most_conf_sync::counter

counts the tasks that are inside most_sync_rt_read() or most_sync_rt_write()

Definition at line 65 of file most-sync-rt.h.

Referenced by most_sync_nrt_reconfigure_begin(), most_sync_rt_read_write_begin(), and most_sync_rt_read_write_end().

rtdm_event_t most_conf_sync::wait_read_write

wait event that is used inside most_sync_rt_read() or most_sync_rt_write() to wait until reconfiguration is finished

Definition at line 68 of file most-sync-rt.h.

Referenced by most_conf_sync_destroy(), most_conf_sync_init(), most_sync_nrt_reconfigure_end(), and most_sync_rt_read_write_begin().

wait_queue_head_t most_conf_sync::wait_reconfigure

wait event that is used inside most_sync_nrt_setup_tx() or most_sync_nrt_setup_rx() to wait until read() and write() are finished

Definition at line 72 of file most-sync-rt.h.

Referenced by most_conf_sync_init(), most_sync_nrt_reconfigure_begin(), most_sync_nrt_reconfigure_end(), and most_sync_rt_read_write_end().


The documentation for this struct was generated from the following file:
Generated on Fri Mar 9 14:48:58 2007 for MOST Linux Drivers (Linux and RTAI) by  doxygen 1.5.0