]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 years agomds: ignore done_locking on slave requests' acquire_locks()
Sage Weil [Sun, 7 Nov 2010 03:55:12 +0000 (20:55 -0700)]
mds: ignore done_locking on slave requests' acquire_locks()

Slave requests ask for each xlock one at a time.  Don't bail out based on
the done_locking flag.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: don't use helper for rename srcdn
Sage Weil [Sun, 7 Nov 2010 03:17:32 +0000 (20:17 -0700)]
mds: don't use helper for rename srcdn

The rdlock_path_xlock_dentry helper works for _auth_ dentries that we
create locally in an auth dirfrag.  For the srcdn, we need to discover an
_existing_ dentry that is not necessarily auth.

Call path_traverse ourselves, but be careful to take the appropriate locks
on the resulting dn, dir, and ancestors.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: never complete a gather on a flushing lock
Sage Weil [Sat, 6 Nov 2010 18:02:13 +0000 (11:02 -0700)]
mds: never complete a gather on a flushing lock

The scatter_writebehind() takes a wrlock, but that may still allow the lock
to complete a gather to LOCK and even move to say MIX before the data is
committed.  Bad news!

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'mix_stale' into unstable
Sage Weil [Sat, 6 Nov 2010 00:08:10 +0000 (17:08 -0700)]
Merge branch 'mix_stale' into unstable

14 years agomds: add more verify_scatter asserts
Sage Weil [Sat, 6 Nov 2010 00:06:10 +0000 (17:06 -0700)]
mds: add more verify_scatter asserts

For catchings fragstat errors sooner.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: fix version check on resyncing stale rstat in predirty_journal_parents
Sage Weil [Fri, 5 Nov 2010 22:24:53 +0000 (15:24 -0700)]
mds: fix version check on resyncing stale rstat in predirty_journal_parents

We're resyncing rstat, so check the rstat version (not fragstat!)

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: Fix bad inode deref.
Greg Farnum [Fri, 5 Nov 2010 19:45:06 +0000 (12:45 -0700)]
mds: Fix bad inode deref.

Accidentally trying to print out the CInode after removing it in trim_non_auth!
Move the print to before it's been unlinked/removed/etc.

14 years agoRevisit std::multimap decoder
Colin Patrick McCabe [Fri, 5 Nov 2010 19:17:40 +0000 (12:17 -0700)]
Revisit std::multimap decoder

Previously I changed the std::multimap decoder to minimize the number of
constructor invocations. However, it could be much more expensive to
copy an initialized (decoded) val_t than to copy an empty one. For
example, if we are decoding std::multimap < int, std::set <int> >. So
change the code to insert a non-decoded val_t again.

However, this still saves two constructor invocations over the original.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoautogen.sh: check for pkg-config
Colin Patrick McCabe [Fri, 5 Nov 2010 18:34:11 +0000 (11:34 -0700)]
autogen.sh: check for pkg-config

To avoid seeing confusing errors later in the configure process, in
autogen.sh, check to make sure the pkg-config program is installed.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agomds: preserve version when recovering rstat from dirfrag in predirty_journal_parents
Sage Weil [Fri, 5 Nov 2010 17:38:35 +0000 (10:38 -0700)]
mds: preserve version when recovering rstat from dirfrag in predirty_journal_parents

We don't want to screw up the version here.  This aligns the code with
other instances of this check.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: restructure finish_scatter_gather_update()
Sage Weil [Fri, 5 Nov 2010 06:20:33 +0000 (23:20 -0700)]
mds: restructure finish_scatter_gather_update()

Separate behavior into two dimensions: whether or not we are updating
the dirfrag, and whether or not the dirfrag is stale.

Change the various helpers to NOT implicitly update accounted_*, as the
caller doesn't always want that, notably when we are non-stale but frozen.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: do not bump scatter stat lock in predirty_journal_parents
Sage Weil [Fri, 5 Nov 2010 06:15:06 +0000 (23:15 -0700)]
mds: do not bump scatter stat lock in predirty_journal_parents

If we're in the MIX state, we clearly can't touch this without screwing up
the delicate scatter/gather behavior.  If we're in, say, LOCK, there is
still no reason to update it.  One frag at least is local and auth if we
are in this code, but there may be other frags on other nodes.  This would
just make them appear stale when they are not.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: mark scatterlock stale on import of stale frag scatter stat
Sage Weil [Fri, 5 Nov 2010 05:48:09 +0000 (22:48 -0700)]
mds: mark scatterlock stale on import of stale frag scatter stat

When the lock scattered, if we didn't have an auth frag that was frozen,
we go into MIX state.  Later, we may import a stale dirfrag.  We need to
move to MIX_STALE at that point, and/or mark the lock stale so that any
subsequent transition does so.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: match bottom half of assilate_dirty_rstat_inodes with a dir flag
Sage Weil [Fri, 5 Nov 2010 05:44:01 +0000 (22:44 -0700)]
mds: match bottom half of assilate_dirty_rstat_inodes with a dir flag

We only do the assimilate_dirty_rstat_inodes if we do an update AND the
frag rstat was non-stale, but the bottom half (_finish) doesn't have the
same info to know whether we did it because the top half updates the
fragstat version.  Use a flag to indicate we've updated the dirfrag so
the bottom half will only run when needed.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: fix inode version used for inest in decode_lock_state
Sage Weil [Fri, 5 Nov 2010 05:19:53 +0000 (22:19 -0700)]
mds: fix inode version used for inest in decode_lock_state

We need to pass the inode rstat's version into finish_scatter_update, not
the shadowed local variable.  Otherwise we don't update the dirfrag when
we should.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoPGMonitor::update_from_paxos: check for bad input
Colin Patrick McCabe [Thu, 4 Nov 2010 22:46:55 +0000 (15:46 -0700)]
PGMonitor::update_from_paxos: check for bad input

Be more robust against bad data coming in from the network.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoReplace sprintf with snprintf
Colin Patrick McCabe [Thu, 4 Nov 2010 21:33:48 +0000 (14:33 -0700)]
Replace sprintf with snprintf

Replace sprintf with snprintf. This is especially critical when the
format string includes "%s".

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agostart_profiler/enable_profiler_options:fix memleak
Colin Patrick McCabe [Thu, 4 Nov 2010 21:26:08 +0000 (14:26 -0700)]
start_profiler/enable_profiler_options:fix memleak

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoSet HEAP_PROFILE_INUSE_INTERVAL based on conf
Colin Patrick McCabe [Thu, 4 Nov 2010 21:11:41 +0000 (14:11 -0700)]
Set HEAP_PROFILE_INUSE_INTERVAL based on conf

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoCInode::make_path_string: don't coerce ino
Colin Patrick McCabe [Thu, 4 Nov 2010 21:06:09 +0000 (14:06 -0700)]
CInode::make_path_string: don't coerce ino

CInode::make_path_string: don't coerce the inode number to 32-bits.
Everyone else is treating it as 64 bits; this function should too.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agomds: mds debug scatterstat to print out projected rstat/fragstat
Sage Weil [Thu, 4 Nov 2010 20:17:01 +0000 (13:17 -0700)]
mds: mds debug scatterstat to print out projected rstat/fragstat

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: verify single frag rstat on projection too
Sage Weil [Thu, 4 Nov 2010 20:04:47 +0000 (13:04 -0700)]
mds: verify single frag rstat on projection too

Currently we do a sanity check on gather; do the same check in
project_rstat_frag_to_inode().

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'dumpjournal' into unstable
Greg Farnum [Thu, 4 Nov 2010 18:58:30 +0000 (11:58 -0700)]
Merge branch 'dumpjournal' into unstable

14 years agocmds: Include journal dumper functionality.
Greg Farnum [Thu, 4 Nov 2010 18:30:59 +0000 (11:30 -0700)]
cmds: Include journal dumper functionality.

14 years agodumper: Add new Dumper class.
Greg Farnum [Thu, 4 Nov 2010 18:30:38 +0000 (11:30 -0700)]
dumper: Add new Dumper class.

This lets you dump an MDS journal to a file.

14 years agomds: fix optional frag asserts
Sage Weil [Thu, 4 Nov 2010 18:33:49 +0000 (11:33 -0700)]
mds: fix optional frag asserts

We want these to trigger when mds_verify_scatter is true.  Only one !.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoobjecter: add new wait_for_osd_map function.
Greg Farnum [Thu, 4 Nov 2010 18:28:52 +0000 (11:28 -0700)]
objecter: add new wait_for_osd_map function.

14 years agoosd: clean up active <-> booting state transitions
Sage Weil [Thu, 4 Nov 2010 18:13:14 +0000 (11:13 -0700)]
osd: clean up active <-> booting state transitions

Among other things, get rid of the 'wrongly marked down' log message on
normal startup.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoTestEncoding: count number of ctor invocations
Colin Patrick McCabe [Thu, 4 Nov 2010 17:24:52 +0000 (10:24 -0700)]
TestEncoding: count number of ctor invocations

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoclient: print useful max_size waiting message
Sage Weil [Wed, 3 Nov 2010 23:41:29 +0000 (16:41 -0700)]
client: print useful max_size waiting message

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'mix_stale' into unstable
Sage Weil [Wed, 3 Nov 2010 23:40:19 +0000 (16:40 -0700)]
Merge branch 'mix_stale' into unstable

14 years agodebian: add gtk build-depends
Sage Weil [Wed, 3 Nov 2010 16:44:22 +0000 (09:44 -0700)]
debian: add gtk build-depends

For ceph -g.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: add 'mds verify scatter' and re-add some scatter asserts
Sage Weil [Wed, 3 Nov 2010 21:02:30 +0000 (14:02 -0700)]
mds: add 'mds verify scatter' and re-add some scatter asserts

Check on ifile and inest gather that stats match single-frag dirs.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: fix put_xlock() assert for slave masters
Sage Weil [Wed, 3 Nov 2010 20:51:07 +0000 (13:51 -0700)]
mds: fix put_xlock() assert for slave masters

If we are a master of a slave, the state will be LOCK.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: rename 'mix stale' => 'mix_stale'
Sage Weil [Wed, 3 Nov 2010 20:16:06 +0000 (13:16 -0700)]
mds: rename 'mix stale' => 'mix_stale'

For unambigous debug output

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: request unscatter when MIX_STALE on replica
Sage Weil [Wed, 3 Nov 2010 20:15:43 +0000 (13:15 -0700)]
mds: request unscatter when MIX_STALE on replica

This means implementing REQUNSCATTER.

Eventually this should use TEMPSYNC, but that isn't fully implemented yet.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: disable tempsync
Sage Weil [Wed, 3 Nov 2010 20:09:18 +0000 (13:09 -0700)]
mds: disable tempsync

Tempsync is not implemented in the filelock state machine.  Never use it,
at lesat for now!

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: finish_scatter_update on auth dirfrags too
Sage Weil [Wed, 3 Nov 2010 21:31:19 +0000 (14:31 -0700)]
mds: finish_scatter_update on auth dirfrags too

We can update the dirfrag accounted on auth dirfrags at scatter time too.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: use helper for scatter dirfrag update; use on local dirfrags
Sage Weil [Wed, 3 Nov 2010 20:08:06 +0000 (13:08 -0700)]
mds: use helper for scatter dirfrag update; use on local dirfrags

Any time we scatter is an opportunity to update the dirfrag with the
accounted scatter stat if it is out of date.  We should use that
opportunity even when the dirfrag is on the same node as the inode (i.e.,
not just through decode_lock_state).

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoAdd the ps-ceph.sh tool
Colin Patrick McCabe [Wed, 3 Nov 2010 19:52:49 +0000 (12:52 -0700)]
Add the ps-ceph.sh tool

This allows you to see at a glance which ceph programs and tools you
have running.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoencoding.h: fix compiler warning
Colin Patrick McCabe [Wed, 3 Nov 2010 19:15:20 +0000 (12:15 -0700)]
encoding.h: fix compiler warning

Fix a compiler warning about an uninitialized variable. Basically, we
used to insert uninitialized values into a std::multimap and then fix
them later. Rather than doing that, just insert the value we want
directly into the map.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoTestEncoding: add templated encode-then-decode fn
Colin Patrick McCabe [Wed, 3 Nov 2010 19:14:21 +0000 (12:14 -0700)]
TestEncoding: add templated encode-then-decode fn

TestEncoding: add a templated encode-then-decode fn that can be used to
test encoding followed by decoding of any type. Test encoding and
decoding of a std::multimap.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoCreate TestEncoding to test serialization code
Colin Patrick McCabe [Wed, 3 Nov 2010 19:03:32 +0000 (12:03 -0700)]
Create TestEncoding to test serialization code

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agomds: add some scatterlock notes
Sage Weil [Wed, 3 Nov 2010 18:07:40 +0000 (11:07 -0700)]
mds: add some scatterlock notes

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoceph: remove bad assert for old frag stat
Sage Weil [Wed, 3 Nov 2010 18:03:37 +0000 (11:03 -0700)]
ceph: remove bad assert for old frag stat

It's normal for old fragstat info to be mismatched (stat !=
accounted_stat).

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: match conditions in finish_scatter_gather_update_accounted
Sage Weil [Wed, 3 Nov 2010 17:51:42 +0000 (10:51 -0700)]
mds: match conditions in finish_scatter_gather_update_accounted

This needs to match the frozen check in finish_scatter_gather_update.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: handle MIX_STALE on auth too
Sage Weil [Wed, 3 Nov 2010 17:12:35 +0000 (10:12 -0700)]
mds: handle MIX_STALE on auth too

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: scatter_info_t ancestor for nest_info_t and frag_info_t
Sage Weil [Wed, 3 Nov 2010 16:51:15 +0000 (09:51 -0700)]
mds: scatter_info_t ancestor for nest_info_t and frag_info_t

This will facilitate using generic code for the inest and ifile
scatterlocks.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: only mark auth dirfrags stale in start_scatter
Sage Weil [Wed, 3 Nov 2010 16:47:23 +0000 (09:47 -0700)]
mds: only mark auth dirfrags stale in start_scatter

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: mark scatterlock stale if any auth dirfrags appear stale
Sage Weil [Wed, 3 Nov 2010 04:51:15 +0000 (21:51 -0700)]
mds: mark scatterlock stale if any auth dirfrags appear stale

The auth needs to move to MIX_STALE for the same reasons a replica does:
if, on scatter, any dirfrags have an old accounted_*stat, the lock needs to
be marked stale (or updated... TODO!).

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: do not update accounted_*stat if auth and frozen
Sage Weil [Wed, 3 Nov 2010 04:49:45 +0000 (21:49 -0700)]
mds: do not update accounted_*stat if auth and frozen

The auth can't update a frozen dirfrag for the same reason a replica
can't.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: mark scatterlock stale if dir is frozen, not inode
Sage Weil [Tue, 2 Nov 2010 23:28:15 +0000 (16:28 -0700)]
mds: mark scatterlock stale if dir is frozen, not inode

It's the dir we're auth for and that might potentially be frozen.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'unstable' into mix_stale
Sage Weil [Tue, 2 Nov 2010 23:25:37 +0000 (16:25 -0700)]
Merge branch 'unstable' into mix_stale

14 years agorados: benchmark using unique object names
Sage Weil [Tue, 2 Nov 2010 22:26:14 +0000 (15:26 -0700)]
rados: benchmark using unique object names

Include hostname and pid in object name, so that instances running on
different hosts write to unique objects.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agodebian packaging: set --sbindir=/sbin
Colin Patrick McCabe [Tue, 2 Nov 2010 21:37:56 +0000 (14:37 -0700)]
debian packaging: set --sbindir=/sbin

We want mkcephfs and mount.ceph to be under /sbin.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoconfig: fix sigsegv handler
Sage Weil [Tue, 2 Nov 2010 20:00:26 +0000 (13:00 -0700)]
config: fix sigsegv handler

Fixed this with sigabrt, forgot to do sigsegv too.

See 7a688a9f999a6b9d3bcdcbebbd8cd984afc70e31.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agofilestore: disable 'filestore btrfs snap' when SNAP_DESTROY is missing
Sage Weil [Tue, 2 Nov 2010 18:10:38 +0000 (11:10 -0700)]
filestore: disable 'filestore btrfs snap' when SNAP_DESTROY is missing

We want to enable the new snap stuff by default.  But we also want to work
with the default configuration on old kernels.

The only downside here is that someone might explicitly enable it, only to
have it disabled on started because their kernel is old.  They'll get a
bright yellow warning in that case, at least.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMakefile.am: include the libcrush headers when installing
Wido den Hollander [Tue, 2 Nov 2010 16:47:11 +0000 (09:47 -0700)]
Makefile.am: include the libcrush headers when installing

Signed-off-by: Wido den Hollander <wido@widodh.nl>
14 years agoMerge branch 'testing' into unstable
Greg Farnum [Tue, 2 Nov 2010 17:10:24 +0000 (10:10 -0700)]
Merge branch 'testing' into unstable

14 years agouclient: Warn on truncate_[size|seq] changes for non-file inodes.
Greg Farnum [Tue, 2 Nov 2010 16:37:04 +0000 (09:37 -0700)]
uclient: Warn on truncate_[size|seq] changes for non-file inodes.

14 years agomds: Init system CInodes to have a truncate_size of -1.
Greg Farnum [Fri, 29 Oct 2010 03:46:04 +0000 (20:46 -0700)]
mds: Init system CInodes to have a truncate_size of -1.
This should help with bug #518.

14 years agoclient: match initialization with mds
Sage Weil [Mon, 1 Nov 2010 18:13:20 +0000 (11:13 -0700)]
client: match initialization with mds

(see Server::prepare_new_inode())

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoclient: only do truncate on regular files
Sage Weil [Mon, 1 Nov 2010 18:13:06 +0000 (11:13 -0700)]
client: only do truncate on regular files

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agodebian: add pkg-config as build-depends
Wido den Hollander [Tue, 2 Nov 2010 16:30:39 +0000 (09:30 -0700)]
debian: add pkg-config as build-depends

Signed-off-by: Wido den Hollander <wido@widodh.nl>
14 years agoinit-ceph: make lockfile dir configuration (redhat)
Sage Weil [Tue, 2 Nov 2010 05:09:56 +0000 (22:09 -0700)]
init-ceph: make lockfile dir configuration (redhat)

Reported-by: Ed Burnette <ed.burnette@sas.com>
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoobject.h: const cleanup
Colin Patrick McCabe [Tue, 2 Nov 2010 02:29:11 +0000 (19:29 -0700)]
object.h: const cleanup

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agologrotate: separate rule for stat/*.log
Sage Weil [Mon, 1 Nov 2010 17:04:15 +0000 (10:04 -0700)]
logrotate: separate rule for stat/*.log

Logrotate seems to ignore the entire rule if any part of the file list
is not found.  This happens on nodes with only monitors.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd::PG: Update PG comments
Colin Patrick McCabe [Mon, 25 Oct 2010 22:20:57 +0000 (15:20 -0700)]
osd::PG: Update PG comments

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agotest: create test_unfound.sh
Colin Patrick McCabe [Tue, 26 Oct 2010 17:04:12 +0000 (10:04 -0700)]
test: create test_unfound.sh

Create test_unfound.sh to test handling unfound objects.

Move more test functions into test/test_common.sh to facilitate code
reuse.

Allow the user to keep the temporary directory around after the test is
over by setting KEEP_TEMPDIR.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agofix make distcheck, make uninstall
Colin Patrick McCabe [Mon, 1 Nov 2010 03:29:28 +0000 (20:29 -0700)]
fix make distcheck, make uninstall

Make distclean was failing because make uninstall was broken. (There were
still leftover files after running make install + make uninstall.)

To fix this, use automake's built-in installation mechanisms rather than
manually installing files using the install-data-local target.

EXTRA_DIST: fix paths to use srcdir where necessary

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoMerge remote branch 'origin/mds_frags' into unstable
Sage Weil [Sat, 30 Oct 2010 22:46:03 +0000 (15:46 -0700)]
Merge remote branch 'origin/mds_frags' into unstable

14 years agoMerge remote branch 'origin/testing' into unstable
Sage Weil [Sat, 30 Oct 2010 22:04:13 +0000 (15:04 -0700)]
Merge remote branch 'origin/testing' into unstable

Conflicts:
configure.ac

14 years agofilestore: automatically choose appropriate journaling mode
Sage Weil [Sat, 30 Oct 2010 22:22:09 +0000 (15:22 -0700)]
filestore: automatically choose appropriate journaling mode

The three modes each get an explicit config option that defaults to false.
You can choose one explicitly by enabling one of those.  Otherwise, we
will choose an appropriate mode automatically based on detected btrfs
ioctls.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agov0.22.2 v0.22.2
Sage Weil [Sat, 30 Oct 2010 18:24:34 +0000 (11:24 -0700)]
v0.22.2

14 years agofilestore: use updated btrfs ioctls
Sage Weil [Sat, 30 Oct 2010 18:12:14 +0000 (11:12 -0700)]
filestore: use updated btrfs ioctls

Switch to the interface finally merged for 2.6.37-rc1.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agobtrfs: update ioctls.h
Sage Weil [Sat, 30 Oct 2010 17:32:18 +0000 (10:32 -0700)]
btrfs: update ioctls.h

This is what was finally merged for 2.6.37-rc1.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoGet "make dist" working, fix gui build issues
Colin Patrick McCabe [Fri, 29 Oct 2010 23:19:41 +0000 (16:19 -0700)]
Get "make dist" working, fix gui build issues

* Fix VPATH builds (i.e., builds where srcdir != builddir).
Don't assume that we can get a source files named blah with ./blah.
Use $(srcdir)/blah instead.

* When doing "make dist", inject the .git_version file directly into the
ceph tarball

* Add tools/gui_resources.h to noinst_HEADERS

* Add ceph_tool_gui_DATA to all_sources

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agomds: detect small dirs that should be merged, and merge them
Sage Weil [Fri, 29 Oct 2010 23:42:16 +0000 (16:42 -0700)]
mds: detect small dirs that should be merged, and merge them

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: hit dir popularity on unlink
Sage Weil [Fri, 29 Oct 2010 22:47:43 +0000 (15:47 -0700)]
mds: hit dir popularity on unlink

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: write potentially large pg info to object, not xattr [format change]
Sage Weil [Fri, 29 Oct 2010 22:28:37 +0000 (15:28 -0700)]
osd: write potentially large pg info to object, not xattr [format change]

Write past_intervals and snap_collections to a separate object instead of
an attr on the collection directory.  This avoids exceeding the underlying
filesystem xattr limits during thrashing recovery.  The struct_v on the
small info xattr is used to indicate the format of the biginfo object.

Also fixed pg deletion to clean out log and biginfo objects.

Added incompat format flag.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agocephtool-gui : more helpful error on pixbuf fail
Colin Patrick McCabe [Fri, 29 Oct 2010 21:28:00 +0000 (14:28 -0700)]
cephtool-gui : more helpful error on pixbuf fail

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoosd: snap_trimmer: flush between collection sets
Sage Weil [Fri, 29 Oct 2010 21:06:46 +0000 (14:06 -0700)]
osd: snap_trimmer: flush between collection sets

We need to make sure the objects whose collection sets we just adjusted
are reflected on disk when we make the next pass on the next snapid.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: auth_pin head/snap pairs for all need_snapflush entries
Sage Weil [Fri, 29 Oct 2010 20:06:49 +0000 (13:06 -0700)]
mds: auth_pin head/snap pairs for all need_snapflush entries

This ensures that when snap metadata is flushed, we will be auth on both
inodes and be able to do the update properly.  This isn't the nicest
solution ever, since it can make migrations laggy, but it's the simplest.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: Refactor need_snapflush into CInode helpers
Sage Weil [Fri, 29 Oct 2010 20:05:16 +0000 (13:05 -0700)]
mds: Refactor need_snapflush into CInode helpers

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfigure.ac: default to --enable-gtk
Colin Patrick McCabe [Fri, 29 Oct 2010 19:10:28 +0000 (12:10 -0700)]
configure.ac: default to --enable-gtk

Default to enabling gtk rather than disabling it. Gracefully handle
cases where the user tries to enable it but it cannot be enabled.

Makefile.am: Add missing headers to noinst_HEADERS.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoosd: fix decoding of legacy (v2) coll_t
Sage Weil [Fri, 29 Oct 2010 19:06:44 +0000 (12:06 -0700)]
osd: fix decoding of legacy (v2) coll_t

It was u8, not int.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: use list instead of vector for trim_unlinked_inodes
Sage Weil [Fri, 29 Oct 2010 18:41:48 +0000 (11:41 -0700)]
mds: use list instead of vector for trim_unlinked_inodes

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: fix use-after-free iterator no-no in remove_inode_recursive()
Sage Weil [Fri, 29 Oct 2010 18:41:35 +0000 (11:41 -0700)]
mds: fix use-after-free iterator no-no in remove_inode_recursive()

We can't close_dirfrag and use the iterator if it's pointing to the
released element.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'mds_journal' into unstable
Greg Farnum [Fri, 29 Oct 2010 18:30:51 +0000 (11:30 -0700)]
Merge branch 'mds_journal' into unstable

14 years agomds: log if trim_non_auth does anything, since it shouldn't
Greg Farnum [Fri, 29 Oct 2010 18:28:55 +0000 (11:28 -0700)]
mds: log if trim_non_auth does anything, since it shouldn't
be now except on rollbacks.

14 years agomds: Call trim_non_auth_subtree when appropriate.
Greg Farnum [Fri, 29 Oct 2010 18:03:08 +0000 (11:03 -0700)]
mds: Call trim_non_auth_subtree when appropriate.

14 years agomds: add function MDCache::trim_non_auth_subtree
Greg Farnum [Wed, 27 Oct 2010 21:48:37 +0000 (14:48 -0700)]
mds: add function MDCache::trim_non_auth_subtree

Trims the subtree rooted at the given dir from cache, except
for those portions linking to directories on other MDSes.
Meant for use during replay.

14 years agodebian: fix changelog
Sage Weil [Fri, 29 Oct 2010 17:48:40 +0000 (10:48 -0700)]
debian: fix changelog

(This was actually in the 0.22.1-1 package we built.)

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMutex: add more checks to lockdep
Colin Patrick McCabe [Thu, 28 Oct 2010 23:30:54 +0000 (16:30 -0700)]
Mutex: add more checks to lockdep

When lockdep is enabled, use PTHREAD_MUTEX_ERRORCHECK instead of
PTHREAD_MUTEX_NORMAL for non-recursive mutexes.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agoceph: gui: update copyright foo
Colin Patrick McCabe [Thu, 28 Oct 2010 22:46:07 +0000 (15:46 -0700)]
ceph: gui: update copyright foo

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agocephtool: gui: handle bad input in view_node
Colin Patrick McCabe [Thu, 28 Oct 2010 22:34:00 +0000 (15:34 -0700)]
cephtool: gui: handle bad input in view_node

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agocephtool: only initialize the tokenizer once
Colin Patrick McCabe [Thu, 28 Oct 2010 22:26:05 +0000 (15:26 -0700)]
cephtool: only initialize the tokenizer once

Only initialize the tokenizer once. It gets cranky if it we call
tok_init more than once.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agocephtool: fix initialization race
Colin Patrick McCabe [Thu, 28 Oct 2010 22:01:59 +0000 (15:01 -0700)]
cephtool: fix initialization race

Call GuiMonitor::link_elements before GuiMonitor::connect_signals.

It doesn't seem safe to set up callbacks before the GUI elements are
fully initialized.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agocephtool: join GUI thread before shutting down
Colin Patrick McCabe [Thu, 28 Oct 2010 21:52:33 +0000 (14:52 -0700)]
cephtool: join GUI thread before shutting down

Join GUI thread before shutting down.

Move open_icon function.

Delete unused get_widgets function.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
14 years agocephtool gui: install and locate gui_resources
Colin Patrick McCabe [Thu, 28 Oct 2010 20:19:10 +0000 (13:19 -0700)]
cephtool gui: install and locate gui_resources

Make install now installs the gui resource files into
/usr/share/cephtool/gui_resources (or wherever we configure it to go
using configure). We also support grabbing the resources out of the
local source tree, for when we're running the program from there.

run_gui: catch exceptions and explain what they are, rather than letting
them go to the top level.

GuiMonitor::open_icon: const cleanup.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>