]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoosd/OSDMap: bump encoding version for require_min_compat_client 15046/head
Yan, Zheng [Thu, 11 May 2017 09:57:02 +0000 (17:57 +0800)]
osd/OSDMap: bump encoding version for require_min_compat_client

Otherwise, OSDMap::decode() throws expcetion when decoding old
version osdmap

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
8 years agoMerge pull request #14743 from ukernel/wip-19635
John Spray [Thu, 11 May 2017 09:46:41 +0000 (10:46 +0100)]
Merge pull request #14743 from ukernel/wip-19635

mds: issue new caps when sending reply to client

Reviewed-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #14704 from batrick/i19589
John Spray [Thu, 11 May 2017 09:12:22 +0000 (10:12 +0100)]
Merge pull request #14704 from batrick/i19589

mds: fix mantle script to not fail for last rank

Reviewed-by: Michael Sevilla <mikesevilla3@gmail.com>
8 years agoMerge pull request #14921 from batrick/ptrwaiter-balance
Yan, Zheng [Thu, 11 May 2017 06:10:12 +0000 (14:10 +0800)]
Merge pull request #14921 from batrick/ptrwaiter-balance

mds: relocate PTRWAITER put near get

8 years agoMerge pull request #14598 from batrick/mds-balancer-pin
Yan, Zheng [Thu, 11 May 2017 03:56:34 +0000 (11:56 +0800)]
Merge pull request #14598 from batrick/mds-balancer-pin

mds: support export pinning on directories

8 years agomds: delay export until dir is stable 14598/head
Patrick Donnelly [Wed, 10 May 2017 20:56:06 +0000 (16:56 -0400)]
mds: delay export until dir is stable

This catches an assertion failure due to exports on unjournaled directories:

    2017-05-10 12:45:18.193640 7eff65a04700  7 mds.0.migrator export_dir [dir 10000000003 /a/ [2,head] auth pv=3 v=1 cv=0/0 ap=1+2+2 state=1073742082|complete f()->f(v0 m2017-05-10 12:45:14.977151 1=0+1) n()->n(v0 rc2017-05-10 12:45:14.977151 1=0+1) hs=0+1,ss=0+0 | child=1 authpin=1 0x55ef655de000] to 1
    2017-05-10 12:45:18.193654 7eff65a04700 15 mds.0.18 hit export target 10 @ 2017-05-10 12:45:18.193653
    2017-05-10 12:45:18.193661 7eff65a04700 10 mds.0.cache.dir(10000000003) auth_pin by 0x55ef650cc130 on [dir 10000000003 /a/ [2,head] auth pv=3 v=1 cv=0/0 ap=2+2+2 state=1073742082|complete f()->f(v0 m2017-05-10 12:45:14.977151 1=0+1) n()->n(v0 rc2017-05-10 12:45:14.977151 1=0+1) hs=0+1,ss=0+0 | child=1 authpin=1 0x55ef655de000] count now 2 + 2
    2017-05-10 12:45:18.193701 7eff65a04700  7 mds.0.cache request_start_internal request(mds.0:4) op 5377
    2017-05-10 12:45:18.193708 7eff65a04700  7 mds.0.migrator dispatch_export_dir request(mds.0:4)
    2017-05-10 12:45:18.198281 7eff66205700 20 mgrc operator() 234 counters, of which 0 new
    2017-05-10 12:45:18.198294 7eff66205700 20 mgrc send_report encoded 2006 bytes
    2017-05-10 12:45:18.198298 7eff66205700  1 -- 127.0.0.1:6825/693985647 --> 127.0.0.1:6826/1025 -- mgrreport(+0-0 packed 2006) v2 -- 0x55ef655abe00 con 0
    2017-05-10 12:45:18.198364 7eff6a9ab700 10 _calc_signature seq 14 front_crc_ = 2388339344 middle_crc = 0 data_crc = 0 sig = 5026349537430007662
    2017-05-10 12:45:18.198376 7eff6a9ab700 20 Putting signature in client message(seq # 14): sig = 5026349537430007662
    2017-05-10 12:45:18.198411 7eff65a04700 -1 /home/pdonnell/ceph/src/mds/MDCache.cc: In function 'void MDCache::make_trace(std::vector<CDentry*>&, CInode*)' thread 7eff65a04700 time 2017-05-10 12:45:18.194136
    /home/pdonnell/ceph/src/mds/MDCache.cc: 8225: FAILED assert(parent)

     ceph version 12.0.1-2198-ge757c02 (e757c025fa3270b12fb2fca17cf159fa1bd72747)
     1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x102) [0x55ef5b780f02]
     2: (MDCache::make_trace(std::vector<CDentry*, std::allocator<CDentry*> >&, CInode*)+0x1cb) [0x55ef5b4fa12b]
     3: (Migrator::get_export_lock_set(CDir*, std::set<SimpleLock*, std::less<SimpleLock*>, std::allocator<SimpleLock*> >&)+0x55) [0x55ef5b5e8215]
     4: (Migrator::dispatch_export_dir(boost::intrusive_ptr<MDRequestImpl>&, int)+0xa74) [0x55ef5b5f72d4]
     5: (Migrator::export_dir(CDir*, int)+0x9ca) [0x55ef5b5ea75a]
     6: (MDBalancer::handle_export_pins()+0x7b4) [0x55ef5b61ab24]
     7: (MDBalancer::tick()+0x1e8) [0x55ef5b61b748]
     8: (MDSRankDispatcher::tick()+0x5f1) [0x55ef5b44bdb1]
     9: (Context::complete(int)+0x9) [0x55ef5b43bcc9]
     10: (SafeTimer::timer_thread()+0x452) [0x55ef5b77dd52]
     11: (SafeTimerThread::entry()+0xd) [0x55ef5b77f15d]
     12: (()+0x76ba) [0x7eff6d4bb6ba]
     13: (clone()+0x6d) [0x7eff6c52782d]

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #15030 from chardan/jfw-wip-halflife_atomic_t-fix-compare_exchange...
Jason Dillaman [Wed, 10 May 2017 14:04:45 +0000 (10:04 -0400)]
Merge pull request #15030 from chardan/jfw-wip-halflife_atomic_t-fix-compare_exchange_weak

tools: change compare_exchange_weak to compare_exchange_strong

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14975 from runsisi/wip-io-logging
Jason Dillaman [Wed, 10 May 2017 14:00:56 +0000 (10:00 -0400)]
Merge pull request #14975 from runsisi/wip-io-logging

librbd: cleanup logging code under librbd/io

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14905 from johnzzpcrystal/aio
Sage Weil [Wed, 10 May 2017 13:16:13 +0000 (08:16 -0500)]
Merge pull request #14905 from johnzzpcrystal/aio

test/fsx:  Remove the dead code associated with aio backend

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14911 from ovh/bp-small-enc-eradication
Sage Weil [Wed, 10 May 2017 13:15:16 +0000 (08:15 -0500)]
Merge pull request #14911 from ovh/bp-small-enc-eradication

os/bluestore: use denc for varint encoding

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14957 from ovh/bp-crc-cache-miss-counter
Sage Weil [Wed, 10 May 2017 13:14:27 +0000 (08:14 -0500)]
Merge pull request #14957 from ovh/bp-crc-cache-miss-counter

buffer, osd: add missing crc cache miss perf counter

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14996 from xiexingguo/wip-fix-dump_basic
Sage Weil [Wed, 10 May 2017 13:14:09 +0000 (08:14 -0500)]
Merge pull request #14996 from xiexingguo/wip-fix-dump_basic

mon/PGMap.cc: fix "osd_epochs" section of dump_basic

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #15003 from badone/wip-redundant-headers
Sage Weil [Wed, 10 May 2017 13:13:50 +0000 (08:13 -0500)]
Merge pull request #15003 from badone/wip-redundant-headers

common: Remove redundant includes

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #15013 from TsaiJin/wip-pg-lock-cleanup
Sage Weil [Wed, 10 May 2017 13:12:48 +0000 (08:12 -0500)]
Merge pull request #15013 from TsaiJin/wip-pg-lock-cleanup

osd/PG.cc: unify the call of checking whether lock is held

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14937 from SpandanKumarSahu/bug#17453
Sage Weil [Wed, 10 May 2017 12:21:02 +0000 (07:21 -0500)]
Merge pull request #14937 from SpandanKumarSahu/bug#17453

mgr: remove non-existent MDS daemons from FSMap

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agolibrbd: cleanup logging code under librbd/io 14975/head
runsisi [Fri, 5 May 2017 11:01:37 +0000 (19:01 +0800)]
librbd: cleanup logging code under librbd/io

Signed-off-by: runsisi <runsisi@zte.com.cn>
8 years agotools: change compare_exchange_weak to compare_exchange_strong 15030/head
Jesse Williamson [Wed, 10 May 2017 11:04:25 +0000 (04:04 -0700)]
tools: change compare_exchange_weak to compare_exchange_strong

On non x86 platforms without a dedicated compare-exchange instruction, std::compare_exchange_weak()
could fail.

Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
8 years agoMerge pull request #15016 from dachary/wip-19888-ceph-disk
Loic Dachary [Wed, 10 May 2017 08:04:17 +0000 (10:04 +0200)]
Merge pull request #15016 from dachary/wip-19888-ceph-disk

ceph-disk: separate ceph-osd --check-needs-* logs

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
8 years agoMerge pull request #14854 from ceph/wip-reduce-smoke
Sage Weil [Tue, 9 May 2017 17:38:21 +0000 (12:38 -0500)]
Merge pull request #14854 from ceph/wip-reduce-smoke

qa/suites: Reduce fs combination tests for smoke, use bluestore

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14959 from liewegas/wip-crush-compat
Sage Weil [Tue, 9 May 2017 16:42:30 +0000 (11:42 -0500)]
Merge pull request #14959 from liewegas/wip-crush-compat

mon,osd: add require_min_compat_client setting to enforce and clarify client compatibility

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agotest/cli: fix cli tests 14959/head
Sage Weil [Tue, 9 May 2017 16:34:15 +0000 (11:34 -0500)]
test/cli: fix cli tests

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: 'osd set-require-min-compat-client ...'
Sage Weil [Thu, 4 May 2017 18:35:45 +0000 (13:35 -0500)]
mon/OSDMonitor: 'osd set-require-min-compat-client ...'

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa/releases/luminous: set require_min_compat_client after upgrade
Sage Weil [Mon, 8 May 2017 21:45:49 +0000 (17:45 -0400)]
qa/releases/luminous: set require_min_compat_client after upgrade

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa/suites: set initial require_min_compat_client
Sage Weil [Thu, 4 May 2017 18:11:27 +0000 (13:11 -0500)]
qa/suites: set initial require_min_compat_client

For cases where we are selecting crush tunables beyond the default
min of hammer.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDMap: add CRUSH_CHOOSEARGS feature bit
Sage Weil [Thu, 4 May 2017 17:41:14 +0000 (12:41 -0500)]
osd/OSDMap: add CRUSH_CHOOSEARGS feature bit

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocrush/CrushWrapper: has_[incompat_]chooseargs()
Sage Weil [Thu, 4 May 2017 17:40:42 +0000 (12:40 -0500)]
crush/CrushWrapper: has_[incompat_]chooseargs()

We'll use this for feature bit compat checks with clients and osds.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoinclude/ceph_features: rename OSDMAP_REMAP -> OSDMAP_PG_UPMAP
Sage Weil [Thu, 4 May 2017 17:33:59 +0000 (12:33 -0500)]
include/ceph_features: rename OSDMAP_REMAP -> OSDMAP_PG_UPMAP

Missed this with the remap -> upmap rename a few weeks back.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: prevent injection of crush map violating require_min_compat_client
Sage Weil [Thu, 4 May 2017 17:24:27 +0000 (12:24 -0500)]
mon/OSDMonitor: prevent injection of crush map violating require_min_compat_client

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: drop allow_pg_upmap option; use require_min_compat_client instead
Sage Weil [Thu, 4 May 2017 17:20:33 +0000 (12:20 -0500)]
mon/OSDMonitor: drop allow_pg_upmap option; use require_min_compat_client instead

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: switch primary-{affinity,temp} checks to require_min_compat_client
Sage Weil [Thu, 4 May 2017 17:19:13 +0000 (12:19 -0500)]
mon/OSDMonitor: switch primary-{affinity,temp} checks to require_min_compat_client

If require_min_compat_client is set (we've finished luminous upgrade), use
that to enforce primary_temp and primary_affinity settings.  Otherwise,
use the legacy config option.

Drop the assert in update_from_paxos.

After luminous we can remove the config options entirely.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: set OSDMap require_min_compat_client on upgrade
Sage Weil [Thu, 4 May 2017 17:11:23 +0000 (12:11 -0500)]
mon/OSDMonitor: set OSDMap require_min_compat_client on upgrade

Fill in this field once require_luminous is set.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocrush: move default tunables up to hammer
Sage Weil [Thu, 4 May 2017 17:07:35 +0000 (12:07 -0500)]
crush: move default tunables up to hammer

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: default require_min_compat_client to hammer for new clusters
Sage Weil [Thu, 4 May 2017 17:06:37 +0000 (12:06 -0500)]
mon/OSDMonitor: default require_min_compat_client to hammer for new clusters

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDmap: add require_min_compat_client field
Sage Weil [Thu, 4 May 2017 17:04:19 +0000 (12:04 -0500)]
osd/OSDmap: add require_min_compat_client field

This is a persistent record of the compatibility for old clients that
we will enforce.  Once set, the mon will eventually prevent newer features
of the OSDMap or CRUSH maps from being used if they violate this
requirement.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDMap: get_min_compat_client()
Sage Weil [Thu, 4 May 2017 17:02:28 +0000 (12:02 -0500)]
osd/OSDMap: get_min_compat_client()

Calculate the oldest client we allow to connect.  Provide both a release
name (e.g., firefly) and a version string (e.g., "0.80").

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #15015 from smithfarm/wip-sphinx
Nathan Cutler [Tue, 9 May 2017 15:17:23 +0000 (17:17 +0200)]
Merge pull request #15015 from smithfarm/wip-sphinx

build/ops: rpm: fix python-Sphinx package name for SUSE

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
8 years agoMerge pull request #14952 from tchaikov/wip-19813
Sage Weil [Tue, 9 May 2017 15:01:12 +0000 (10:01 -0500)]
Merge pull request #14952 from tchaikov/wip-19813

mgr: do the shutdown in the right order

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14478 from theanalyst/doc/dev/ccache
Kefu Chai [Tue, 9 May 2017 12:46:29 +0000 (20:46 +0800)]
Merge pull request #14478 from theanalyst/doc/dev/ccache

doc: dev add a note about ccache

Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14886 from badone/wip-async-osd-scrub-sleep
Kefu Chai [Tue, 9 May 2017 12:27:17 +0000 (20:27 +0800)]
Merge pull request #14886 from badone/wip-async-osd-scrub-sleep

osd: Implement asynchronous scrub sleep

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agoMerge pull request #14985 from johnzzpcrystal/store_errno
Kefu Chai [Tue, 9 May 2017 12:26:24 +0000 (20:26 +0800)]
Merge pull request #14985 from johnzzpcrystal/store_errno

msg/async/net_handler: errno should be stored before calling next function

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agoceph-disk: separate ceph-osd --check-needs-* logs 15016/head
Loic Dachary [Tue, 9 May 2017 10:32:51 +0000 (12:32 +0200)]
ceph-disk: separate ceph-osd --check-needs-* logs

It is using the OSD id zero but have nothing to do with OSD zero and
this is confusing to the user. The log themselves do not need to be kept
around and are stored in the run directory so that they can be disposed
of after reboot.

Fixes: http://tracker.ceph.com/issues/19888
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agobuild/ops: rpm: fix python-Sphinx package name for SUSE 15015/head
Nathan Cutler [Tue, 9 May 2017 09:42:58 +0000 (11:42 +0200)]
build/ops: rpm: fix python-Sphinx package name for SUSE

This commit moves "BuildRequires: python-sphinx" down to the RH/CentOS/Fedora
distro conditional and adds a "BuildRequires: python-Sphinx" to the SUSE
conditional.

Signed-off-by: Jan Matejek <jmatejek@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoosd/PG.cc: unify the call of checking whether lock is held 15013/head
Jin Cai [Tue, 9 May 2017 09:02:13 +0000 (17:02 +0800)]
osd/PG.cc: unify the call of checking whether lock is held

Signed-off-by: Jin Cai <caijin.caij@alibaba-inc.com>
8 years agodoc: dev add a note about ccache 14478/head
Abhishek Lekshmanan [Wed, 12 Apr 2017 13:08:00 +0000 (15:08 +0200)]
doc: dev add a note about ccache

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
8 years agomds: fix dir auth calculation in CDir::merge
Yan, Zheng [Tue, 9 May 2017 08:28:13 +0000 (16:28 +0800)]
mds: fix dir auth calculation in CDir::merge

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
8 years agomds: properly cleanup export states
Yan, Zheng [Tue, 9 May 2017 08:26:48 +0000 (16:26 +0800)]
mds: properly cleanup export states

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
8 years agobuffer, osd: add missing crc cache miss perf counter 14957/head
Piotr Dałek [Tue, 9 May 2017 07:03:22 +0000 (09:03 +0200)]
buffer, osd: add missing crc cache miss perf counter

This helps tracking if/how effective is the CRC cache in bufferlists.

Signed-off-by: Piotr Dałek <piotr.dalek@corp.ovh.com>
8 years agomds: update export targets even when not active
Patrick Donnelly [Tue, 9 May 2017 02:26:48 +0000 (22:26 -0400)]
mds: update export targets even when not active

Problem caught test_migration_on_shutdown. Migration could not proceed because
export_targets were not being updated.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #14984 from dmick/wip-osd-dup
Dan Mick [Tue, 9 May 2017 02:48:27 +0000 (19:48 -0700)]
Merge pull request #14984 from dmick/wip-osd-dup

test/osd/osd-dup.sh: lower wb fd throttle limits

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14907 from ukernel/wip-19820 15005/head
Yan, Zheng [Tue, 9 May 2017 02:34:00 +0000 (10:34 +0800)]
Merge pull request #14907 from ukernel/wip-19820

ceph-fuse: use user space permission check by default

8 years agocommon: Remove redundant includes 15003/head
Brad Hubbard [Mon, 8 May 2017 23:54:30 +0000 (09:54 +1000)]
common: Remove redundant includes

Fixes: http://tracker.ceph.com/issues/19883 (Partially)
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
8 years agoMerge pull request #14976 from trociny/wip-19871
Jason Dillaman [Mon, 8 May 2017 23:41:40 +0000 (19:41 -0400)]
Merge pull request #14976 from trociny/wip-19871

rbd-nbd: relax size check for newer kernel versions

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14656 from chardan/jfw-wip-halflife_atomic_t-rodan
Jason Dillaman [Mon, 8 May 2017 23:41:02 +0000 (19:41 -0400)]
Merge pull request #14656 from chardan/jfw-wip-halflife_atomic_t-rodan

rbd, librbd: migrate atomic_t to std::atomic

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14925 from fangyuxiangGL/fix_unneccesary_write
Matt Benjamin [Mon, 8 May 2017 19:52:00 +0000 (15:52 -0400)]
Merge pull request #14925 from fangyuxiangGL/fix_unneccesary_write

rgw: don't do unneccesary write if buffer with zero length

8 years agoMerge pull request #14990 from wjin/fix
Sage Weil [Mon, 8 May 2017 16:34:48 +0000 (11:34 -0500)]
Merge pull request #14990 from wjin/fix

osd: clean nonused work queue

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14962 from liewegas/wip-denc-dump
Sage Weil [Mon, 8 May 2017 16:33:31 +0000 (11:33 -0500)]
Merge pull request #14962 from liewegas/wip-denc-dump

include/denc: support ENCODE_DUMP

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agoMerge pull request #14995 from SUSE/wip-mgr-rest-exit
Kefu Chai [Mon, 8 May 2017 16:18:55 +0000 (00:18 +0800)]
Merge pull request #14995 from SUSE/wip-mgr-rest-exit

pybind/mgr/rest: completely terminate cherrypy in shutdown

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoinclude/denc: clean up ENCODE_DUMP a bit 14962/head
Sage Weil [Mon, 8 May 2017 15:54:54 +0000 (11:54 -0400)]
include/denc: clean up ENCODE_DUMP a bit

- PATH_MAX for string
- ENCODE_DUMP -> ENCODE_DUMP_PATH
- some comments!

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14999 from ivancich/wip-mod-git-subtree-README
Sage Weil [Mon, 8 May 2017 14:22:38 +0000 (09:22 -0500)]
Merge pull request #14999 from ivancich/wip-mod-git-subtree-README

doc: Re-word the warnings about using git subtrees.

8 years agodoc: Re-word the warnings about using git subtrees. 14999/head
J. Eric Ivancich [Tue, 2 May 2017 20:31:11 +0000 (16:31 -0400)]
doc: Re-word the warnings about using git subtrees.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
8 years agorbd_mirror: migrate std::atomic<unsigned> to std::atomic<bool> 14656/head
Jesse Williamson [Wed, 19 Apr 2017 09:58:35 +0000 (02:58 -0700)]
rbd_mirror: migrate std::atomic<unsigned> to std::atomic<bool>

Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
8 years agolibrbd: migrate atomic_t to std::atomic<>
Jesse Williamson [Sun, 16 Apr 2017 08:31:16 +0000 (01:31 -0700)]
librbd: migrate atomic_t to std::atomic<>

Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
8 years agotools (rbd*): migrate atomic_t to std::atomic<>
Jesse Williamson [Mon, 24 Apr 2017 07:43:23 +0000 (00:43 -0700)]
tools (rbd*): migrate atomic_t to std::atomic<>

Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
8 years agomon/PGMap.cc: fix "osd_epochs" section of dump_basic 14996/head
xie xingguo [Mon, 8 May 2017 13:43:52 +0000 (21:43 +0800)]
mon/PGMap.cc: fix "osd_epochs" section of dump_basic

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agopybind/mgr/rest: completely terminate cherrypy in shutdown 14995/head
Tim Serong [Mon, 8 May 2017 13:03:55 +0000 (23:03 +1000)]
pybind/mgr/rest: completely terminate cherrypy in shutdown

cherrypy.engine.stop() doesn't actually completely kill cherrypy,
which means cherrypy.engine.block() never returns, so this module's
thread never completes cleanly.

Signed-off-by: Tim Serong <tserong@suse.com>
8 years agoMerge pull request #14956 from liewegas/wip-bdev-ioc-lock
Haomai Wang [Mon, 8 May 2017 12:14:31 +0000 (20:14 +0800)]
Merge pull request #14956 from liewegas/wip-bdev-ioc-lock

os/bluestore: fix use after free race with aio_wait

Reviewed-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Jianpeng Ma <jianpeng@intel.com>
8 years agoosd: clean nonused work queue 14990/head
Wei Jin [Mon, 8 May 2017 07:17:40 +0000 (15:17 +0800)]
osd: clean nonused work queue

it was restructured by 3cc48278bf0ee5c9535d04b60a661f988c50063b

Signed-off-by: Wei Jin <wjin.cn@gmail.com>
8 years agoMerge pull request #14919 from tchaikov/wip-19825
Sage Weil [Mon, 8 May 2017 03:26:03 +0000 (22:26 -0500)]
Merge pull request #14919 from tchaikov/wip-19825

mon: check is_shutdown() in timer callbacks

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14968 from TsaiJin/wip-lock-pg-when-scrub-available
Sage Weil [Mon, 8 May 2017 03:23:55 +0000 (22:23 -0500)]
Merge pull request #14968 from TsaiJin/wip-lock-pg-when-scrub-available

osd: sched_scrub() lock pg only if all scrubbing conditions are fulfilled

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Pan Liu <liupan1111@gmail.com>
8 years agomds: check mdsdir against dest
Patrick Donnelly [Sat, 6 May 2017 18:06:06 +0000 (14:06 -0400)]
mds: check mdsdir against dest

Introduced by aebc1caee86b70f51d7d2d16f25f0ee9e4119f43. Found by Zheng.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agomgr: do the shutdown in the right order 14952/head
Kefu Chai [Thu, 4 May 2017 08:50:08 +0000 (16:50 +0800)]
mgr: do the shutdown in the right order

Fixes: http://tracker.ceph.com/issues/19813
Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agomgr: do not use pointers for MgrStandby members
Kefu Chai [Thu, 4 May 2017 07:39:55 +0000 (15:39 +0800)]
mgr: do not use pointers for MgrStandby members

it's simpler and easier to manage the life cycle of them this way.

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14970 from dachary/wip-crush-documentation
Loic Dachary [Sat, 6 May 2017 06:09:03 +0000 (08:09 +0200)]
Merge pull request #14970 from dachary/wip-crush-documentation

crush: update documentation for negative choose step

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agomds: handle aux subtree when splitting/merging dirfrag
Yan, Zheng [Fri, 5 May 2017 03:35:16 +0000 (11:35 +0800)]
mds: handle aux subtree when splitting/merging dirfrag

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
8 years agomsg/async/net_handler: errno should be stored before next calling 14985/head
Zhou Zhengping [Fri, 5 May 2017 23:39:27 +0000 (07:39 +0800)]
msg/async/net_handler: errno should be stored before next calling

Signed-off-by: Zhou Zhengping <johnzzpcrystal@gmail.com>
8 years agomds: call maybe_export_pin on all fetched dirfrags
Patrick Donnelly [Fri, 5 May 2017 23:10:53 +0000 (19:10 -0400)]
mds: call maybe_export_pin on all fetched dirfrags

If the dirfrag is pinned to the current mds, it needs to be made into an aux
subtree.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agomds: handle export pin on unjournaled directory
Patrick Donnelly [Fri, 5 May 2017 23:10:27 +0000 (19:10 -0400)]
mds: handle export pin on unjournaled directory

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoqa: improve time handling for test_exports test
Patrick Donnelly [Fri, 5 May 2017 23:00:31 +0000 (19:00 -0400)]
qa: improve time handling for test_exports test

Also catches corner-case found by Zheng where an unjournaled directory will
cause export pinning to fail because it cannot be made a subtree until its
parent is stable.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #14979 from liewegas/wip-19874
Sage Weil [Fri, 5 May 2017 22:42:38 +0000 (17:42 -0500)]
Merge pull request #14979 from liewegas/wip-19874

mon: fix prime_pg_temp overrun
common/Finisher: fix uninitialized variable warning

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14958 from ovh/bp-fix-finisher-warning
Sage Weil [Fri, 5 May 2017 22:42:26 +0000 (17:42 -0500)]
Merge pull request #14958 from ovh/bp-fix-finisher-warning

common/Finisher: fix uninitialized variable warning
common/Finisher: fix uninitialized variable warning

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14793 from dmick/wip-prio-and-daemonperf
Sage Weil [Fri, 5 May 2017 22:41:55 +0000 (17:41 -0500)]
Merge pull request #14793 from dmick/wip-prio-and-daemonperf

ceph: perfcounter priorities and daemonperf updates to use them

8 years agoMerge pull request #14510 from liewegas/wip-bluefs-sync-write
Sage Weil [Fri, 5 May 2017 22:41:22 +0000 (17:41 -0500)]
Merge pull request #14510 from liewegas/wip-bluefs-sync-write

os/bluestore/BlueFS: add bluefs_sync_write option

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoMerge pull request #14305 from liewegas/wip-zipkin-partial
Sage Weil [Fri, 5 May 2017 22:40:58 +0000 (17:40 -0500)]
Merge pull request #14305 from liewegas/wip-zipkin-partial

osd: zipkin tracing

8 years agomessages/MCommand: fix type on decode
Sage Weil [Fri, 5 May 2017 20:48:25 +0000 (16:48 -0400)]
messages/MCommand: fix type on decode

Wow, this has been broken since v0.38, but apparently
the message never made it into the object corpus so
we never noticed!

In reality the bug is harmless: decode_message() will
set_header which clobbers whatever version the default
ctor fills in, so this only affects ceph-dencoder's
test.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoceph-object-corpus: kraken objects
Sage Weil [Fri, 5 May 2017 20:36:05 +0000 (16:36 -0400)]
ceph-object-corpus: kraken objects

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agotest/osd/osd-dup.sh: lower wb fd throttle limits 14984/head
Dan Mick [Fri, 5 May 2017 21:47:14 +0000 (14:47 -0700)]
test/osd/osd-dup.sh: lower wb fd throttle limits

osd-dup.sh was losing OSDs to EMFILE, mostly on arm64 (not clear why).

Signed-off-by: Dan Mick <dan.mick@redhat.com>
8 years agoMerge pull request #14981 from cbodley/wip-rgw-bi-list-plain
Orit Wasserman [Fri, 5 May 2017 21:04:11 +0000 (00:04 +0300)]
Merge pull request #14981 from cbodley/wip-rgw-bi-list-plain

cls/rgw: list_plain_entries() stops before bi_log entries
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
8 years agotest/encoding/generate-corpus-objects: fix typo
Sage Weil [Fri, 5 May 2017 20:31:02 +0000 (16:31 -0400)]
test/encoding/generate-corpus-objects: fix typo

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocls/rgw: list_plain_entries() stops before bi_log entries 14981/head
Casey Bodley [Fri, 5 May 2017 18:56:40 +0000 (14:56 -0400)]
cls/rgw: list_plain_entries() stops before bi_log entries

list_plain_entries() was using encode_obj_versioned_data_key() to set
its end_key, which gives a prefix of BI_BUCKET_OBJ_INSTANCE_INDEX[=2]

that range between start_key and end_key would not only span the
BI_BUCKET_OBJS_INDEX[=0] prefixes, but BI_BUCKET_LOG_INDEX[=1] prefixes
as well. this can result in list_plain_entries() trying and failing to
decode a rgw_bi_log_entry as a rgw_bucket_dir_entry

Fixes: http://tracker.ceph.com/issues/19876
Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agotest/encoding/generate-corpus-objects.sh: simplify object corpus population
Sage Weil [Fri, 5 May 2017 13:19:23 +0000 (09:19 -0400)]
test/encoding/generate-corpus-objects.sh: simplify object corpus population

Script that generates corpus objects.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa/workunits/rgw/run-s3tests.sh: run s3-tests
Sage Weil [Fri, 5 May 2017 19:19:05 +0000 (15:19 -0400)]
qa/workunits/rgw/run-s3tests.sh: run s3-tests

This works out of the box with a vstart environment and

 RGW=1 ../src/vstart.sh -n -l
 PATH=bin:$PATH ../qa/workunits/rgw/run-s3tests.sh

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14051 from SpandanKumarSahu/bug#17195
Jason Dillaman [Fri, 5 May 2017 18:40:55 +0000 (14:40 -0400)]
Merge pull request #14051 from SpandanKumarSahu/bug#17195

rbd: stop indefinite thread waiting in krbd udev handling

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoos/bluestore: remove useless IOContext::num_reading 14956/head
Sage Weil [Fri, 5 May 2017 18:39:18 +0000 (14:39 -0400)]
os/bluestore: remove useless IOContext::num_reading

If we are a syncrhonous read, we don't need this: we don't aio_wait for
sync reads.  If we are an aio_read, we are in the aio_running count anyway,
and there is also no purpose for this counter.

I'm a bit unsure about the NVME use of this counter; I switched it to use
num_running (pretty sure we aren't mixing reads and writes on a single
IOContext) *but* it might make more sense to switch to a private counter.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore/BlockDevice: fix racy aio_{wake,wait}() on IOContext
Sage Weil [Fri, 5 May 2017 18:11:31 +0000 (14:11 -0400)]
os/bluestore/BlockDevice: fix racy aio_{wake,wait}() on IOContext

Thread 1 (_do_read)                 Thread 2 (_aio_thread)
queues aio
ioc->aio_wait()
  locks ioc->lock
  num_waiting++
                                    finishes aios
                                    ioc->aio_wake
                                      if (num_waiting)
                                        lock ioc->lock (blocks)
  num_running == 0, continue
  ioc->unlock
                                        ioc->lock taken
do_read destroys ioc
                                        use after free, may block forever

The last bit of the race may vary; the key thing is that thread 2 is
taking a lock that thread 1 can destroy; thread 2 doesn't have it pinned
in memory.

Fix this by simplifying the aio_wake, aio_wait.  Since it is mutually
exclusive with a callback completion, we can avoid calling it at all when
a callback in present, and focus on keeping it simple.

Avoid use-after-free by making sure the last decrement happens under
the lock in the aio_wake/wait case.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore/KernelDevice: remove weird aio_wake from sync read()
Sage Weil [Fri, 5 May 2017 18:35:07 +0000 (14:35 -0400)]
os/bluestore/KernelDevice: remove weird aio_wake from sync read()

I'm not entirely sure why we were ever signaling the cond here; the read
is synchronous!

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoCMakeLists.txt: WITH_BLKIN off for now 14305/head
Sage Weil [Fri, 5 May 2017 17:59:35 +0000 (13:59 -0400)]
CMakeLists.txt: WITH_BLKIN off for now

We are unconditionally linking lttng-ust, which make selinux complain. We
should either

 - fix selinux rules and unconditionally link
 - dlopen at runtime based on an option (like we do for the current
   tracepoints)
 - ???

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoblkin: fix test
Sage Weil [Fri, 21 Apr 2017 16:01:54 +0000 (12:01 -0400)]
blkin: fix test

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoblkin: fix cmake compile options
Sage Weil [Tue, 18 Apr 2017 16:35:11 +0000 (12:35 -0400)]
blkin: fix cmake compile options

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoblkin: remove installed files
Sage Weil [Fri, 14 Apr 2017 17:27:44 +0000 (13:27 -0400)]
blkin: remove installed files

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoblkin: fix -fPIC option
Sage Weil [Wed, 12 Apr 2017 15:34:03 +0000 (11:34 -0400)]
blkin: fix -fPIC option

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