mon: PaxosService: can be readable even if proposing

As long as we have a stable version in memory that is lower or equal to
the version we want.

Fixes: #9321
Fixes: #9322

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
check endpoints is not empty before use it.

Signed-off-by: VRan Liu <gliuwr@gmail.com>
mon: fix MDS health status from peons

The health data was there, but we were attempting
to enumerate MDS GIDs from pending_mdsmap (empty on
peons) instead of mdsmap (populated from paxos updates)

Fixes: #10151
Backport: giant

Signed-off-by: John Spray <john.spray@redhat.com>
Merge pull request #2996 from ceph/wip-10151

mon: fix MDS health status from peons

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
erasure-code: conditionally build jerasure sse3/sse4 plugins
autotools: ARM/AArch64 NEON detection similar to x86
aarch64: add support for HW_CAP based neon runtime detection
erasure-code: gf-complete use neon enabled branch

Signed-off-by: Loic Dachary <ldachary@redhat.com>
erasure-code: build and use a NEON jerasure variant
erasure-code: always compile SSE and NEON tests

They do not actually depend on CPU features and are required to validate
the plugin selection logic.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
erasure-code: include new headers in distribution

The NEON optimization introduced new headers that must be listed
explicitly to be included in tarbals.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
erasure-code: test NEON arch selection logic

The jerasure plugin loads the plugin that matches the architecture
supported by the CPU at runtime. Include the NEON plugin in the tests.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
mon: OSDMonitor: allow adding tiers to FS pools

This was an overly-strict check.  In fact it is perfectly
fine to set an overlay on a pool that is already in use
as a filesystem data or metadata pool.

Fixes: #10135

Signed-off-by: John Spray <john.spray@redhat.com>
librados: Only public API symbols from the shared library

The librados shared library was previously exporting all
symbols.  librados public API methods are now explicitly
exported and all other symbols are hidden.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Merge pull request #2945 from ceph/wip-9321

mon: PaxosService: can be readable even if proposing

Reviewed-by: Sage Weil <sage@redhat.com>
librados: mark category args and ops as unused

Signed-off-by: Sage Weil <sage@redhat.com>
librados: add new get_pool_stats() variant; deprecate others

A new call will return a simple map of pool -> stats.  Drop the old ones
that did pool -> category -> stats, and deprecate the category one
entirely.

Signed-off-by: Sage Weil <sage@redhat.com>
librados: drop create category args

Signed-off-by: Sage Weil <sage@redhat.com>
osd: stop doing per-category accounting

Signed-off-by: Sage Weil <sage@redhat.com>
mon/PGMonitor: do not report per-category stats

Signed-off-by: Sage Weil <sage@redhat.com>