Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1374

C client multi-threaded test suite fails to compile on ARM architectures.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 3.3.4
    • 3.4.3, 3.5.0
    • c client
    • None
    • Ubuntu 12.04 (precise) armel or armhf

    • Reviewed

    Description

      The multi-threaded test suite fails to build on ARM architectures:

      g++ -DHAVE_CONFIG_H -I. -I./include -I./tests -I./generated -D_FORTIFY_SOURCE=2 -DUSE_STATIC_LIB -DTHREADED -DZKSERVER_CMD="\"./tests/zkServer.sh\"" -Wall -g -MT zktest_mt-ThreadingUtil.o -MD -MP -MF .deps/zktest_mt-ThreadingUtil.Tpo -c -o zktest_mt-ThreadingUtil.o `test -f 'tests/ThreadingUtil.cc' || echo './'`tests/ThreadingUtil.cc
      /tmp/ccqJWQRC.s: Assembler messages:
      /tmp/ccqJWQRC.s:373: Error: bad instruction `lock xaddl r4,r3,#0'
      /tmp/ccqJWQRC.s:425: Error: bad instruction `lock xchgl r4,r3,#0'

      gcc does provide alternative primitives (sync*) which provide better cross platform compatibility; but that does make the assumption that a) gcc is being used or b) the primitives are provided by alternative compilers.

      Tracked in Ubuntu here: https://bugs.launchpad.net/ubuntu/+source/zookeeper/+bug/920871

      Attachments

        1. ZOOKEEPER-1374.patch
          0.9 kB
          James Page
        2. ZOOKEEPER-1374.patch
          1 kB
          Patrick D. Hunt

        Issue Links

          Activity

            People

              javacruft James Page
              javacruft James Page
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: