qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nadilson Ferreira (JIRA)" <j...@apache.org>
Subject [jira] [Created] (QPID-4279) Mac OS X thread local storage
Date Sun, 02 Sep 2012 01:54:07 GMT
Nadilson Ferreira created QPID-4279:

             Summary: Mac OS X thread local storage
                 Key: QPID-4279
                 URL: https://issues.apache.org/jira/browse/QPID-4279
             Project: Qpid
          Issue Type: Bug
          Components: C++ Broker
    Affects Versions: 0.18
         Environment: Mac OS X
            Reporter: Nadilson Ferreira

Historically, Mac OS X uses the Mach-O executable format, which does not support thread local
storage data section found on most operating systems using ELF executable format (here is
how ELF handles thread local storage as documented by Ulrich Drepper). If you try to compile
a program using __thread modifier, you'd get the following error.

error: thread-local storage not supported for this target

The following URL http://lifecs.likai.org/2010/05/mac-os-x-thread-local-storage.html provides
a good solution for the problem.

Notice also that the file include/qpid/sys/Thread.h defines a macro to handle the thread local
mechanism. Nevertheless some files are not using the macro but using the __thread instead.

Affected files:
+ src/qpid/sys/posix/AsynchIO.cpp
+ src/qpid/sys/DeletionManager.h
+ src/qpid/sys/epoll/EpollPoller.cpp
+ src/qpid/sys/posix/PosixPoller.cpp
+ src/qpid/sys/rdma/rdma_exception.h
+ src/qpid/sys/ssl/SslIo.cpp
+ src/qpid/management/ManagementObject.cpp
+ src/qpid/management/ManagementAgent.cpp
+ src/qpid/sys/ClusterSafe.cpp

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org

View raw message