ZooKeeper
  1. ZooKeeper
  2. ZOOKEEPER-1374

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

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 3.3.4
    • Fix Version/s: 3.4.3, 3.5.0
    • Component/s: c client
    • Labels:
      None
    • Environment:

      Ubuntu 12.04 (precise) armel or armhf

    • Hadoop Flags:
      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

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

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            James Page
            Reporter:
            James Page
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development