Project

General

Profile

Actions

Bug #13088

closed

a73a4cb breaks "--without-libatomic-ops" (firefly)

Added by Ken Dreyer over 8 years ago. Updated over 8 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

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

Description

The following commit causes a build-failure when built "--without-libatomic-ops": https://github.com/ceph/ceph/commit/a73a4cb

"common/RWLock.h:29:11: error: 'atomic_t' does not name a type" 
Actions #1

Updated by Greg Farnum over 8 years ago

That's odd:

#else
/*
 * crappy slow implementation that uses a pthreads spinlock.
 */
#include "include/Spinlock.h" 

namespace ceph {
  typedef atomic_spinlock_t<unsigned> atomic_t;
  typedef atomic_spinlock_t<unsigned long long> atomic64_t;
}

#endif

definitely specifies atomic_t. Unless it's the nested #ifs:

#ifndef NO_ATOMIC_OPS
[ definition goes here...]
#if SIZEOF_AO_T == 8
  typedef atomic_t atomic64_t;
#else
  typedef atomic_spinlock_t<unsigned long long> atomic64_t;
#endif

}

#else
/*
 * crappy slow implementation that uses a pthreads spinlock.
 */

The internet tells me we can nest them, but that's the only thing I can see that might have broken them.

Actions #2

Updated by Sage Weil over 8 years ago

  • Priority changed from Normal to Urgent
Actions #3

Updated by Sage Weil over 8 years ago

  • Subject changed from a73a4cb breaks "--without-libatomic-ops" to a73a4cb breaks "--without-libatomic-ops" (firefly)
  • Status changed from New to Fix Under Review
Actions #4

Updated by Sage Weil over 8 years ago

  • Status changed from Fix Under Review to Resolved
Actions

Also available in: Atom PDF