]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agomgr/cephadm: update monitoring stack versions 45187/head
Aashish Sharma [Mon, 28 Feb 2022 06:16:14 +0000 (11:46 +0530)]
mgr/cephadm: update monitoring stack versions

Fixes: https://tracker.ceph.com/issues/54311
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
3 years agoMerge pull request #45533 from rhcs-dashboard/update-grafana-version
Ernesto Puerta [Tue, 22 Mar 2022 15:27:25 +0000 (16:27 +0100)]
Merge pull request #45533 from rhcs-dashboard/update-grafana-version

mgr/dashboard/monitoring: update grafana version

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #45420 from mgfritch/cephadm-infer-image-pull
Adam King [Tue, 22 Mar 2022 12:51:57 +0000 (08:51 -0400)]
Merge pull request #45420 from mgfritch/cephadm-infer-image-pull

cephadm: infer the default container image during pull

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
3 years agoMerge pull request #45506 from dang/wip-dang-53614
Daniel Gryniewicz [Tue, 22 Mar 2022 12:36:20 +0000 (08:36 -0400)]
Merge pull request #45506 from dang/wip-dang-53614

RGW - Make admin bucket chown accept marker

reviewed-by: Casey Bodley <cbodley@redhat.com>

3 years agoMerge pull request #45360 from rhcs-dashboard/fix-54481-master
Ernesto Puerta [Tue, 22 Mar 2022 12:07:58 +0000 (13:07 +0100)]
Merge pull request #45360 from rhcs-dashboard/fix-54481-master

mgr/dashboard: fix wrong pg status processing

Reviewed-by: Sarthak0702 <NOT@FOUND>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: sunilangadi2 <NOT@FOUND>
3 years agoMerge pull request #45353 from PepperJo/readv_writev_overflow_v2
Ilya Dryomov [Tue, 22 Mar 2022 10:13:46 +0000 (11:13 +0100)]
Merge pull request #45353 from PepperJo/readv_writev_overflow_v2

librbd: readv/writev fix iovecs length computation overflow

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agoMerge pull request #45285 from chrisphoffman/wip-rbd-du-validate
Ilya Dryomov [Tue, 22 Mar 2022 10:11:53 +0000 (11:11 +0100)]
Merge pull request #45285 from chrisphoffman/wip-rbd-du-validate

test/librbd: add test to verify diff_iterate size

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agoMerge pull request #45221 from rzarzynski/wip-core-drop-unused-aiocompletion-in-librados
Yuri Weinstein [Mon, 21 Mar 2022 21:12:39 +0000 (14:12 -0700)]
Merge pull request #45221 from rzarzynski/wip-core-drop-unused-aiocompletion-in-librados

core, test: fix compile-time warnings

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #45415 from Matan-B/wip-matanb-watch-r-buffer
Samuel Just [Mon, 21 Mar 2022 18:31:42 +0000 (11:31 -0700)]
Merge pull request #45415 from Matan-B/wip-matanb-watch-r-buffer

crimson/osd: fix osd crash due to buffer reference binding

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45050 from hualongfeng/qatchange
Casey Bodley [Mon, 21 Mar 2022 13:40:55 +0000 (09:40 -0400)]
Merge pull request #45050 from hualongfeng/qatchange

common/compressor: fix the issue that cannot processed concurrently

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #44491 from nmshelke/fix-46075
Venky Shankar [Mon, 21 Mar 2022 13:09:35 +0000 (18:39 +0530)]
Merge pull request #44491 from nmshelke/fix-46075

ceph-fuse: ignore fuse mount failure if path is already mounted

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agomgr/dashboard/monitoring: update grafana version 45533/head
Aashish Sharma [Mon, 21 Mar 2022 12:10:03 +0000 (17:40 +0530)]
mgr/dashboard/monitoring: update grafana version

Fixes: https://tracker.ceph.com/issues/54311
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
3 years agoMerge pull request #45406 from wxypro/fix-typos
Venky Shankar [Mon, 21 Mar 2022 09:59:19 +0000 (15:29 +0530)]
Merge pull request #45406 from wxypro/fix-typos

docs,options: fix typos

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #45525 from idryomov/wip-rbd-trash-purge-schedule-relax-assert
Ilya Dryomov [Mon, 21 Mar 2022 09:22:53 +0000 (10:22 +0100)]
Merge pull request #45525 from idryomov/wip-rbd-trash-purge-schedule-relax-assert

qa/workunits/rbd/cli_generic.sh: relax trash purge schedule status assert

Reviewed-by: Mykola Golub <mgolub@suse.com>
3 years agoMerge pull request #45517 from liu-chunmei/crimson-fix-cmpxattr
Liu-Chunmei [Mon, 21 Mar 2022 05:40:28 +0000 (22:40 -0700)]
Merge pull request #45517 from liu-chunmei/crimson-fix-cmpxattr

crimson: let read operation return result in MOSDOpReply

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agocommon/compressor: fix the issue that cannot processed concurrently 45050/head 46015/head
Feng Hualong [Wed, 16 Feb 2022 06:01:17 +0000 (14:01 +0800)]
common/compressor: fix the issue that cannot processed concurrently

Now, one session cannot support concurrent and it will lead to crash.
So there are mutil session using. At same time, it also can improve
the performance.

Fixes: https://tracker.ceph.com/issues/54361
Signed-off-by: Feng Hualong <hualong.feng@intel.com>
3 years agoqa/workunits/rbd/cli_generic.sh: relax trash purge schedule status assert 45525/head
Ilya Dryomov [Sat, 19 Mar 2022 13:04:52 +0000 (14:04 +0100)]
qa/workunits/rbd/cli_generic.sh: relax trash purge schedule status assert

Commit 08df6e0fd006 ("qa/workunits/rbd: expand LevelSpec parsing
coverage") didn't account for images with a separate data pool.  This
was missed because of small-cache-pool.yaml breakage.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 years agocrimson: let read operation return result in MOSDOpReply 45517/head
Chunmei Liu [Fri, 18 Mar 2022 04:12:26 +0000 (21:12 -0700)]
crimson: let read operation return result in MOSDOpReply

otherwise cmp_xattr will failed,
only check if return result for write operation.

Signed-off-by: Chunmei Liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45518 from liu-chunmei/crimson-fix-read-length
Liu-Chunmei [Sat, 19 Mar 2022 02:55:31 +0000 (19:55 -0700)]
Merge pull request #45518 from liu-chunmei/crimson-fix-read-length

crimson: set returned read length in op.extent.length not in rval

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #45520 from rzarzynski/wip-crimson-rvalue-in-future-set_callback
Kefu Chai [Sat, 19 Mar 2022 01:46:51 +0000 (09:46 +0800)]
Merge pull request #45520 from rzarzynski/wip-crimson-rvalue-in-future-set_callback

crimson/common, seastar: bump up to a newer version. Fix a FTBFS

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #44835 from rhcs-dashboard/cypress-cucumber
Ernesto Puerta [Fri, 18 Mar 2022 17:12:16 +0000 (18:12 +0100)]
Merge pull request #44835 from rhcs-dashboard/cypress-cucumber

mgr/dashboard: BDD approach for the dashboard cephadm e2e

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoMerge pull request #45345 from cbodley/wip-cls-rgw-suggest-version
Casey Bodley [Fri, 18 Mar 2022 15:42:50 +0000 (11:42 -0400)]
Merge pull request #45345 from cbodley/wip-cls-rgw-suggest-version

cls/rgw: rgw_dir_suggest_changes detects race with completion

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Mark Kogan <mkogan@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
3 years agoMerge pull request #45300 from soumyakoduri/wip-skoduri-lc-sync
Casey Bodley [Fri, 18 Mar 2022 15:41:35 +0000 (11:41 -0400)]
Merge pull request #45300 from soumyakoduri/wip-skoduri-lc-sync

rgw: Update "CEPH_RGW_DIR_SUGGEST_LOG_OP" for remove entries

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
3 years agoseastar: bump up to a newer version. 45520/head
Radosław Zarzyński [Fri, 18 Mar 2022 14:21:09 +0000 (15:21 +0100)]
seastar: bump up to a newer version.

It's needed to addresses a FTBFS due to the Seastar's
no-locking-when-throwing hack.

Tags: seastar submodule
Signed-off-by: Radosław Zarzyński <rzarzyns@redhat.com>
3 years agocrimson/common: pass rvalue reference to future::set_callback().
Radosław Zarzyński [Fri, 18 Mar 2022 13:12:53 +0000 (14:12 +0100)]
crimson/common: pass rvalue reference to future::set_callback().

It's necessary since 710a1bfdc02202fe9e59df8ea31de5b82b893fb4
in Seastar.

This change is a part of ongoing upgrade of Seastar which will
be completed in a follow-up PR, after merging another change
with the Seastar's upstream.

Signed-off-by: Radosław Zarzyński <rzarzyns@redhat.com>
3 years agolibrbd: readv/writev fix iovecs length computation overflow 45353/head
Jonas Pfefferle [Wed, 9 Mar 2022 13:26:42 +0000 (14:26 +0100)]
librbd: readv/writev fix iovecs length computation overflow

iovec have unsigned length (size_t) and before this patch the
total length was computed by adding iovec's length to a signed
length variable (ssize_t). While the code checked if the resulting
length was negative on overflow, the case where length is positive
after overflow was not checked. This patch fixes the overflow check
by changing length to unsigned size_t.

Additionally, this patch fixes the case where some iovecs have been
added to the bufferlist and the aio completion has been blocked, but
adding an additional iovec fails because of overflow. This leads to
the UserBufferDeleter trying to unblock the completion on destruction
of the bufferlist but asserting because the completion was never
armed. We avoid this by first computing the total length and checking
for overflows and iovcnt before adding them to the bufferlist.

Signed-off-by: Jonas Pfefferle <pepperjo@japf.ch>
3 years agocrimson: set returned read length in op.extent.length not in rval 45518/head
Chunmei Liu [Fri, 18 Mar 2022 05:42:32 +0000 (22:42 -0700)]
crimson: set returned read length in op.extent.length not in rval

rval set to be zero, means read success.
otherwise CReadOpsTest failed.

Signed-off-by: Chunmei Liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45419 from tchaikov/wip-cxx20-fixes-core
Kefu Chai [Fri, 18 Mar 2022 03:18:34 +0000 (11:18 +0800)]
Merge pull request #45419 from tchaikov/wip-cxx20-fixes-core

osd, common: C++20 related fixes

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoMerge pull request #45391 from mkogan1/wip-fix-lc-alloc
Casey Bodley [Thu, 17 Mar 2022 21:12:25 +0000 (17:12 -0400)]
Merge pull request #45391 from mkogan1/wip-fix-lc-alloc

rgwlc: fix segfault during lc

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #45103 from jtlayton/wip-54280
Yuri Weinstein [Thu, 17 Mar 2022 19:55:49 +0000 (12:55 -0700)]
Merge pull request #45103 from jtlayton/wip-54280

osd: allow sparse reads with a non-zero truncate-seq

Reviewed-by: Xiubo Li <xiubli@redhat.com>
3 years agoMerge pull request #40703 from linuxbox2/wip-rgwlc-noreset
Matt Benjamin [Thu, 17 Mar 2022 18:03:19 +0000 (14:03 -0400)]
Merge pull request #40703 from linuxbox2/wip-rgwlc-noreset

rgwlc: remove explicit lc shard resets at start-of-run

3 years agoMerge pull request #45392 from sseshasa/wip-snaptrim-qos-with-mclock
Yuri Weinstein [Thu, 17 Mar 2022 16:48:12 +0000 (09:48 -0700)]
Merge pull request #45392 from sseshasa/wip-snaptrim-qos-with-mclock

mon, osd: Add snaptrim stats to the existing PG stats.

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agorgwlc: restore already_run_today guard 40703/head
Matt Benjamin [Tue, 15 Mar 2022 19:36:45 +0000 (15:36 -0400)]
rgwlc:  restore already_run_today guard

On review, this constraint was correct--it does reliably prevent
same-cycle re-runs when a lc threads rendezvous on a bucket.

Also, for concurrent (or stale) and already processed buckets,
remember to advance head past the corresponding buckets.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: prevent multiple runs per scheduling cycle
Matt Benjamin [Tue, 1 Mar 2022 20:28:00 +0000 (15:28 -0500)]
rgwlc:  prevent multiple runs per scheduling cycle

Restore (and robustify) the assertion that, in general, each bucket
shard should be processed once per scheduling cycle.

If the prior cycle did not finish, processing in the current cyhcle
will continue from the marker where the last cycle left off.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: include lc shard oid in "lc shard list"
Matt Benjamin [Fri, 18 Feb 2022 17:23:30 +0000 (12:23 -0500)]
rgwlc:  include lc shard oid in "lc shard list"

E.g.,
[
    {
        "bucket": ":bucket1:f2f4a8dd-7ec9-4758-bc4f-c8f5fbc85109.4137.2",
        "shard": "lc.6",
        "started": "Fri, 18 Feb 2022 17:30:16 GMT",
        "status": "COMPLETE"
    },
...
]

The prototyped approach adds a copy of the shard name (which is
assured to be a small string) to rgw::sal::LCEntry.  It's not
expected to be represented in underlying store types.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: avoid front() on empty lc entry vector
Matt Benjamin [Fri, 18 Feb 2022 14:31:06 +0000 (09:31 -0500)]
rgwlc: avoid front() on empty lc entry vector

Conveniently, this arose after removing all lifecycle shards from
RADOS, proving it could be done safely.

A restart is currently needed to recognize new lifecycle shards,
if rgw_gc_max_objs also changed.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: pretty-print status in RGWLC::process(int...)
Matt Benjamin [Fri, 18 Feb 2022 13:33:35 +0000 (08:33 -0500)]
rgwlc:  pretty-print status in RGWLC::process(int...)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: remove bucket_lc_prepare, add backoff
Matt Benjamin [Thu, 17 Feb 2022 15:55:14 +0000 (10:55 -0500)]
rgwlc:  remove bucket_lc_prepare, add backoff

Remove now-unused RGWLC::bucket_lc_prepare.  Wrap serializer calls
in RGWLC::process(int index...) with simple backoff, limited to 5
retries.

In RGWLC::process(int index...), also open-coded the behavior of
RGWLC::bucket_lc_prepare(...), as the lock sharing between these
methods is error prone.  For now, that method exists, so that it can
be called from the single-bucket process.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: remove explicit lc shard resets at start-of-run
Matt Benjamin [Mon, 14 Feb 2022 21:39:27 +0000 (16:39 -0500)]
rgwlc: remove explicit lc shard resets at start-of-run

This is an alternative solution to the (newly exposed) lifecycle
shard starvation problem reported by Jeegen Chen.

There was always an starvation condition implied by the
reset of lc shard head at the start of processing.  The introduction
of "stale sessions" in parallel lifecycle changes made it more
visible, in particular when rgw_lc_debug_interval was set to a small
value and many buckets had lifecycle policy.

My hypothesis in this change is that lifecycle processing for each
lc shard should /always/ continue through the full set of eligible
buckets for the shard, regardless of how many processing cycles might
be required to do so.  In general, restarting at the first eligible
bucket on each reschedule invites starvation when processing "gets
behind", so just avoid it.

Fixes: https://tracker.ceph.com/issues/49446
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 6e2ae13adced6b3dbb2fe16b547a30e9d68dfa06)

rgwlc: add a wraparound to continued shard processing

If the full set of buckets for a given lc shard couldn't be
processed in the prior cycle, processing will start with a
non-empty marker.  Note the initial marker position, then
when the end of shard is reached, allow processing to wrap
around to the logical beginning of the shard and proceeding
through the initial marker.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
Please enter the commit message for your changes. Lines starting
(cherry picked from commit 0b8f683d3cf444cc68fd30c3f179b9aa0ea08e7c)

don't report clearing incorrectly

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: permit skipping processing in RGWLC::bucket_lc_process(...)
Matt Benjamin [Tue, 15 Feb 2022 00:51:43 +0000 (19:51 -0500)]
rgwlc:  permit skipping processing in RGWLC::bucket_lc_process(...)

The intent is to permit tracing of the bucket processing scheduler, without
expiring or transitioning any objects.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agorgwlc: permit disabling of (default) auto-clearing of stale sessions
Matt Benjamin [Mon, 14 Feb 2022 23:26:22 +0000 (18:26 -0500)]
rgwlc: permit disabling of (default) auto-clearing of stale sessions

Provide an option to disable automatic clearing of stale sessions--
which, unless disabled, happens after 2 lifecycle scheduling cycles.

The default behavior is most likely not desired when a debugging or
testing lifecycle processing with rgw_lc_debug_interval is set, and
therefore re-entering a running session after 2 scheduling cycles is
fairly likely.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agoRGW - Make admin bucket chown accept marker 45506/head
Daniel Gryniewicz [Thu, 17 Mar 2022 14:35:51 +0000 (10:35 -0400)]
RGW - Make admin bucket chown accept marker

The bucket chown command needs to touch every object, and if it fails
can take a long time to catch up.  Allow it to accept the --marker
option so you can tell it where to pick up.

Fixes: https://tracker.ceph.com/issues/53614
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
3 years agos3select: bump s3select submodule 45419/head
Kefu Chai [Wed, 16 Mar 2022 14:01:26 +0000 (22:01 +0800)]
s3select: bump s3select submodule

to include the C++20 fixes included recently

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agorgw/rgw_sal_motr: ignore clang warning
Kefu Chai [Mon, 14 Mar 2022 15:59:08 +0000 (23:59 +0800)]
rgw/rgw_sal_motr: ignore clang warning

clang++-13 complains like:

/usr/include/motr/addb2/histogram.h:99:44: error: arithmetic between different enumeration types ('(unnamed enum at /usr/include/motr/addb2/internal.h:44:1)' and '(unnamed enum at /usr/include/motr/addb2/counter.h:49:1)') is deprecated [-Werror,-Wdeprecated-anon-enum-enum-conversion]
        M0_ADDB2_HIST_BUCKETS = 2 * (VALUE_MAX_NR - M0_ADDB2_COUNTER_VALS - 2)
                                     ~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~

so let's silence it.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agocls/fifo: use friend instead of member operators
Kefu Chai [Mon, 14 Mar 2022 15:35:13 +0000 (23:35 +0800)]
cls/fifo: use friend instead of member operators

to address following error when compiling with C++20 standard:

../src/rgw/cls_fifo_legacy.cc:2217:22: error: ISO C++20 considers use of overloaded operator '==' (with operand types 'rados::cls::fifo::journal_entry' and 'rados::cls::fifo::journal_entry') to be ambiguous despite there being a unique best viable function [-Werror,-Wambiguous-reversed-operator]
            !(jiter->second == e)) {
              ~~~~~~~~~~~~~ ^  ~
../src/cls/fifo/cls_fifo_types.h:148:8: note: ambiguity is between a regular call to this operator and a call with the argument order reversed
  bool operator ==(const journal_entry& e) {
       ^

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoosd: Replace deprecated use of format_to
Adam C. Emerson [Tue, 8 Mar 2022 00:33:08 +0000 (19:33 -0500)]
osd: Replace deprecated use of format_to

The non-deprecated version takes an explicit OutputIterator.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoosd: Fix truncated format warning
Adam C. Emerson [Tue, 8 Mar 2022 00:14:24 +0000 (19:14 -0500)]
osd: Fix truncated format warning

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoosd: Replace deprecated spirit/include/phoneix.hpp with phoenix.hpp
Adam C. Emerson [Mon, 7 Mar 2022 23:57:21 +0000 (18:57 -0500)]
osd: Replace deprecated spirit/include/phoneix.hpp with phoenix.hpp

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agocommon: Fix format truncation warning
Adam C. Emerson [Mon, 7 Mar 2022 23:17:58 +0000 (18:17 -0500)]
common: Fix format truncation warning

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agocommon: Replace deprecated spirit/include/phoneix with phoenix.hpp
Adam C. Emerson [Mon, 7 Mar 2022 23:11:59 +0000 (18:11 -0500)]
common: Replace deprecated spirit/include/phoneix with phoenix.hpp

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoinclude: Remove deprecated std::iterator from xlist
Adam C. Emerson [Mon, 7 Mar 2022 22:58:38 +0000 (17:58 -0500)]
include: Remove deprecated std::iterator from xlist

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
3 years agoneorados: assoc_delete() uses allocator_traits
Casey Bodley [Mon, 14 Feb 2022 22:56:33 +0000 (17:56 -0500)]
neorados: assoc_delete() uses allocator_traits

the std::allocator<T> member functions destroy() and deallocate() were
deprecated in c++17 and removed in c++20. call the static functions on
std::allocator_traits<T> instead

resolves the c++20 compilation error with clang13:

In file included from ceph/src/test/cls_fifo/bench_cls_fifo.cc:38:
ceph/src/neorados/cls/fifo.h:684:7: error: no member named 'destroy' in 'std::allocator<neorados::cls::fifo::detail::JournalProcessor<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>>'
    a.destroy(t);
    ~ ^
ceph/src/neorados/cls/fifo.h:1728:11: note: in instantiation of function template specialization 'neorados::cls::fifo::FIFO::assoc_delete<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>, neorados::cls::fifo::detail::JournalProcessor<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>>' requested here
    FIFO::assoc_delete(h, this);
          ^
ceph/src/neorados/cls/fifo.h:1605:6: note: in instantiation of member function 'neorados::cls::fifo::detail::JournalProcessor<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>::handle' requested here
            handle(errc::inconsistency);
            ^
ceph/src/neorados/cls/fifo.h:857:8: note: in instantiation of member function 'neorados::cls::fifo::detail::JournalProcessor<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>::process' requested here
    p->process();
       ^
/usr/include/boost/asio/bind_executor.hpp:407:12: note: in instantiation of member function 'neorados::cls::fifo::FIFO::NewPartPreparer<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>::operator()' requested here
    return this->target_(BOOST_ASIO_MOVE_CAST(Args)(args)...);
           ^
ceph/src/common/async/bind_allocator.h:179:12: note: in instantiation of function template specialization 'boost::asio::executor_binder<neorados::cls::fifo::FIFO::NewPartPreparer<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>, boost::asio::executor>::operator()<boost::system::error_code &, bool>' requested here
    return this->target(std::forward<Args>(args)...);
           ^
ceph/src/neorados/cls/fifo.h:939:5: note: in instantiation of function template specialization 'neorados::cls::fifo::FIFO::_update_meta<ceph::async::allocator_binder<boost::asio::executor_binder<neorados::cls::fifo::FIFO::NewPartPreparer<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>, boost::asio::executor>, std::allocator<void>>>' requested here
    _update_meta(fifo::update{}.journal_entries_add(jentries),
    ^
ceph/src/neorados/cls/fifo.h:1008:7: note: in instantiation of function template specialization 'neorados::cls::fifo::FIFO::_prepare_new_part<ceph::async::allocator_binder<boost::asio::executor_binder<(lambda at ceph/src/neorados/cls/fifo.h:1012:4), boost::asio::executor>, std::allocator<void>>>' requested here
      _prepare_new_part(
      ^
ceph/src/neorados/cls/fifo.h:524:7: note: in instantiation of function template specialization 'neorados::cls::fifo::FIFO::_prepare_new_head<ceph::async::allocator_binder<boost::asio::executor_binder<neorados::cls::fifo::FIFO::Pusher<spawn::detail::coro_handler<boost::asio::executor_binder<void (*)(), boost::asio::executor>, void>>, boost::asio::executor>, std::allocator<void>>>' requested here
      _prepare_new_head(std::move(p));
      ^

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agoxlist: use friend instead of member operators
Casey Bodley [Fri, 11 Feb 2022 23:56:30 +0000 (18:56 -0500)]
xlist: use friend instead of member operators

resolves a c++20 compilation error with clang 13:

In file included from ceph/src/client/Client.cc:55:
In file included from ceph/src/messages/MClientCaps.h:19:
In file included from ceph/src/mds/mdstypes.h:22:
ceph/src/include/xlist.h:212:27: warning: ISO C++20 considers use of overloaded operator '!=' (with operand types 'xlist<Dentry *>::const_iterat
or' and 'xlist<Dentry *>::const_iterator') to be ambiguous despite there being a unique best viable function with non-reversed arguments [-Wambiguous-reversed
-operator]
    for (const auto &item : list) {
                          ^
ceph/src/client/Client.cc:3299:63: note: in instantiation of member function 'operator<<' requested here
    ldout(cct, 20) << "link  inode " << in << " parents now " << in->dentries << dendl;
                                                              ^
ceph/src/include/xlist.h:202:10: note: candidate function with non-reversed arguments
    bool operator!=(const_iterator& rhs) const {
         ^
ceph/src/include/xlist.h:199:10: note: ambiguous candidate function with reversed arguments
    bool operator==(const_iterator& rhs) const {
         ^

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agocpp-btree: Add alternative overload for btree:operator==
Casey Bodley [Fri, 11 Feb 2022 23:52:35 +0000 (18:52 -0500)]
cpp-btree: Add alternative overload for btree:operator==

Silence Clang's C++20 -Wambiguous-reversed-operator.

cbodley took this from https://github.com/Kronuz/cpp-btree/pull/4
Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agobuffer: constrain conversions of buffers_t iterators
Casey Bodley [Fri, 11 Feb 2022 23:26:22 +0000 (18:26 -0500)]
buffer: constrain conversions of buffers_t iterators

prevent conversions from const_iterator -> iterator to resolve a c++20
compilation error with clang 13:

ceph/src/include/buffer.h:537:18: error: use of overloaded operator '==' is ambiguous (with operand types 'ceph::buffer::list::buffers_t::const_iterator' (aka 'buffers_iterator<const ceph::buffer::ptr_node>') and 'ceph::buffer::list::buffers_t::iterator' (aka 'buffers_iterator<ceph::buffer::ptr_node>'
))
        _root.next = it == end() ? &item : _root.next;
                     ~~ ^  ~~~~~
ceph/src/include/buffer.h:471:7: note: candidate function
        bool operator==(const buffers_iterator& rhs) const {
             ^
ceph/src/include/buffer.h:471:7: note: candidate function (with reversed parameter order)

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agolibrados: stop using c++20 keyword 'requires'
Casey Bodley [Fri, 11 Feb 2022 19:49:35 +0000 (14:49 -0500)]
librados: stop using c++20 keyword 'requires'

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agolibradosstriper: remove template syntax from constructor
Casey Bodley [Fri, 11 Feb 2022 20:34:51 +0000 (15:34 -0500)]
libradosstriper: remove template syntax from constructor

fixes compilation with -std=c++20:

/home/cbodley/ceph/src/libradosstriper/RadosStriperImpl.cc:424:65: error: expected ‘)’ before ‘*’ token
  424 |   StatCompletionData<TimeType>(libradosstriper::RadosStriperImpl* striper,
      |                               ~                                 ^

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #44795 from ajarr/dynamic-update-cephfs-nfs-export
Venky Shankar [Thu, 17 Mar 2022 13:15:08 +0000 (18:45 +0530)]
Merge pull request #44795 from ajarr/dynamic-update-cephfs-nfs-export

 mgr/nfs: allow dynamic update of cephfs nfs export

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #45271 from liu-chunmei/seastore-op-missing
Liu-Chunmei [Thu, 17 Mar 2022 10:52:06 +0000 (03:52 -0700)]
Merge pull request #45271 from liu-chunmei/seastore-op-missing

crimson/seastore: add OP_RMATTR support

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agoMerge pull request #45403 from liu-chunmei/crimson-reply-version
Samuel Just [Wed, 16 Mar 2022 19:17:01 +0000 (12:17 -0700)]
Merge pull request #45403 from liu-chunmei/crimson-reply-version

crimson: fix set_reply_versions missing

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agocephadm: infer the default container image during pull 45420/head
Michael Fritch [Wed, 16 Mar 2022 13:39:03 +0000 (07:39 -0600)]
cephadm: infer the default container image during pull

Fixes: https://tracker.ceph.com/issues/54588
Signed-off-by: Michael Fritch <mfritch@suse.com>
3 years agoMerge pull request #45176 from liu-chunmei/crimson-teuthology
Samuel Just [Wed, 16 Mar 2022 19:06:04 +0000 (12:06 -0700)]
Merge pull request #45176 from liu-chunmei/crimson-teuthology

crimson: teuthology suite for seastore

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agoMerge pull request #45402 from ceph/wip-yuri-master-crontab
Yuri Weinstein [Wed, 16 Mar 2022 15:25:51 +0000 (08:25 -0700)]
Merge pull request #45402 from ceph/wip-yuri-master-crontab

qa/tests: fixed typo

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #45218 from rhcs-dashboard/feature-clusterLogs-searchHighlight
Ernesto Puerta [Wed, 16 Mar 2022 13:14:43 +0000 (14:14 +0100)]
Merge pull request #45218 from rhcs-dashboard/feature-clusterLogs-searchHighlight

mgr/dashboard: highlight the search text in cluster logs

Reviewed-by: Sarthak0702 <NOT@FOUND>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: sunilangadi2 <NOT@FOUND>
3 years agoMerge pull request #44843 from rhcs-dashboard/fix-Nan-undefined-host-columns
Ernesto Puerta [Wed, 16 Mar 2022 13:12:47 +0000 (14:12 +0100)]
Merge pull request #44843 from rhcs-dashboard/fix-Nan-undefined-host-columns

mgr/dashboard: fix columns in host table  with NaN Undefined

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoMerge pull request #44751 from rhcs-dashboard/introduce-logging-containers
Ernesto Puerta [Wed, 16 Mar 2022 13:06:55 +0000 (14:06 +0100)]
Merge pull request #44751 from rhcs-dashboard/introduce-logging-containers

mgr/cephadm: introduce centralized logging in Dashboard using Loki and Promtail

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: rkachach <NOT@FOUND>
Reviewed-by: sunilangadi2 <NOT@FOUND>
Reviewed-by: umangachapagain <NOT@FOUND>
3 years agocrimson/osd: buffer runtime error with misaligned address 45415/head
Matan Breizman [Wed, 16 Mar 2022 11:53:59 +0000 (13:53 +0200)]
crimson/osd: buffer runtime error with misaligned address

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 years agoMerge pull request #45104 from rhcs-dashboard/cephfs-ernno-mapping 45095/head
Venky Shankar [Wed, 16 Mar 2022 10:15:14 +0000 (15:45 +0530)]
Merge pull request #45104 from rhcs-dashboard/cephfs-ernno-mapping

Add mapping for ernno:13 and adding path in error msg in opendir()/cephfs.pyx

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agocephfs-mirror: fix typos in cephfs-mirror options 45406/head
wangxinyu [Wed, 16 Mar 2022 09:44:34 +0000 (17:44 +0800)]
cephfs-mirror: fix typos in cephfs-mirror options

fix typos in options

Signed-off-by: wangxinyu <wangxinyu@inspur.com>
3 years agodocs/cephfs: fix typos
wangxinyu [Wed, 16 Mar 2022 09:39:21 +0000 (17:39 +0800)]
docs/cephfs: fix typos

fix typos

Signed-off-by: wangxinyu <wangxinyu@inspur.com>
3 years agocrimson/seastore: add unittest for OP_RMATTR 45271/head
chunmei-liu [Fri, 11 Mar 2022 06:23:25 +0000 (22:23 -0800)]
crimson/seastore: add unittest for OP_RMATTR

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
3 years agocrimson/seastore: add OP_RMATTR support
chunmei-liu [Fri, 4 Mar 2022 21:46:10 +0000 (13:46 -0800)]
crimson/seastore: add OP_RMATTR support

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45290 from nmshelke/fix-54375
Venky Shankar [Wed, 16 Mar 2022 03:53:25 +0000 (09:23 +0530)]
Merge pull request #45290 from nmshelke/fix-54375

mgr/volumes: the 'mode' should honor idempotent subvolume creation

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agocrimson: fix set_reply_versions missing 45403/head
Chunmei Liu [Wed, 16 Mar 2022 03:35:58 +0000 (20:35 -0700)]
crimson: fix set_reply_versions missing

Signed-off-by: Chunmei Liu <chunmei.liu@intel.com>
3 years agoqa/tests: fixed typo 45402/head
Yuri Weinstein [Tue, 15 Mar 2022 23:00:20 +0000 (16:00 -0700)]
qa/tests: fixed typo

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 years agocephfs/test_nfs: Add test for dynamic update export 44795/head
Ramana Raja [Fri, 11 Mar 2022 19:49:42 +0000 (14:49 -0500)]
cephfs/test_nfs: Add test for dynamic update export

Add test to verify that the NFS servers don't restart when the
access type of a CephFS NFS export is updated.

And check the NFS servers are restarted when the pseudo path of
a CephFS NFS export is updated.

Signed-off-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #45380 from ceph/wip-yuri-master-crontab
Josh Durgin [Tue, 15 Mar 2022 21:22:54 +0000 (14:22 -0700)]
Merge pull request #45380 from ceph/wip-yuri-master-crontab

qa/tests: added client upgrade suites to the crontab

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #45348 from liu-chunmei/seastore-op-version
Liu-Chunmei [Tue, 15 Mar 2022 19:48:55 +0000 (12:48 -0700)]
Merge pull request #45348 from liu-chunmei/seastore-op-version

crimson: add CEPH_OSD_OP_ASSERT_VER

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #44912 from xxhdx1985126/wip-fixed-kv-btree
Samuel Just [Tue, 15 Mar 2022 19:45:07 +0000 (12:45 -0700)]
Merge pull request #44912 from xxhdx1985126/wip-fixed-kv-btree

crimson/os/seastore: extract fixed kv btree implementation out of lba manager

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agoosd: Add snaptrim duration to pg dump stats. 45392/head
Sridhar Seshasayee [Mon, 14 Mar 2022 20:08:57 +0000 (01:38 +0530)]
osd: Add snaptrim duration to pg dump stats.

Add the snaptrim duration to the json formatted output of the pg dump
stats. Define methods for a PG to set the snaptrim begin time and then to
calculate the total time spent to trim all the objects for the snaps in
the snap_trimq for the PG.

Tests:
  - Librados C and C++ API tests to verify the time spent for a snaptrim
    operation on a PG. These tests use the self-managed snaps APIs.
  - Standalone tests to verify snaptrim duration using rados pool snaps.

Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
3 years agomon, osd: Add objects trimmed to pg dump stats.
Sridhar Seshasayee [Thu, 17 Feb 2022 11:38:36 +0000 (17:08 +0530)]
mon, osd: Add objects trimmed to pg dump stats.

Add a new column, OBJECTS_TRIMMED, to the pg dump stats that shows the
number of objects trimmed when a snap is removed.

When a pg splits, the stats from the parent pg is copied to the child
pg. In such a case, reset objects_trimmed to 0 for the child pg
(see PeeringState::split_into()). Otherwise, this will result in incorrect
stats to be shown for a child pg after the split operation.

Tests:
 - Librados C and C++ API tests to verify the number of objects trimmed
   during snaptrim operation. These tests use the self-managed snaps APIs.
 - Standalone tests to verify objects trimmed using rados pool snaps.

Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
3 years agoMerge pull request #45362 from josephsawaya/doc-dev
Adam King [Tue, 15 Mar 2022 18:43:16 +0000 (14:43 -0400)]
Merge pull request #45362 from josephsawaya/doc-dev

doc: Add note to osds_per_device description about dual-actuator devices

Reviewed-by: Adam King <adking@redhat.com>
3 years agoMerge pull request #45337 from amathuria/amathuri-add-scrub-duration
Yuri Weinstein [Tue, 15 Mar 2022 17:35:42 +0000 (10:35 -0700)]
Merge pull request #45337 from amathuria/amathuri-add-scrub-duration

osd/scrub: add scrub duration to pg stats

Reviewed-by: Sridhar Seshasayee <sseshasa@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agotest/librbd: add test to verify diff_iterate size 45285/head
Christopher Hoffman [Mon, 7 Mar 2022 18:35:56 +0000 (18:35 +0000)]
test/librbd: add test to verify diff_iterate size

Add test case to verify diff size values of image and multiple
snapshots.

Fixes: https://tracker.ceph.com/issues/54440
Signed-off-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #45078 from kamoltat/wip-ksirivad-fix-target-size-ratio-bound
Yuri Weinstein [Tue, 15 Mar 2022 16:22:58 +0000 (09:22 -0700)]
Merge pull request #45078 from kamoltat/wip-ksirivad-fix-target-size-ratio-bound

mon/MonCommands.h: fix target_size_ratio range

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agorgwlc: fix segfault resharding during lc 45391/head
Mark Kogan [Tue, 15 Mar 2022 13:06:56 +0000 (15:06 +0200)]
rgwlc: fix segfault resharding during lc

Fixes: https://tracker.ceph.com/issues/54363
Signed-off-by: Mark Kogan <mkogan@redhat.com>
3 years agoMerge pull request #45317 from Matan-B/wip-matanb-c-vstart-as
Samuel Just [Tue, 15 Mar 2022 03:20:05 +0000 (20:20 -0700)]
Merge pull request #45317 from Matan-B/wip-matanb-c-vstart-as

vstart.sh: disable pg-autoscaling for crimson-osd

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agocrimson: add CEPH_OSD_OP_ASSERT_VER 45348/head
chunmei-liu [Fri, 11 Mar 2022 07:36:43 +0000 (23:36 -0800)]
crimson: add CEPH_OSD_OP_ASSERT_VER

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45378 from tchaikov/wip-docs
Kefu Chai [Tue, 15 Mar 2022 01:37:47 +0000 (09:37 +0800)]
Merge pull request #45378 from tchaikov/wip-docs

doc/dev: s/tchaikov/ceph/

Reviewed-by:Anthony D'Atri <anthony.datri@gmail.com>

3 years agoMerge pull request #45343 from dang/wip-dang-bucket-quota
Daniel Gryniewicz [Mon, 14 Mar 2022 17:36:02 +0000 (13:36 -0400)]
Merge pull request #45343 from dang/wip-dang-bucket-quota

RGW - Get quota on OPs with a bucket

Reviewed-by Casey Bodley <cbodley@redhat.com>

3 years agoqa/tests: added client upgrade suites to the crontab 45380/head
Yuri Weinstein [Mon, 14 Mar 2022 15:28:37 +0000 (08:28 -0700)]
qa/tests: added client upgrade suites to the crontab

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 years agodoc/dev: s/tchaikov/ceph/ 45378/head
Kefu Chai [Mon, 14 Mar 2022 15:05:16 +0000 (23:05 +0800)]
doc/dev: s/tchaikov/ceph/

use the repo under ceph orgnization for the sake of better
consistency

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #45235 from tchaikov/rbd-std-variant
Ilya Dryomov [Mon, 14 Mar 2022 10:36:39 +0000 (11:36 +0100)]
Merge pull request #45235 from tchaikov/rbd-std-variant

librbd: s/boost::variant/std::variant/

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agocephfs/test_nfs: fix _write_to_read_only_export()
Ramana Raja [Fri, 11 Mar 2022 21:36:44 +0000 (16:36 -0500)]
cephfs/test_nfs: fix _write_to_read_only_export()

... to fail the test if write to read only export succeeded.

Signed-off-by: Ramana Raja <rraja@redhat.com>
3 years agomgr/nfs: Don't notify ganesha rados object
Ramana Raja [Wed, 26 Jan 2022 04:30:26 +0000 (23:30 -0500)]
mgr/nfs: Don't notify ganesha rados object

... to update export if the ganesha server is going to be
restarted. The ganesha server restart will reload the exports.

Signed-off-by: Ramana Raja <rraja@redhat.com>
3 years agomgr/nfs: allow dynamic update of cephfs nfs export
Ramana Raja [Tue, 25 Jan 2022 01:06:11 +0000 (20:06 -0500)]
mgr/nfs: allow dynamic update of cephfs nfs export

mgr/nfs module's apply_export() method is used to update an existing
CephFS NFS export. The method always restarted the ganesha service (
ganesha server cluster) after updating the export object and notifying
the ganesha servers to reload their exports. The restart temporarily
affected the clients connections of all the exports served by the
ganesha servers.

It is not always necessary to restart the ganesha servers. Only
updating the export ID, path, or FSAL block of a CephFS NFS export
requires a restart. So modify apply_export() to only restart the
ganesha servers for such export updates.

The mgr/nfs module creates a FSAL ceph user with read-only or
read-write path restricted MDS caps for each export. To change the
access type of the CephFS NFS export, the MDS caps of the export's FSAL
ceph user must also be changed. Ganesha can dynamically enforce an
export's access type changes, but Ceph server daemons can't dynamically
enforce changes in caps of the Ceph clients. To allow dynamic updates
of CephFS NFS exports, always create a FSAL Ceph user with read-write
path restricted MDS caps per export. Rely on the ganesha servers to
enforce the export access type changes for the NFS clients.

Fixes: https://tracker.ceph.com/issues/54025
Signed-off-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #44827 from ceph/wip-yuriw-crontab-master2
Yuri Weinstein [Sun, 13 Mar 2022 16:10:27 +0000 (09:10 -0700)]
Merge pull request #44827 from ceph/wip-yuriw-crontab-master2

qa/tests: added quincy and removed master runs

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Adam King adking@redhat.com
3 years agoMerge pull request #45276 from tchaikov/wip-rapidjson
Kefu Chai [Sun, 13 Mar 2022 12:38:35 +0000 (20:38 +0800)]
Merge pull request #45276 from tchaikov/wip-rapidjson

submodule: bump up RapidJSON

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agocrimson/os/seastore/btree: move 'with_btree*' from lba manager to fixed kv btree 44912/head
Xuehan Xu [Wed, 16 Feb 2022 09:46:58 +0000 (17:46 +0800)]
crimson/os/seastore/btree: move 'with_btree*' from lba manager to fixed kv btree

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore: extract lba nodes out of lba manager
Xuehan Xu [Tue, 8 Feb 2022 05:34:02 +0000 (13:34 +0800)]
crimson/os/seastore: extract lba nodes out of lba manager

Change lba nodes to general fixed-size-kv btree nodes

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>