Comment 2 for bug 608956

Revision history for this message
Andrew Johnson (anj) wrote :

I confirmed that support for __thread is only available for VxWorks 6.8 and above, and has to be configured into the VxWorks OS image (define INCLUDE_TLS for those that understand that). None of the APS OS images have this turned on but it's trivial to do, I would just need to build and publish a new set of OS images for my users.

The VxWorks taskVarLib is still available and supported, but only for UP targets. We don't support any VxWorks SMP targets yet though, and adding them would require changes somewhat similar to those that Heinz developed for RTEMS, thus any rewrite of the epicsThreadPrivate implementation should happen at the same time as that.

This bug isn't quite the right place to decide when we could start to use __thread though, fixing the bug requires __thread, but using __thread doesn't require that it be fixed.

Dirk was building EPICS 7.0.1 without PVA for VxWorks 6.2, but needed newer versions to build the PVA modules (see https://epics.anl.gov/core-talk/2017/msg00691.php for discussion). The EPICS 7.0 page on the APS website does say that VxWorks 6.8 is required, but my guess is that as long as we don't use __thread in the core IOC modules he might not object. We should ask him ...