Commit Graph

42427 Commits

Author SHA1 Message Date
John Spray
39cf071185 mds: fix MDLog shutdown process
We must join threads before completing ::shutdown,
because otherwise these threads might try to use
torn-down resources like the objecter.

The replay/recovery threads may be blocking on
journaler calls like wait_for_readable, so we
must signal them using Journaler::shutdown.  In
order for that to be safe, we must also protect
the assignment of ::journaler from the threads
using the mds_lock.

Fixes: #11985
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 16:19:25 +01:00
John Spray
f2daa19c8d mds: drop MDSIOContext on mds->stopping
`stopping` is true once the MDS has entered suicide().  During
this phase, any MDSIOContexts that are called (e.g. from objecter,
journaler) become no-ops.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 16:19:24 +01:00
John Spray
ae387b6577 mds: refine shutdown, add ::stopping
Add a ::stopping flag, set at start of suicide(),
that other contexts must inspect after taking
mds_lock.

This guards against the possibility of multiple
threads entering suicide, and more generally
against the possibility of other procedures
starting while we're in the middle of shutting down.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 16:19:24 +01:00
John Spray
8072b19d37 osdc/Journaler: add a shutdown() method
Because consumers may be blocked on the on_readable
condition, it is necessary for Journaler to have
an explicit shutdown method that fires the completion

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 16:19:24 +01:00
John Spray
fe23c6c5e6 common/Thread: print msg on join errors
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-25 16:19:24 +01:00
Kefu Chai
2ac566c823 Merge pull request #5058 from SUSE/wip-fix-release-notes-blooper
release-notes.txt: fix version number in section heading

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-25 20:54:37 +08:00
John Spray
3325f825ca Merge pull request #5073 from ceph/wip-12105
mds: update CInode::oldest_snap during migration

Reviewed-by: John Spray <john.spray@redhat.com>
2015-06-25 11:58:36 +01:00
Yan, Zheng
c9c655f6cb mds: update CInode::oldest_snap during migration
Fixes: #12105
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-06-25 16:38:36 +08:00
Yan, Zheng
b0dc97198a Merge pull request #5036 from ceph/wip-dirfrag-msgs
mds: tweak dirfrag asok messages
2015-06-25 14:56:48 +08:00
Ken Dreyer
b5e5778b20 Merge pull request #4981 from ceph/wip-fedora-build-fixes
Fix various issues with fedora (f21+) builds

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-24 14:04:16 -06:00
Ken Dreyer
075fb9f9e0 Merge pull request #4898 from SUSE/wip_ceph_spec_sharutils
ceph.spec.in:BuildRequires sharutils

Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Dan Mick <dmick@redhat.com>
2015-06-24 11:30:13 -06:00
Owen Synge
43c1784640 ceph.spec.in:BuildRequires sharutils
The uudecode binary is used to build Java-related components, and
uudecode is provided by the sharutils package on all supported
RPM platforms. When building with "--without=cephfs_java",
sharutils is not needed.

Thanks to Nathan Cutler <ncutler@suse.cz> for going into the
details with me.

On OBS without this patch we get the error message:

[  170s] -----------------------------------------------------------------
[  170s] ----- building ceph.spec (user abuild)
[  170s] -----------------------------------------------------------------
[  170s] -----------------------------------------------------------------
[  170s] + exec rpmbuild -ba --define '_srcdefattr (-,root,root)' --nosignature --define 'disturl obs://build.opensuse.org/home:osynge:ceph:wip:wip_obs_fedora/Fedora_20/c0bbbc1e62228ca956ac3d367edc4fba-master' /home/abuild/rpmbuild/SOURCES/ceph.spec
[  170s] error: Failed build dependencies:
[  170s]    sharutils is needed by ceph-1:2+git.1435043747.c1bd02c-1.1.x86_64

With this patch we can build fedora 22 and fedora 20 rpms fine.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-24 12:50:11 +02:00
John Spray
0ab4864cfb Merge pull request #5042 from ceph/wip-final-kw
mds/Migrator: don't use c++11 kw 'final' as var name

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-24 11:25:17 +01:00
Kefu Chai
6503282838 Merge pull request #5066 from ceph/wip-gitignore-add-ceph_perf_msgr
src/.gitignore: add ceph_perf_msgr_{server,client}

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-06-24 17:54:48 +08:00
Kefu Chai
b097e70732 Merge pull request #4840 from tchaikov/wip-11833-crush-dump-tree
mon: add an "osd crush dump tree" command

Reviewed-by: Min Chen <minchen@ubuntukylin.com>
Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
2015-06-24 17:39:49 +08:00
Kefu Chai
bdfad0d1a9 src/.gitignore: add ceph_perf_msgr_{server,client}
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-06-24 16:49:56 +08:00
Kefu Chai
22b225ea20 Merge pull request #4965 from xinxinsh/wip-12025
mon/OSDMonitor : error out if pgp_num > pg_num

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-24 15:53:43 +08:00
Kefu Chai
01634c89e2 Merge pull request #4923 from dachary/wip-make-check-verbosity
tests: display the output of failed make check runs

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-24 12:53:48 +08:00
Kefu Chai
86f71d2834 Merge pull request #5032 from guangyy/wip-cleanup
osd: remove duplicate checks

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-24 11:17:08 +08:00
Kefu Chai
290262e603 Merge pull request #5064 from vuhuong/wip-xio
xio: sync works

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-24 11:03:19 +08:00
xinxin shu
df539a7be2 move pgp_num, pg_num check to prepare_new_pool method
Signed-off-by: xinxin shu <xinxin.shu@intel.com>
2015-06-24 05:26:30 +08:00
Vu Pham
0f0c6f10bc xio: fix to work with commit 626360aa
Fix xio to work with commit 626360aa
"msg, ceph_osd: Support feature bits for all message type's local connection"

Signed-off-by: Vu Pham <vu@mellanox.com>
2015-06-23 14:25:20 -07:00
Vu Pham
47a844785a xio: fix to work with the merge of pull request #4707
fix xio to work with the merge of pull request
" Removed unnecessary inclusion of iostream in several files #4707"

Signed-off-by: Vu Pham <vu@mellanox.com>
2015-06-23 14:25:16 -07:00
Vu Pham
ec2afbb512 xio: sync to work with accellio v1.4
latest master's HEAD - tag v1-4

Signed-off-by: Vu Pham <vu@mellanox.com>
2015-06-23 14:25:13 -07:00
John Spray
fedafb6db2 Merge pull request #4747 from ceph/wip-damaged-fixes
MDS metadata damage handling

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-06-23 14:29:24 +01:00
Nathan Cutler
053ab4cf9b release-notes.txt: fix version number in section heading
From context it is obvious that this section is about upgrading from Giant, not
Firefly, so change the version number to match Giant.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-23 14:56:35 +02:00
Loic Dachary
228fd4c8e0 Merge pull request #5054 from SUSE/wip-release-notes-syntax
doc/release-notes.rst: add missing word to complete sentence

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-06-23 08:31:29 -04:00
Nathan Cutler
d5ff8a5dbf doc/release-notes.rst: add missing word to complete sentence
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-23 14:23:24 +02:00
Li Wang
c1bd02c978 Merge pull request #4792 from kylinstorage/wip-writeback-throttling-for-cache-tiering
Wip writeback throttling for cache tiering

This patch is to do write back throttling for cache tiering, which is similar to what the Linux kernel does for  page cache write back.  A paramter 'cache_target_dirty_high_ratio'  (default 0.6) is introduced as the high speed flushing threshold, while leave the 'cache_target_dirty_ratio' (default 0.4) to represent the low speed  threshold. The flush speed is controlled by limiting the parallelism of flushing. The maximum parallelism under low speed is half of the parallelism under high speed. If there is at least one PG such that the dirty ratio beyond the high threshold, full speed mode is entered; If there is no PG such that dirty ratio beyond the low threshold, idle mode is entered; In other cases, slow speed mode is entered.

Signed-off-by: Mingxin Liu <mingxinliu@ubuntukylin.com>
Reviewed-by: Li Wang <liwang@ubuntukylin.com>
Suggested-by: Nick Fisk <nick@fisk.me.uk>
Tested-by: Kefu Chai <kchai@redhat.com>
2015-06-23 15:15:47 +08:00
Samuel Just
1dce70efde Merge pull request #4290 from XinzeChi/wip-filestore-lat
osd: dout more log info to track io request

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-06-22 16:19:40 -07:00
Josh Durgin
cbd172b64e Merge pull request #5049 from ceph/wip-librbd-reduce-tests
librbd: reduce unit test execution time

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-06-22 15:27:45 -07:00
Samuel Just
f4391a905e Merge pull request #3973 from XinzeChi/wip-scrub-pending
osd: check pending or active scrub before sched_scrub

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-22 15:17:46 -07:00
David Zafman
2bc0fc84c5 Merge pull request #4847 from ceph/wip-11661
osd: Improve feature bit handling and remove ancient checking including CHUNKY_SCRUB

Reviewed-by: Sage Weil <sweil@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2015-06-22 14:32:56 -07:00
Jason Dillaman
d261641e68 tests: reduce duplicate librbd unit test case coverage
The test run for RBD_FEATURES=13 is fully covered by
RBD_FEATURES=45 and the pre deep-flatten cases are covered
by RBD_FEATURES=0 and 1.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-06-22 17:26:15 -04:00
Jason Dillaman
7354d25f56 lockdep: do not automatically collect all backtraces
It is expensive to collect backtraces every time a lock is
checked in order to provide cycle backtraces.  The backtraces
can be forced on for specific locks or globally via the new
config option "lockdep_force_backtrace".

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-06-22 17:25:45 -04:00
Yehuda Sadeh
488833e977 Merge pull request #5041 from oritwas/wip-12095
rgw: force content_type for swift bucket stats request

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-06-22 13:47:21 -07:00
Jason Dillaman
e2cae05b3b tests: move librbd valgrind test to teuthology
This test can take up to 20 minutes to execute, which is an order of
magnitude longer than other unit tests.  This is slowing down the
build bots.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-06-22 14:39:01 -04:00
Orit Wasserman
da259e4da1 rgw: force content_type for swift bucket stats request
Fixes: 12095

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2015-06-22 13:51:49 +02:00
John Spray
adb05c9d9d mds/Migrator: don't use c++11 kw 'final' as var name
If for no other reason than that it looks weird
in an editor.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-22 12:19:46 +01:00
John Spray
439faebfed mds: tweak dirfrag asok messages
Signed-off-by: John Spray <john.spray@redhat.com>
2015-06-22 11:40:47 +01:00
Guang G Yang
f028374971 osd: remove duplicate checks
Within pg_has_reset_since, it checkes if the PG is being deleted or not,
no need a duplicate check

Signed-off-by: Guang Yang <yguang@yahoo-inc.com>
2015-06-20 00:17:24 +00:00
David Zafman
0b2bab460c ceph_osd: Add required feature bits related to this branch to osd_required mask
Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
949b148dba osd: CEPH_FEATURE_INDEP_PG_MAP feature now required
Feature present since at least the Dumpling release.
A later commit will add it to the osd_required mask

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
c982e553c6 osd: CEPH_FEATURE_OSD_PACKED_RECOVERY feature now required
Feature present since at least the Dumpling release.
A later commit will add it to the osd_required mask

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
77b09ed442 osd: CEPH_FEATURE_RECOVERY_RESERVATION feature now required
Feature present since at least the Dumpling release.
A later commit will add it to the osd_required mask

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
5405e46a4f osd: CEPH_FEATURE_BACKFILL_RESERVATION feature now required
Feature present since at least the Dumpling release.
A later commit will add it to the osd_required mask

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
7a10a7e196 osd: CEPH_FEATURE_CHUNKY_SCRUB feature now required
Feature present since at least the Dumpling release.
A later commit will add it to the osd_required mask

Fixes: #11661

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
626360aab0 msg, ceph_osd: Support feature bits for all message type's local connection
Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 17:00:03 -07:00
David Zafman
de041241ad osd: Add tracking of acting_features and upacting_features
Use most appropriate feature intersection depending on context

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 14:09:09 -07:00
David Zafman
6d28cb9465 osd: Fix peer_features to include self
This should have no practical effect unless we could have
features getting turned off in a later release, since we
can assume any features being checked for are supported locally.

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-06-19 11:52:03 -07:00