[etherlab-dev] Master re-request race with slave mailboxes

Frank Heckenbach f.heckenbach at fh-soft.de
Wed Aug 13 12:19:50 CEST 2014


Gavin Lambert wrote:

> Is it expected that after ecrt_request_master(), all online slaves are in
> PREOP (or possibly stuck in INIT with error_flag=1)?  Or is an application
> expected to explicitly verify the state of all slaves before trying to do
> anything?
> 
> In the continuing saga of fun with mailbox SDOs, I've found that even with
> Frank's or Knud's patches to reduce mailbox contention, there are still some
> issues that stem from the slave state not being as expected.
> 
> In my application, on startup it requests the master and then uses
> ecrt_master_sdo_upload to fetch certain information from slaves (eg.
> profile, version, etc), both for diagnostics and to help ensure the config
> is sane.  While this normally works fine, there can be problems if it occurs
> too soon after the master service is started or after it was last released.

Just a quick thought, did you try waiting until the dictionaries are
completely fetched (cf. my patch #28)?

Frank



More information about the Etherlab-dev mailing list