]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Samuel Just [Wed, 3 Apr 2019 23:57:47 +0000 (16:57 -0700)]
osd/: clean up PeeringState::write_if_dirty
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 23:56:47 +0000 (16:56 -0700)]
osd/: Move init into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Mon, 29 Apr 2019 20:53:09 +0000 (13:53 -0700)]
osd/: move stat updates and publishing to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 23:50:14 +0000 (16:50 -0700)]
osd/: move more state helpers to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 23:46:13 +0000 (16:46 -0700)]
osd/: move split/merge helpers into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 23:42:58 +0000 (16:42 -0700)]
osd/: fix try_mark_clean/finish_recovery interface boundary
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 00:57:01 +0000 (17:57 -0700)]
PeeringState: remove PG references and include
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 18:55:49 +0000 (11:55 -0700)]
osd/: move calc_min_last_complete_ondisk to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 00:45:45 +0000 (17:45 -0700)]
osd/: pass OSDService::logger and log_enter/exit through PeeringListener
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 3 Apr 2019 00:45:23 +0000 (17:45 -0700)]
osd/: pass merge state control through PeeringListener
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 23:53:29 +0000 (16:53 -0700)]
PeeringState: pass dump_recovery_info through to pl for recovery state
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 23:43:31 +0000 (16:43 -0700)]
PeeringState: rearrange and fix remaining pg->gen_prefix call
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 23:10:20 +0000 (16:10 -0700)]
osd/: move fulfill_info etc
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 22:58:39 +0000 (15:58 -0700)]
osd/: clarify PeeringState deletion interfaces
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 18:39:31 +0000 (11:39 -0700)]
osd/: move min_peer_*_features and helpers
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 2 Apr 2019 18:30:32 +0000 (11:30 -0700)]
osd/: move proc_* and log handling methods
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 22:33:29 +0000 (15:33 -0700)]
osd/: move share_pg_info to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Sat, 30 Mar 2019 04:45:18 +0000 (21:45 -0700)]
osd/: move waiting_for_flushed|peering handling into on_activate_complete
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 22:35:26 +0000 (15:35 -0700)]
osd/: move search_for_missing, discover_all_unfound, build_might_have_unfound
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Sat, 30 Mar 2019 04:02:54 +0000 (21:02 -0700)]
PeeringState: restructure activate to avoid snap_trimq
In particular, don't use snap_trimq when manipulating
info.purged_snaps. Pass the resulting to_trim set
into on_activate.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 22:34:25 +0000 (15:34 -0700)]
osd/: start moving activate to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Sat, 30 Mar 2019 00:23:45 +0000 (17:23 -0700)]
osd/: move try_mark_clean/finish_recovery to PG::on_clean
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Mon, 29 Apr 2019 20:55:20 +0000 (13:55 -0700)]
osd/: move choose_acting and callees into PeeringState
Also marks IsPGRecoverablePredicate users const to allow
simply reusing the instance on MissingLoc.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 22:56:44 +0000 (15:56 -0700)]
osd/: remove OSDService::check_osdmap_full, fix caller
PeeringState was the only remaining caller -- both the interface in
PGBackend and the pass-through in PrimaryLogPG were actually unused.
Further, the WaitLocalRecoveryReserved user does not appear to actually
require the fresh-off-of-the-wire osdmap available from OSDService.
As such, moved the logic into OSDMap itself and simply used the
PG local osdmap.
Note, the above is a change in behavior that probably could use a second
opinion.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 22:36:55 +0000 (15:36 -0700)]
osd/: move the backfill space reservation back into PG
PeeringState really only needs an interface for requesting
it.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 21:55:36 +0000 (14:55 -0700)]
osd/: move needs_recover/backfill, all_unfound_are_queried_or_lost
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 18:52:37 +0000 (11:52 -0700)]
osd/: clarify recovery queueing from PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 18:06:26 +0000 (11:06 -0700)]
osd/: move Active purged_snaps handling back to PG
Note: this patch only sets dirty_info/dirty_big_info when
info.purged_snaps is actually changed. I *think* that's
right, but that part deserves particular attention during
review.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 29 Mar 2019 00:28:40 +0000 (17:28 -0700)]
PeeringState: mechanically rename a ton of pg-> to ps->
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 28 Mar 2019 23:45:54 +0000 (16:45 -0700)]
PeeringState: introduce a macro for the ps, pl, and pg declarations
This way I can mechanically rename all of the PeeringState member
variable references.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 28 Mar 2019 22:47:05 +0000 (15:47 -0700)]
osd/: move build_prior and related state to PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 22:18:24 +0000 (15:18 -0700)]
PeeringState: clean up references in Primary, Start, Reset
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Mon, 29 Apr 2019 20:53:24 +0000 (13:53 -0700)]
osd/: move io reservation machinery into PeeringState
This patch recasts the reservation and backoff interfaces
on PeeringListener in terms of events to queue rather than
explicit callbacks (PG handles implementing via callbacks).
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 28 Mar 2019 22:31:14 +0000 (15:31 -0700)]
osd/: remove remaining scrubber references from PeeringState
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 23:13:23 +0000 (16:13 -0700)]
osd/: rephrase [un]reg_next_scrub as on_info_history_change
As PeeringState won't be as careful about usage of
on_info_history_change, add a scrub_registered flag
to protect against double-(un)registers.
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 22:43:27 +0000 (15:43 -0700)]
osd/: merge update_store_with_options with on_pool_change
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 21:44:25 +0000 (14:44 -0700)]
osd/: simply requeue_map_waiters in handle_activate, remove take_waiters
This seems clearer.
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 21:40:11 +0000 (14:40 -0700)]
osd/: move check_past_interval_bounds into PeeringState
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 21:24:01 +0000 (14:24 -0700)]
osd/: move start_peering_interval and callees into PeeringState
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 18:31:11 +0000 (11:31 -0700)]
osd/: move should_restart_peering to PeeringState
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
sjust@redhat.com [Wed, 27 Mar 2019 18:24:41 +0000 (11:24 -0700)]
osd/: move check_full_transition to PeeringState
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
Samuel Just [Wed, 27 Mar 2019 17:05:53 +0000 (10:05 -0700)]
PeeringState: route recoverystate_perf calls through PeeringListener
Signed-off-by: Samuel Just <rexludorum@gmail.com>
Samuel Just [Wed, 27 Mar 2019 01:24:21 +0000 (18:24 -0700)]
osd/: move flush state into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 27 Mar 2019 00:38:36 +0000 (17:38 -0700)]
osd/: move check_recovery_sources and missing_loc into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 18:08:54 +0000 (11:08 -0700)]
osd/: extract MissingLoc into its own file
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Tue, 26 Mar 2019 23:03:20 +0000 (16:03 -0700)]
osd/: move update_history and purge_strays into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 18:08:53 +0000 (11:08 -0700)]
osd/: move proc_replica_info and some callees into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 21:41:23 +0000 (14:41 -0700)]
osd/: move the is_* and acting/up/backfill helpers into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Fri, 22 Mar 2019 23:47:59 +0000 (16:47 -0700)]
osd/: Move osdmap handling into PeeringState
Signed-off-by: Samuel Just <sjust@redhat.com>
sjust@redhat.com [Fri, 22 Mar 2019 23:19:18 +0000 (16:19 -0700)]
osd/: move most peering state to PeeringState
This patch moves the 40 something peering state variables over into
PeeringState while leaving references to them in PG. The following
patches will move over the users until all users are in PeeringState.
Then, the PG references will be removed. A subsequent patch will also
move the recovery_state member to be the last initialize and first
destructed.
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
Samuel Just [Fri, 22 Mar 2019 01:21:36 +0000 (18:21 -0700)]
PeeringState: begin abstracting out PG, add dpp for logging
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 21 Mar 2019 23:25:17 +0000 (16:25 -0700)]
PGStateUtils: remove PG*, move into PGStateHistory into PeeringState
I don't think there's any need to worry about the pg locking from
PGStateHistory. NamedState::begin/exit and dump_pgstate_history are the
only users, so the only calls should be under the peering event handler,
the asok command, or the PG constructor and destructor. The first two
already have the lock. The last should be safe as well as long as
the state machine states are constructed and destructed after and
before the PGStateHistory instance. As such, this patch removes most
of that state leaving the epoch generation as an interface
implemented by PG.
The snap trimming state machine was already excluded, so that this
patch leaves it disabled.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 21 Mar 2019 19:36:39 +0000 (12:36 -0700)]
osd/: pull NamedState and PGStateHistory out into PGStateUtils
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 21 Mar 2019 19:00:09 +0000 (12:00 -0700)]
PeeringState: fix pg->info->pgid.pgid references
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 21 Mar 2019 18:23:29 +0000 (11:23 -0700)]
PeeringState: adjust logging to avoid using pg
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 25 Apr 2019 17:39:22 +0000 (10:39 -0700)]
osd/: mechanically rip PeeringState and friends out into their own file
The next step is to rationalize the PeeringState<->PG relationship.
Signed-off-by: Samuel Just <sjust@redhat.com>
Samuel Just [Fri, 12 Apr 2019 18:08:54 +0000 (11:08 -0700)]
osd/: mechanically rename RecoveryMachine/State/Ctx to Peering*
I'm going to extract this logic and reuse it in crimson. Recovery* has
always been a confusing name as it implements neither log-based recovery
nor backfill. Rather, it's mainly the buisiness logic for agreeing on
an authoritative log and some ancillary things such as scrub/backfill
reservation.
$ for i in $(git grep -l 'RecoveryMachine'); do sed -i 's/RecoveryMachine/PeeringMachine/g' $i; done
$ for i in $(git grep -l 'RecoveryState'); do sed -i 's/RecoveryState/PeeringState/g' $i; done
$ for i in $(git grep -l 'RecoveryCtx'); do sed -i 's/RecoveryCtx/PeeringCtx/g' $i; done
Signed-off-by: Samuel Just <sjust@redhat.com>
Gregory Farnum [Mon, 29 Apr 2019 20:45:16 +0000 (13:45 -0700)]
Merge pull request #27867 from tchaikov/wip-ceph-object-corpus
ceph-object-corpus: pick up
15.0.0-539-g191ab33faf
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Casey Bodley [Mon, 29 Apr 2019 17:06:47 +0000 (13:06 -0400)]
Merge pull request #27730 from cbodley/wip-rgw-boost-170
rgw: fix compile errors with boost 1.70
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Kefu Chai [Mon, 29 Apr 2019 16:17:08 +0000 (00:17 +0800)]
Merge pull request #27861 from tchaikov/wip-utime-cleanup
include/utime: do not cast sec to time_t
Reviewed-by: Samuel Just <sjust@redhat.com>
Kefu Chai [Mon, 29 Apr 2019 16:13:41 +0000 (00:13 +0800)]
ceph-object-corpus: pick up
15.0.0-539-g191ab33faf
Signed-off-by: Kefu Chai <kchai@redhat.com>
Lenz Grimmer [Mon, 29 Apr 2019 16:05:26 +0000 (18:05 +0200)]
Merge pull request #27784 from Devp00l/wip-39483
mgr/dashboard: Make all columns sortable
Sage Weil [Mon, 29 Apr 2019 16:04:31 +0000 (11:04 -0500)]
Merge PR #27590 into master
* refs/pull/27590/head:
messages: #include necessary header
Reviewed-by: Neha Ojha <nojha@redhat.com>
Sage Weil [Mon, 29 Apr 2019 16:04:15 +0000 (11:04 -0500)]
Merge PR #27804 into master
* refs/pull/27804/head:
common, osd: remove erroneous 'section' in dump functions
dencoder: include some missed types
common: make utime_t dencoder-compatible
common: make uuid_d dencoder-compatible
osd: make watch_item_t dencoder-compatible
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 29 Apr 2019 16:03:53 +0000 (11:03 -0500)]
Merge PR #27832 into master
* refs/pull/27832/head:
qa/suites/upgrade/mimic-x-singleton: suppress legacy statfs warning
osd: reenable authorizer on hb messenger for nautilus+
mon/MonClient: do not crash on empty auth request buffer
msg: set_require_authorizer on messenger, not dispatcher
mon/Monitor: allow probe if MMonProbe::mon_release == 0
mon: fix min_mon_release print
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 29 Apr 2019 15:38:16 +0000 (23:38 +0800)]
Merge pull request #27788 from cyx1231st/wip-seastar-msgr-batch-send
crimson/net: improve batching in the write path
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Kefu Chai [Mon, 29 Apr 2019 14:34:10 +0000 (22:34 +0800)]
Merge pull request #27776 from JunHe77/install-deps
install-deps.sh: add option to skip prebuilt boost-* pkgs installation
Reviewed-by: Kefu Chai <kchai@redhat.com>
Stephan Müller [Thu, 25 Apr 2019 12:34:00 +0000 (14:34 +0200)]
mgr/dashboard: Make all columns sortable
Fixes: https://tracker.ceph.com/issues/39483
Signed-off-by: Stephan Müller <smueller@suse.com>
Kefu Chai [Mon, 29 Apr 2019 12:48:30 +0000 (20:48 +0800)]
include/utime: do not cast sec to time_t
strictly speaking, time_t is an opaque time, and in this context, we
need a uint32_t, so it is not necessary and wrong. let's remove it.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Lenz Grimmer [Mon, 29 Apr 2019 12:23:17 +0000 (14:23 +0200)]
mgr/dashboard: auth: fix user lastUpdate timestamp generation (#27604)
mgr/dashboard: auth: fix user lastUpdate timestamp generation
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
Lenz Grimmer [Mon, 29 Apr 2019 11:36:05 +0000 (13:36 +0200)]
monitoring: Prometheus default alerts (#27596)
monitoring: Prometheus default alerts
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
Kefu Chai [Mon, 29 Apr 2019 10:51:09 +0000 (18:51 +0800)]
Merge pull request #27837 from cyx1231st/wip-seastar-msgr-fix-read
crimson/net: misc fixes in v1 read path
Reviewed-by: Kefu Chai <kchai@redhat.com>
Yingxin Cheng [Mon, 29 Apr 2019 09:03:00 +0000 (17:03 +0800)]
crimson/net: misc fixes in v1 read path
* abort when decoding/signature-check failed;
* change log-level to warn;
* free the decoded message when failed;
* add unlikely to read path;
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Yingxin Cheng [Thu, 11 Apr 2019 14:23:10 +0000 (22:23 +0800)]
crimson/net: increase out buffer to 65536
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Yingxin Cheng [Thu, 25 Apr 2019 22:10:32 +0000 (06:10 +0800)]
crimson/net: group write-related general implementations
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Yingxin Cheng [Thu, 25 Apr 2019 21:50:19 +0000 (05:50 +0800)]
crimson/net: use optional keepalive_ack to notify writes
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Yingxin Cheng [Thu, 25 Apr 2019 19:50:00 +0000 (03:50 +0800)]
crimson/net: gather message buffers when send
Gather buffers from pending messages/keepalive and send them together.
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Kefu Chai [Mon, 29 Apr 2019 01:10:16 +0000 (09:10 +0800)]
Merge pull request #27809 from tchaikov/wip-crimson-auth
crimson,auth: fix FTBFS of crimson-osd and fix v1/v2 auth
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Kefu Chai [Mon, 29 Apr 2019 01:09:15 +0000 (09:09 +0800)]
Merge pull request #27831 from tchaikov/wip-crimson-silence-warning
crimson/net: prefer <fmt/chrono.h> over <fmt/time.h>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Sage Weil [Mon, 29 Apr 2019 00:20:57 +0000 (19:20 -0500)]
qa/suites/upgrade/mimic-x-singleton: suppress legacy statfs warning
Signed-off-by: Sage Weil <sage@redhat.com>
Mykola Golub [Sun, 28 Apr 2019 17:03:02 +0000 (20:03 +0300)]
Merge pull request #27756 from dillaman/wip-39025
librbd: initial consolidation of internal locks
Reviewed-by: Mykola Golub <mgolub@suse.com>
Kefu Chai [Sun, 28 Apr 2019 15:31:31 +0000 (23:31 +0800)]
crimson/osd: silence -Wunused-variable warning
silence warning like
/home/kchai/ceph/src/crimson/osd/heartbeat.cc:314:24: warning: unused
variable ‘peer’ [-Wunused-variable]
auto& [peer, info] = item;
^
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 08:35:54 +0000 (16:35 +0800)]
crimson/mon: log when a monitor is fully connected
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 08:09:01 +0000 (16:09 +0800)]
crimson/mon: hold rotating_keyring using a pointer
we could have kept rotating_keyring as a plain member variable, but
`AuthClientHandler` keeps a weak reference to it, we are not able to
update it to point it to the new rotating_keyring in the newly created
active_con created from the connected pending connection -- the move
ctor of ceph::mon::Connection does create a new RotatingKeyring. so this
has two consequences:
- the raw pointer held by AuthClientHandler is not valid anymore, after
the pending connection is destroyed when it is promoted to active_con.
so we are writing to freed memory when renewing the rotating keyring.
- we won't have access to the updated keyring.
if we use a std::vector<unique_ptr<Connection>> for pending_conns, this
change won't be needed. we could make this change in a future change
though.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 08:01:52 +0000 (16:01 +0800)]
auth,mon,crimson: pass KeyStore by const reference
AuthAuthorizeHandler::verify_authorizer() neither changes the keystore,
nor expects a nullptr. so we should pass the keystore by const reference
for better readability
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 04:03:59 +0000 (12:03 +0800)]
test/crimson: do not link against ceph-common
crimson-common and ceph-common have subtle difference which is
conditionalized by WITH_SEASTAR macro. and the different implementations
share the same name, so we should not link crimson executables against ceph-common .
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 03:39:12 +0000 (11:39 +0800)]
auth: do not use cct unless i have to
crimson messenger's tests does not use ConfigProxy at the time of writing,
and ldout() cannot tell if a log message should be written to the
logfile or not without querying config subsystem, so, to avoid involving
config system in crimson messenger's tests, the log line is disabled if
WITH_SEASTAR, we will kill this workaround once we ditch crimson/net/Config.h.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 02:04:03 +0000 (10:04 +0800)]
crimson/mon: renew rotating secret if necessary
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 02:03:12 +0000 (10:03 +0800)]
auth/Auth: pass utime_t by const reference
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 26 Apr 2019 01:55:59 +0000 (09:55 +0800)]
auth/cephx: do not require a cct for accessing config
crimson/msgr does not depend on ConfigProxy at the time of writing. we
want to decouple it from config subsystem in hope to have less cross
subsystem dependencies and speed up the compiling speed.
but, to introduce cephx to msgr, we need to enable msgr to read from
ConfigProxy at runtime. so, to avoid keeping a CephContext instance
simply for accessing the ConfigProxy reference in it, it would be more
efficient to define a free function `conf()` which hides the difference
between crimson and classic user of auth/cephx.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 14:10:16 +0000 (22:10 +0800)]
crimson/net: learn my address from peer
OSD always relies on its server to tell its address, without this
feature, it will advertise a blank ip address to monitor in MOSDBoot.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 14:04:50 +0000 (22:04 +0800)]
crimson/mon: pass cct to verify_authorizer()
CephxAuthorizeHandler::verify_authorizer() uses it for querying config
and for a RNG, so we have to pass it a CephContext which has `_conf` and
`random()`.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 12:31:17 +0000 (20:31 +0800)]
crimson/osd: pass `Connection*` to Dispatch::ms_dispatch()
it's a regression introduced by
c69bf0c002f1b62283b3eb5df62fdcb65963b4ae
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 12:23:03 +0000 (20:23 +0800)]
crimson/net: sign message and check it if authorizer is available
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 12:19:03 +0000 (20:19 +0800)]
crimson/mon: set entity_name before trying to connect to mon
otherwise Monitor.cc or AuthMonitor.cc won't be able to find it in the
keyring.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 12:18:21 +0000 (20:18 +0800)]
crimson/mgr: connect mgr with v2 protocol
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 05:48:04 +0000 (13:48 +0800)]
crimson: remove ms_get_authorizer() and friends
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 28 Apr 2019 14:46:45 +0000 (22:46 +0800)]
test/crimson: disable authorizer for tests
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 28 Apr 2019 14:44:40 +0000 (22:44 +0800)]
crimson/osd: sync msgr's require_authorizer with osdmap
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 25 Apr 2019 05:36:59 +0000 (13:36 +0800)]
crimson/mon: tolerate lack of authorizer for some messengers
also, we should not crash on empty auth request buffer.
see also
64eddc4d and
b99daab1
Signed-off-by: Kefu Chai <kchai@redhat.com>