Project

General

Profile

Actions

Bug #11896

closed

ceph command hangs and calls repeatedly gettimeofday when rdtsc() in Cycles.h returns 0

Added by Risto Sainio almost 9 years ago. Updated almost 9 years ago.

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

0%

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

Description

Earlier version of Cycles.h aborted compilation when the OS/arch was not one of the defined ones. Now it only gives warning and later, once installed, when Cycles::init is called it seems to hang as rdtsc always returns 0.
I solved the problem on Cubieboard by accessing the 32-bit performance counter and implemented following:
#elif defined(ARM_ARCH_7A)
uint32_t r = 0;
asm volatile("mrc p15, 0, %0, c9, c13, 0" : "=r"(r) );
return (uint64_t) r;

It would be better if the compilation gets aborted as long as the upper layers are not able to handle this situation properly

Actions

Also available in: Atom PDF