Hi, I am facing a issue: When should driver elements (enumerators-classes, enumerators, drivers) be probed at startup: My initial idea was to perform probing at init global time, so that a starting app would have a chance to see the present interfaces at startup: This turns out to be a problem as many things are not yet usable at global init time: thread, some locks... And I do not like the idea to have the probing function of each driver being in the need to distinguish between global init time probing and on the run probing...( a driver would very likely need synchronisation mechanisms and the latter would only be usable after the initial probing... not nice) The other alternative is to do all this at local init time: but that would require a guarantee that the ODP instantiation process init_local() function is called before any other thread init_local(). I could not find such requirement in the API description.Otherwise application may have finished starting up before the drivers are loaded...
Is this an indication that the current 2 step booting process is too weak? I actually faced a similar problem with _ishm where there is now a "hack" to run what should have been part of the instantiation process local init at the global init time instead: Because other blocks are assuming that _ishm is fully functional at global_init_time... Other facing similar issues and having ideas? Christophe