]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
15 years agoMerge branch 'testing' into unstable
Sage Weil [Thu, 26 Aug 2010 17:00:37 +0000 (10:00 -0700)]
Merge branch 'testing' into unstable

15 years agofilejournal: clean up journal initialization sequence, error codes, output
Sage Weil [Thu, 26 Aug 2010 17:00:18 +0000 (10:00 -0700)]
filejournal: clean up journal initialization sequence, error codes, output

EOPNOTSUPP was getting returned to the user without much explanation.  This
should fix that!

15 years agomds: omit lock state in debug output when it's uninteresting (sync, no locks)
Sage Weil [Thu, 26 Aug 2010 04:31:34 +0000 (21:31 -0700)]
mds: omit lock state in debug output when it's uninteresting (sync, no locks)

15 years agoqa: rename snapmove -> snaptest-parents
Sage Weil [Tue, 24 Aug 2010 23:37:15 +0000 (16:37 -0700)]
qa: rename snapmove -> snaptest-parents

15 years agoosd: don't reply on missing class
Sage Weil [Wed, 25 Aug 2010 23:24:25 +0000 (16:24 -0700)]
osd: don't reply on missing class

Instead, we queue ourselves in the waiting_for_class list.  Broken by
f1eb9a8751d48.

15 years agomds: only wrlock filelock during max_size changes on the head
Sage Weil [Wed, 25 Aug 2010 21:41:18 +0000 (14:41 -0700)]
mds: only wrlock filelock during max_size changes on the head

15 years agoqa: add snaptest-dir-rename.sh
Sage Weil [Wed, 25 Aug 2010 19:05:19 +0000 (12:05 -0700)]
qa: add snaptest-dir-rename.sh

15 years agoqa: add blogbench test to qa
Greg Farnum [Wed, 25 Aug 2010 23:10:57 +0000 (16:10 -0700)]
qa: add blogbench test to qa

15 years agodebian: don't need to add .git_version in release script
Sage Weil [Wed, 25 Aug 2010 21:46:36 +0000 (14:46 -0700)]
debian: don't need to add .git_version in release script

15 years agomakefile: include .git_version in tarball
Sage Weil [Wed, 25 Aug 2010 21:45:55 +0000 (14:45 -0700)]
makefile: include .git_version in tarball

15 years agomon: error out gracefully when we can't read the magic
Sage Weil [Wed, 25 Aug 2010 21:41:29 +0000 (14:41 -0700)]
mon: error out gracefully when we can't read the magic

15 years agomds: fix invalid comparison.
Greg Farnum [Wed, 25 Aug 2010 19:04:53 +0000 (12:04 -0700)]
mds: fix invalid comparison.

We just want the code in this if block to execute if the previous if block did.
But the previous if block unlinked destdnl, so the comparison always fails! Use
a bool and set it appropriately to fix.

15 years agoclient: don't improperly conclude COMPLETE on empty dir
Sage Weil [Tue, 24 Aug 2010 23:31:19 +0000 (16:31 -0700)]
client: don't improperly conclude COMPLETE on empty dir

We can't trust the MDS values when we hold FILE_EXCL.

15 years agoqa: clean up snaptest-* suite a bit
Sage Weil [Tue, 24 Aug 2010 23:01:47 +0000 (16:01 -0700)]
qa: clean up snaptest-* suite a bit

15 years agoclient: don't print inode, it might be NULL.
Greg Farnum [Tue, 24 Aug 2010 22:03:24 +0000 (15:03 -0700)]
client: don't print inode, it might be NULL.
This is especially bad because you can't start cfuse with debug level 20.

15 years agoRevert "qa: remove random ordering from runallonce, for predictable resource matching"
Greg Farnum [Tue, 24 Aug 2010 20:55:30 +0000 (13:55 -0700)]
Revert "qa: remove random ordering from runallonce, for predictable resource matching"
This snuck in by mistake in the leaks merge.

This reverts commit 8778bacf3bee80e37a1898ba87fd7d2f37b56b8d.

15 years agoclient: only includee xattrs in caps msg if we are flushing that bit
Sage Weil [Tue, 24 Aug 2010 20:06:13 +0000 (13:06 -0700)]
client: only includee xattrs in caps msg if we are flushing that bit

15 years agoclient: queue capsnap on any dirty metadata
Sage Weil [Tue, 24 Aug 2010 20:05:48 +0000 (13:05 -0700)]
client: queue capsnap on any dirty metadata

15 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/home/sage/ceph.newdream.net/git...
Sage Weil [Tue, 24 Aug 2010 19:58:00 +0000 (12:58 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/home/sage/ceph.newdream.net/git/ceph into unstable

15 years agoMerge branch 'rootsnap' into unstable
Sage Weil [Tue, 24 Aug 2010 19:17:57 +0000 (12:17 -0700)]
Merge branch 'rootsnap' into unstable

Conflicts:
src/mds/Server.cc

15 years agomds: fix cow_old_inode to properly save xattrs
Sage Weil [Tue, 24 Aug 2010 18:57:19 +0000 (11:57 -0700)]
mds: fix cow_old_inode to properly save xattrs

15 years agomds: fix snaprealm create split
Sage Weil [Tue, 24 Aug 2010 19:12:16 +0000 (12:12 -0700)]
mds: fix snaprealm create split

Need to check if diri->snaprealm is set _before_ popping the dirty inode
(and new snaprealm!).

15 years agomds: no snaps in system dirs, but root is ok
Sage Weil [Tue, 24 Aug 2010 18:24:27 +0000 (11:24 -0700)]
mds: no snaps in system dirs, but root is ok

15 years agomds: drop old debug output
Sage Weil [Tue, 24 Aug 2010 18:23:30 +0000 (11:23 -0700)]
mds: drop old debug output

15 years agomds: rename project_past_parent -> project_past_snaprealm_parent
Sage Weil [Tue, 24 Aug 2010 18:23:22 +0000 (11:23 -0700)]
mds: rename project_past_parent -> project_past_snaprealm_parent

15 years agomds: drop unused projected_srnode list
Sage Weil [Tue, 24 Aug 2010 18:20:40 +0000 (11:20 -0700)]
mds: drop unused projected_srnode list

15 years agoqa: snaptest-xattrwb.sh
Sage Weil [Tue, 24 Aug 2010 17:46:23 +0000 (10:46 -0700)]
qa: snaptest-xattrwb.sh

15 years agoqa: chmod +x snaptest-authwb.sh
Sage Weil [Tue, 24 Aug 2010 17:45:58 +0000 (10:45 -0700)]
qa: chmod +x snaptest-authwb.sh

15 years agomds: expose projected values for all locks to loner (not just filelock)
Sage Weil [Tue, 24 Aug 2010 17:38:21 +0000 (10:38 -0700)]
mds: expose projected values for all locks to loner (not just filelock)

There is nothing special about filelock in this case.  If the client is
the loner, we should use the projected values.  This is important when
we are looking at a snapid on the head (see snaptest-authwb.sh).

15 years agomds: do null snapflush as soon as we have all file wr caps
Sage Weil [Tue, 24 Aug 2010 17:37:06 +0000 (10:37 -0700)]
mds: do null snapflush as soon as we have all file wr caps

The snapflush only gets delayed on the client by data writeback, so we can
do the null snapflush as soon as we have those bits.

15 years agomds: fix null deref of cap in do_cap_update when doing intermediate snap updates
Sage Weil [Tue, 24 Aug 2010 15:57:30 +0000 (08:57 -0700)]
mds: fix null deref of cap in do_cap_update when doing intermediate snap updates

15 years agomon: add clock sync backoff to handle_lease_ack
Greg Farnum [Tue, 24 Aug 2010 18:54:49 +0000 (11:54 -0700)]
mon: add clock sync backoff to handle_lease_ack

15 years agomon: Adjust lease time checks.
Greg Farnum [Tue, 24 Aug 2010 18:49:43 +0000 (11:49 -0700)]
mon: Adjust lease time checks.

For some reason this fixes (apparently incorrect) warnings I saw
while running a 2-mon system on my dev server.

15 years agoMerge branch 'leaks' into unstable
Greg Farnum [Tue, 24 Aug 2010 17:35:35 +0000 (10:35 -0700)]
Merge branch 'leaks' into unstable

Conflicts:
src/mds/Locker.cc

15 years agoMerge branch 'unstable' into leaks
Greg Farnum [Tue, 24 Aug 2010 06:41:41 +0000 (23:41 -0700)]
Merge branch 'unstable' into leaks

Conflicts:
src/mds/Locker.cc

15 years agoMerge branch 'auth_change_waiters' into unstable
Sage Weil [Tue, 24 Aug 2010 03:31:17 +0000 (20:31 -0700)]
Merge branch 'auth_change_waiters' into unstable

15 years agomds: don't auth_pin non-auth wrlock targets
Sage Weil [Thu, 19 Aug 2010 22:36:26 +0000 (15:36 -0700)]
mds: don't auth_pin non-auth wrlock targets

15 years agomds: don't auth_pin non-auth rdlock targets
Sage Weil [Thu, 19 Aug 2010 22:36:18 +0000 (15:36 -0700)]
mds: don't auth_pin non-auth rdlock targets

This generates lots of lock traffic that is unneeded with the authchange
notification machinery.

15 years agomds: add wait on auth change machinery
Sage Weil [Thu, 19 Aug 2010 22:19:33 +0000 (15:19 -0700)]
mds: add wait on auth change machinery

Special wait mask is passed through lock wait mask to parent object.
Caller adds item to a list on the subtree root.
Removal of wait item automatically removes from said list.
Subtree topology changes adjust authchange wait lists.
Migrator auth change update waits waiters.  Import/export should be
protected by freeze/thaw or the blanket wakeups.

15 years agoRevert librados portions of b0a8f6be815a03db36ef14e5006425c60951e396
Greg Farnum [Mon, 23 Aug 2010 21:42:03 +0000 (14:42 -0700)]
Revert librados portions of b0a8f6be815a03db36ef14e5006425c60951e396
and 6289b3e409acd050937bd23fba268f61e03ab30f.
These were never meant to occur, just a tool failure.

15 years agomon: ignore osd boot with bad addr
Sage Weil [Mon, 23 Aug 2010 19:53:24 +0000 (12:53 -0700)]
mon: ignore osd boot with bad addr

This sort of masks a bug in the msgr layer.

15 years agomds: only revoke client leases when there are leases in AC_LOCK handler
Sage Weil [Mon, 23 Aug 2010 18:50:30 +0000 (11:50 -0700)]
mds: only revoke client leases when there are leases in AC_LOCK handler

Fixes crash, bc the revoke func assumes it's a CDentry

15 years agomds: fix retry on discover_*
Sage Weil [Mon, 23 Aug 2010 18:39:39 +0000 (11:39 -0700)]
mds: fix retry on discover_*

The discover_* methods can block on an ambiguous base auth, so we need to
retry in that case.

15 years agomds: ignore reqrdlock if frozen
Sage Weil [Mon, 23 Aug 2010 18:38:43 +0000 (11:38 -0700)]
mds: ignore reqrdlock if frozen

15 years agomds: handle REQRDLOCK on simple locks too
Sage Weil [Mon, 23 Aug 2010 18:16:42 +0000 (11:16 -0700)]
mds: handle REQRDLOCK on simple locks too

Use a helper.

15 years agoMerge remote branch 'origin/testing' into unstable
Sage Weil [Mon, 23 Aug 2010 17:32:18 +0000 (10:32 -0700)]
Merge remote branch 'origin/testing' into unstable

15 years agomds: eval inodes with caps after import
Sage Weil [Mon, 23 Aug 2010 16:36:10 +0000 (09:36 -0700)]
mds: eval inodes with caps after import

15 years agomsgr: release dispatch_throttle on reset connection
Henry C Chang [Mon, 23 Aug 2010 04:39:35 +0000 (21:39 -0700)]
msgr: release dispatch_throttle on reset connection

Signed-off-by: Henry C Chang <henry_c_chang@tcloudcomputing.com>
Signed-off-by: Sage Weil <sage@newdream.net>
15 years agoqa: add test for snapcap writeback of auth bits
Sage Weil [Sun, 22 Aug 2010 20:49:52 +0000 (13:49 -0700)]
qa: add test for snapcap writeback of auth bits

15 years agoqa: test xattr snap wb
Sage Weil [Sun, 22 Aug 2010 22:18:21 +0000 (15:18 -0700)]
qa: test xattr snap wb

15 years agoosd: disable potentially dangerous dead code
Sage Weil [Thu, 19 Aug 2010 23:06:24 +0000 (16:06 -0700)]
osd: disable potentially dangerous dead code

Greg got a segfault accessing the OSDOP& first reference. Not clear why,
but this whole block is dead code.

15 years agobacktrace: fix segfault in tcmalloc.
Greg Farnum [Thu, 19 Aug 2010 19:01:11 +0000 (12:01 -0700)]
backtrace: fix segfault in tcmalloc.
The print function is only called when we're about to crash anyway,
and the datamember 'foo' is allocated by ptmalloc, not tcmalloc. Freeing
it via tcmalloc causes its own crash which pollutes our debugging and
incorrectly sticks tcmalloc into the stack. So, just don't free.

15 years agomds: fix get_projected_srnode. We might have projected nodes without projected snaprealms
Greg Farnum [Fri, 20 Aug 2010 20:38:10 +0000 (13:38 -0700)]
mds: fix get_projected_srnode. We might have projected nodes without projected snaprealms

15 years agomds: remove compiler warning in CInode
Greg Farnum [Fri, 20 Aug 2010 20:24:33 +0000 (13:24 -0700)]
mds: remove compiler warning in CInode

15 years agomds: fix get_projected_srnode to actually find an srnode,
Greg Farnum [Fri, 20 Aug 2010 20:11:49 +0000 (13:11 -0700)]
mds: fix get_projected_srnode to actually find an srnode,
instead of returning the (possibly NULL) last projected_node has set

Also, add brief documentation.

15 years agomds: remove unnecessary silent fallout from add_primary_dentry.
Greg Farnum [Fri, 20 Aug 2010 18:47:03 +0000 (11:47 -0700)]
mds: remove unnecessary silent fallout from add_primary_dentry.

15 years agomds: drop old thrash_exports time limit
Sage Weil [Fri, 20 Aug 2010 16:57:07 +0000 (09:57 -0700)]
mds: drop old thrash_exports time limit

15 years agoosdmaptool: print useful error instead of crashing if osdmap is corrupt
Sage Weil [Fri, 20 Aug 2010 16:31:49 +0000 (09:31 -0700)]
osdmaptool: print useful error instead of crashing if osdmap is corrupt

15 years agocrush: return error instead of BUGing on bad forcefed mapping
Sage Weil [Fri, 20 Aug 2010 16:26:34 +0000 (09:26 -0700)]
crush: return error instead of BUGing on bad forcefed mapping

The forcefed mapping relies on a parent map.  However, the current
implementation assumes that the parent mapping is unique for all rules. If
that is not the case (i.e., some osd exists in multiple hierarchies) then
we cannot assert that the TAKE matches the calculated force_context.

For now, we can just fail the mapping in that case (we don't use forcefed
mappings yet).  The real solution is probably to define parent maps for
all possible hierarchies (i.e., starting at each unique TAKE starting
point).

Signed-off-by: Sage Weil <sage@newdream.net>
15 years agomds: return error to client on invalid mds op
Sage Weil [Fri, 20 Aug 2010 05:01:54 +0000 (22:01 -0700)]
mds: return error to client on invalid mds op

e.g., if the client sends a filelock request and we don't support it :)

15 years agomds: fix ENOTEMPTY checking on rmdir/rename
Sage Weil [Fri, 20 Aug 2010 04:47:19 +0000 (21:47 -0700)]
mds: fix ENOTEMPTY checking on rmdir/rename

We can't trust the inode rstat size without holding the locks.  We can
look at our auth frags and though without fear of a false positive
ENOTEMPTY, however.

Rename the function, introduce a helper for the locked check, update
comments, etc.

15 years agomds: drop projected_snaprealm_ptr
Sage Weil [Fri, 20 Aug 2010 02:39:38 +0000 (19:39 -0700)]
mds: drop projected_snaprealm_ptr

Can also get this from the projected_nodes list.

15 years agomds: drop projected_xattrs_ptr
Sage Weil [Fri, 20 Aug 2010 02:34:30 +0000 (19:34 -0700)]
mds: drop projected_xattrs_ptr

We don't need these if we just look at the projected_nodes list, just like
get_projected_inode() and get_previous_projected_inode().

15 years agomds: allow you to DELETE snapshots in root directory too
Greg Farnum [Fri, 20 Aug 2010 00:19:59 +0000 (17:19 -0700)]
mds: allow you to DELETE snapshots in root directory too

15 years agoMerge branch 'unstable' into rootsnap
Greg Farnum [Thu, 19 Aug 2010 23:49:55 +0000 (16:49 -0700)]
Merge branch 'unstable' into rootsnap

15 years agoosd: disable potentially dangerous dead code
Sage Weil [Thu, 19 Aug 2010 23:06:24 +0000 (16:06 -0700)]
osd: disable potentially dangerous dead code

Greg got a segfault accessing the OSDOP& first reference. Not clear why,
but this whole block is dead code.

15 years agobacktrace: fix segfault in tcmalloc.
Greg Farnum [Thu, 19 Aug 2010 19:01:11 +0000 (12:01 -0700)]
backtrace: fix segfault in tcmalloc.
The print function is only called when we're about to crash anyway,
and the datamember 'foo' is allocated by ptmalloc, not tcmalloc. Freeing
it via tcmalloc causes its own crash which pollutes our debugging and
incorrectly sticks tcmalloc into the stack. So, just don't free.

15 years agomds: fix pick_inode_snap
Sage Weil [Thu, 19 Aug 2010 23:21:47 +0000 (16:21 -0700)]
mds: fix pick_inode_snap

Return when we find something.

15 years agomds: fix intermediate snapped inode updates
Sage Weil [Thu, 19 Aug 2010 23:21:18 +0000 (16:21 -0700)]
mds: fix intermediate snapped inode updates

Pass head inode to pick_inode_snap!

15 years agoosd: disable potentially dangerous dead code
Sage Weil [Thu, 19 Aug 2010 23:06:24 +0000 (16:06 -0700)]
osd: disable potentially dangerous dead code

Greg got a segfault accessing the OSDOP& first reference. Not clear why,
but this whole block is dead code.

15 years agoutime: microsecond -> nanosecond resolution
Sage Weil [Thu, 19 Aug 2010 23:00:45 +0000 (16:00 -0700)]
utime: microsecond -> nanosecond resolution

Strictly speaking, this changes the encoding.  But, the encoding was
broken before, because ceph_timespec in ns but we were actually encoding
us.

But it's all subsecond resolution, so who cares.  Just change it!

15 years agobacktrace: fix segfault in tcmalloc.
Greg Farnum [Thu, 19 Aug 2010 19:01:11 +0000 (12:01 -0700)]
backtrace: fix segfault in tcmalloc.
The print function is only called when we're about to crash anyway,
and the datamember 'foo' is allocated by ptmalloc, not tcmalloc. Freeing
it via tcmalloc causes its own crash which pollutes our debugging and
incorrectly sticks tcmalloc into the stack. So, just don't free.

15 years agomds: allow snaps in root dir. This may be too large a stick, though
Greg Farnum [Wed, 11 Aug 2010 15:58:58 +0000 (08:58 -0700)]
mds: allow snaps in root dir. This may be too large a stick, though

15 years agomds: CInode should set projected_snaprealm_ptr to NULL if we pop the last one!
Greg Farnum [Thu, 19 Aug 2010 22:04:46 +0000 (15:04 -0700)]
mds: CInode should set projected_snaprealm_ptr to NULL if we pop the last one!

15 years agomds: project_snaprealm in project_and_dirty_inode. Fix users.
Greg Farnum [Thu, 19 Aug 2010 21:58:07 +0000 (14:58 -0700)]
mds: project_snaprealm in project_and_dirty_inode. Fix users.

15 years agomds: journal snaprealm changes in MDCache::journal_cow_dentry,
Greg Farnum [Thu, 19 Aug 2010 21:47:12 +0000 (14:47 -0700)]
mds: journal snaprealm changes in MDCache::journal_cow_dentry,
if a new snapnode exists.

This means that you shouldn't journal them elsewhere if they go through
journal_cow_dentry, so remove from mksnap and rmsnap!

15 years agomds: implement get_previous_projected_xattrs; use in MDCache::cow_inode().
Greg Farnum [Thu, 19 Aug 2010 20:05:30 +0000 (13:05 -0700)]
mds: implement get_previous_projected_xattrs; use in MDCache::cow_inode().

Fixes #351

15 years agomds: move snaprealm projection to operate cooperatively with inode projection.
Greg Farnum [Thu, 19 Aug 2010 18:47:50 +0000 (11:47 -0700)]
mds: move snaprealm projection to operate cooperatively with inode projection.

15 years agomds: move inode and xattr projection into projected_nodes list.
Greg Farnum [Tue, 17 Aug 2010 23:08:46 +0000 (16:08 -0700)]
mds: move inode and xattr projection into projected_nodes list.

15 years agostart switching to use projected_nodes in projection and journaling code
Greg Farnum [Tue, 17 Aug 2010 18:21:11 +0000 (11:21 -0700)]
start switching to use projected_nodes in projection and journaling code

15 years agomds: CInode: create new projection_node with pointers for
Greg Farnum [Tue, 17 Aug 2010 18:19:02 +0000 (11:19 -0700)]
mds: CInode: create new projection_node with pointers for
inode, xattrs, and snaprealm.

15 years agonotes on snaprealm projection in project_inode situations
Greg Farnum [Tue, 17 Aug 2010 18:18:21 +0000 (11:18 -0700)]
notes on snaprealm projection in project_inode situations

15 years agomds: CDentry. Remove needlessly redundant inline if-else.
Greg Farnum [Tue, 17 Aug 2010 18:13:42 +0000 (11:13 -0700)]
mds: CDentry. Remove needlessly redundant inline if-else.

15 years agoqa: add simple snaprealm test script.
Greg Farnum [Tue, 17 Aug 2010 21:24:46 +0000 (14:24 -0700)]
qa: add simple snaprealm test script.

15 years agoMerge branch 'testing' into unstable
Sage Weil [Thu, 19 Aug 2010 17:47:19 +0000 (10:47 -0700)]
Merge branch 'testing' into unstable

15 years agomds: make null snapflush helper, and call on cap removal too
Sage Weil [Thu, 19 Aug 2010 17:13:38 +0000 (10:13 -0700)]
mds: make null snapflush helper, and call on cap removal too

Move remove_client_cap() from MDCache->Locker while we're at it!

15 years agomds: simplify/fix early null snapflush check, clean up comment
Sage Weil [Thu, 19 Aug 2010 16:57:50 +0000 (09:57 -0700)]
mds: simplify/fix early null snapflush check, clean up comment

15 years agoosd: carry ondisk write lock for cloned objects
Sage Weil [Thu, 19 Aug 2010 16:52:33 +0000 (09:52 -0700)]
osd: carry ondisk write lock for cloned objects

This fixes a race when reading and deleting objects, as evidenced by

 cp bigfile a
 mkdir .snap/foo
 rmdir a
 diff bigfile .snap/foo/a    <-- reads cloned object before it hits disk

Reproduced by snaptest-snap-rm-cmp.sh.

Signed-off-by: Sage Weil <sage@newdream.net>
15 years agomds: fix crash when REQSCATTER races with an actual scatter/MIX
Sage Weil [Wed, 18 Aug 2010 22:17:55 +0000 (15:17 -0700)]
mds: fix crash when REQSCATTER races with an actual scatter/MIX

15 years agomds: fix null snapflush logic
Sage Weil [Wed, 18 Aug 2010 20:49:11 +0000 (13:49 -0700)]
mds: fix null snapflush logic

We only want to do a null snapflush if we _know_ there isn't another one
coming: that is, there aren't any outstanding issued excl/wr cap bits at
the client.  The old test has the bitwise NOT backwards.  We can also
limit the test to the bits we care about.

15 years agomds: don't send null ack in do_snap_update
Sage Weil [Wed, 18 Aug 2010 20:45:43 +0000 (13:45 -0700)]
mds: don't send null ack in do_snap_update

(In this case, it's a null flushsnap.)

15 years agoqa: add snaptest-snap-rm-cmp
Sage Weil [Wed, 18 Aug 2010 20:44:34 +0000 (13:44 -0700)]
qa: add snaptest-snap-rm-cmp

This (usually) reproduced a bug where:

 - we write a big file
 - snap it
 - remove it.  this makes the mds cow it.
 - cp the snapped version.
   - mds syncs the head
   - client starts writeback
   - (sometimes!) client sends other caps back to the mds
     - mds does null flushsnap, not realizing a real one is still coming

15 years agomds: remove forward-on-nonauth-rdlock behavior
Sage Weil [Wed, 18 Aug 2010 20:16:57 +0000 (13:16 -0700)]
mds: remove forward-on-nonauth-rdlock behavior

The problem is that we may be rdlocking items with a different auth than
the main item we are modifying, so forwarding based on lock state is
inconsistent with our requirement that we be on the modified item's auth.

Either we can somehow mark whether the locked item is the "main thing" we
are operating on, or we can drop the forward behavior from the locker and
put any forwarding heuristics elsewhere.  I'm opting for the latter.

15 years agoauth: fix skipping of ~/ if $HOME subst fails
Sage Weil [Wed, 18 Aug 2010 19:56:53 +0000 (12:56 -0700)]
auth: fix skipping of ~/ if $HOME subst fails

We were breaking out of the loop entirely, and failing to check the rest
of the items in the path list.  Doh!

15 years agomds: oops, fix null snapflush fix
Sage Weil [Wed, 18 Aug 2010 17:38:40 +0000 (10:38 -0700)]
mds: oops, fix null snapflush fix

15 years agomds: clean up {have,get}_inode() definitions
Sage Weil [Wed, 18 Aug 2010 17:18:33 +0000 (10:18 -0700)]
mds: clean up {have,get}_inode() definitions

15 years agomds: fix null snapflush inode lookup
Sage Weil [Wed, 18 Aug 2010 17:18:21 +0000 (10:18 -0700)]
mds: fix null snapflush inode lookup

Don't use pick_inode_snap is totally wrong (it depends on the current set
of snaps, etc.).. look up the inode directly via the ino and last snapid,
which we have.  Fixes a failure at the assert.

Reported-by: Thomas Mueller <thomas@chaschperli.ch>
Signed-off-by: Sage Weil <sage@newdream.net>
15 years agorgw: fix commit warning.
Greg Farnum [Wed, 18 Aug 2010 17:27:48 +0000 (10:27 -0700)]
rgw: fix commit warning.
size_t is a long unsigned, not a long long unsigned.

15 years agoqa: add simple snaprealm test script.
Greg Farnum [Tue, 17 Aug 2010 21:24:46 +0000 (14:24 -0700)]
qa: add simple snaprealm test script.

15 years agomds: handle no flushsnap
Sage Weil [Tue, 17 Aug 2010 23:38:20 +0000 (16:38 -0700)]
mds: handle no flushsnap

We won't get a flushsnap when the client has EXCL/WR caps but no dirty
data.  The MDS needs to release the snapped inode's locks when it gets a
normal update but no FLUSHSNAP.