Project

General

Profile

Actions

Bug #836

closed

atomic-ops error on Debian arm

Added by Greg Farnum about 13 years ago. Updated over 12 years ago.

Status:
Rejected
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
Severity:
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

From Lazslo:

Hi List,

Being the Debian packager of Ceph, I ask for help about building 0.24.3
on armel. It fails with:
g++ -DHAVE_CONFIG_H -I. -Wall -D__CEPH__ -D_FILE_OFFSET_BITS=64
-D_REENTRANT -D_THREAD_SAFE -rdynamic -g -O2 -MT AuthAuthorizeHandler.o
-MD -MP -MF .deps/AuthAuthorizeHandler.Tpo -c -o AuthAuthorizeHandler.o
`test -f 'auth/AuthAuthorizeHandler.cc' || echo
'./'`auth/AuthAuthorizeHandler.cc
In file included from ./include/buffer.h:55,
from ./include/encoding.h:20,
from ./include/object.h:29,
from ./include/types.h:64,
from auth/Crypto.h:17,
from auth/Auth.h:18,
from auth/AuthAuthorizeHandler.cc:1:
./include/atomic.h: In member function 'void ceph::atomic_t::inc()':
./include/atomic.h:33: error: 'AO_fetch_and_add1' was not declared in this scope
./include/atomic.h: In member function 'size_t ceph::atomic_t::dec()':
./include/atomic.h:36: error: 'AO_fetch_and_sub1_write' was not declared in this scope
./include/atomic.h: In member function 'void ceph::atomic_t::add(size_t)':
./include/atomic.h:39: error: 'AO_fetch_and_add' was not declared in this scope
./include/atomic.h: In member function 'void ceph::atomic_t::sub(int)':
./include/atomic.h:43: error: 'AO_fetch_and_add_write' was not declared in this scope
make[3]: *** [AuthAuthorizeHandler.o] Error 1

This is very similar to a bug last September, due to an issue with how atomic-ops cascades its function definitions:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/635388
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597193

I've looked at this briefly already and don't see anything obvious, but need to look at it more deeply!

Actions #1

Updated by Greg Farnum about 13 years ago

  • Status changed from New to In Progress

Only thing that makes any sense to me so far is the possibility that the preprocessor macros are incorrect for the system it's being built on. The atomic-ops header seems to be correctly checking for and handling ARM processors being built via gcc, but perhaps "__arm__" isn't defined under all environments?

Actions #2

Updated by Greg Farnum about 13 years ago

arm is not the problem, according to the debian arm port people. tv helped me get a qemu arm setup going, which I'm currently getting set up to try and build ceph on and see what happens.

Actions #3

Updated by Sage Weil about 13 years ago

  • Target version changed from v0.25 to v0.25.1
Actions #4

Updated by Sage Weil about 13 years ago

  • Priority changed from Normal to Low
Actions #5

Updated by Greg Farnum about 13 years ago

Managed to reproduce this issue locally. I'll try building without atomic-ops too, to see if that works. And will interface with the atomic-ops people again.

Actions #6

Updated by Greg Farnum about 13 years ago

It does build successfully without the atomic-ops package installed at all. Attempting to get it building with an older version of the atomic-ops package to see if that changes anything, then emailing the maintainers.

Actions #7

Updated by Sage Weil about 13 years ago

  • Target version changed from v0.25.1 to v0.25.2
Actions #8

Updated by Sage Weil about 13 years ago

  • Translation missing: en.field_position set to 1
  • Translation missing: en.field_position changed from 1 to 549
Actions #9

Updated by Sage Weil about 13 years ago

  • Translation missing: en.field_story_points set to 3
  • Translation missing: en.field_position deleted (551)
  • Translation missing: en.field_position set to 6
Actions #10

Updated by Sage Weil about 13 years ago

  • Target version deleted (v0.25.2)
Actions #11

Updated by Greg Farnum about 13 years ago

  • Assignee deleted (Greg Farnum)

All right, Lazslo just disabled atomic-ops on ARM and given that I don't think we have any users (certainly on ARMv5) I'm going to drop this as not worth the effort to track down. Argh.

Actions #12

Updated by Sage Weil about 13 years ago

  • Translation missing: en.field_position deleted (6)
  • Translation missing: en.field_position set to 185
Actions #13

Updated by Sage Weil over 12 years ago

  • Status changed from In Progress to Rejected
Actions

Also available in: Atom PDF