]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agokclient: xattrs, selective rb erasing, fix tree tear down
Yehuda Sadeh [Wed, 15 Apr 2009 23:01:06 +0000 (16:01 -0700)]
kclient: xattrs, selective rb erasing, fix tree tear down

16 years agokclient: make listxattr actually work
Yehuda Sadeh [Wed, 15 Apr 2009 22:12:05 +0000 (15:12 -0700)]
kclient: make listxattr actually work

16 years agokclient: xattr name length fixes
Yehuda Sadeh [Wed, 15 Apr 2009 21:24:53 +0000 (14:24 -0700)]
kclient: xattr name length fixes

16 years agokclient: initialize xattrs version
Yehuda Sadeh [Wed, 15 Apr 2009 21:00:29 +0000 (14:00 -0700)]
kclient: initialize xattrs version

16 years agokclient: send xattr name on setxattr
Yehuda Sadeh [Wed, 15 Apr 2009 18:43:47 +0000 (11:43 -0700)]
kclient: send xattr name on setxattr

16 years agokclient: verbose xattrs
Yehuda Sadeh [Wed, 15 Apr 2009 17:37:19 +0000 (10:37 -0700)]
kclient: verbose xattrs

16 years agokclient: list, get cached xattrs
Yehuda Sadeh [Tue, 14 Apr 2009 23:58:15 +0000 (16:58 -0700)]
kclient: list, get cached xattrs

16 years agokclient: don't copy null xattrs blob
Yehuda Sadeh [Tue, 14 Apr 2009 22:12:38 +0000 (15:12 -0700)]
kclient: don't copy null xattrs blob

16 years agokclient: send xattrs blob when dropping xattr rdcache
Yehuda Sadeh [Tue, 14 Apr 2009 22:11:27 +0000 (15:11 -0700)]
kclient: send xattrs blob when dropping xattr rdcache

16 years agokclient: preallocated buffer for the xattr blob
Yehuda Sadeh [Mon, 13 Apr 2009 23:39:11 +0000 (16:39 -0700)]
kclient: preallocated buffer for the xattr blob

16 years agokclient: xattrs cleanup, preallocate xattr structure
Yehuda Sadeh [Mon, 13 Apr 2009 20:07:26 +0000 (13:07 -0700)]
kclient: xattrs cleanup, preallocate xattr structure

16 years agokclient: don't rebuild xattr rbtree if exists
Yehuda Sadeh [Fri, 10 Apr 2009 23:37:52 +0000 (16:37 -0700)]
kclient: don't rebuild xattr rbtree if exists

16 years agokclient: fix some more xattr stuff, basic stuff works
Yehuda Sadeh [Fri, 10 Apr 2009 23:36:34 +0000 (16:36 -0700)]
kclient: fix some more xattr stuff, basic stuff works

16 years agokclient: some more xattr fixes
Yehuda Sadeh [Fri, 10 Apr 2009 23:01:55 +0000 (16:01 -0700)]
kclient: some more xattr fixes

16 years agokclient: xattr initalization and bug fixes
Yehuda Sadeh [Fri, 10 Apr 2009 22:54:38 +0000 (15:54 -0700)]
kclient: xattr initalization and bug fixes

16 years agokclient: xattr uses rbtree for indexing
Yehuda Sadeh [Fri, 10 Apr 2009 22:24:52 +0000 (15:24 -0700)]
kclient: xattr uses rbtree for indexing

16 years agomds: fix CInode::get_caps_wanted to do the shift on returned mask
Sage Weil [Thu, 16 Apr 2009 21:25:59 +0000 (14:25 -0700)]
mds: fix CInode::get_caps_wanted to do the shift on returned mask

16 years agomds: move simplelocks (auth, xattr) to EXCL in simple_eval
Sage Weil [Thu, 16 Apr 2009 21:12:21 +0000 (14:12 -0700)]
mds: move simplelocks (auth, xattr) to EXCL in simple_eval

Also move xattr lock to EXCL state on mkdir, create.

16 years agokclient: assign meaningful readdir offset to client-created dentry
Sage Weil [Wed, 15 Apr 2009 23:30:11 +0000 (16:30 -0700)]
kclient: assign meaningful readdir offset to client-created dentry

Set i_max_offset when I_COMPLETE flag is set.  Thereafter, and local
negative lookups will get the next unused offset.

Not coherent if we fall back to talking to the MDS.

16 years agomds: add mds_max_mem conf item, hook to check memory utilization
Sage Weil [Wed, 15 Apr 2009 23:14:10 +0000 (16:14 -0700)]
mds: add mds_max_mem conf item, hook to check memory utilization

16 years agomds: trim cache during tick, not every request
Sage Weil [Wed, 15 Apr 2009 22:18:06 +0000 (15:18 -0700)]
mds: trim cache during tick, not every request

More efficient

16 years agomds: put mds format magic in root inode, journal; check on start, replay
Sage Weil [Wed, 15 Apr 2009 22:07:04 +0000 (15:07 -0700)]
mds: put mds format magic in root inode, journal; check on start, replay

16 years agocontext: return error from C_Gather
Sage Weil [Wed, 15 Apr 2009 22:04:28 +0000 (15:04 -0700)]
context: return error from C_Gather

16 years agomds: kill rdcaps code
Sage Weil [Wed, 15 Apr 2009 21:29:26 +0000 (14:29 -0700)]
mds: kill rdcaps code

Since caps no longer time out, we no longer need to maintain an rdcaps
lru.  Good riddance.

16 years agomds: count caps, inodes with caps
Sage Weil [Wed, 15 Apr 2009 21:24:33 +0000 (14:24 -0700)]
mds: count caps, inodes with caps

16 years agotodo
Sage Weil [Wed, 15 Apr 2009 20:59:09 +0000 (13:59 -0700)]
todo

16 years agokclient: fix up dcache readdir
Sage Weil [Wed, 15 Apr 2009 20:58:55 +0000 (13:58 -0700)]
kclient: fix up dcache readdir

Code should behave with frags and seeks, though both are untested :).

16 years agokclient: initialize xattrs version
Yehuda Sadeh [Wed, 15 Apr 2009 21:01:38 +0000 (14:01 -0700)]
kclient: initialize xattrs version

16 years agokclient: send xattr name in setxattr
Yehuda Sadeh [Wed, 15 Apr 2009 19:45:50 +0000 (12:45 -0700)]
kclient: send xattr name in setxattr

16 years agouclient: make O_CREAT work
Sage Weil [Wed, 15 Apr 2009 14:53:41 +0000 (07:53 -0700)]
uclient: make O_CREAT work

16 years agokclient: do readdir from dcache when possible
Sage Weil [Tue, 14 Apr 2009 16:20:36 +0000 (09:20 -0700)]
kclient: do readdir from dcache when possible

If we have I_COMPLETE, do a readdir straight from the dcache.  When
we do a readdir prepopulate, reorder parent->d_subdirs to match the
mds order, so that the dcache readdir order matches.

Some wonkiness here to detect the end of directory.  There is also
some inconsistency if the directory changes mid-readdir and we
have to switch back to talking to the mds.

16 years agofilestore: clean up attr name, path buffer lengths
Sage Weil [Tue, 14 Apr 2009 20:45:28 +0000 (13:45 -0700)]
filestore: clean up attr name, path buffer lengths

16 years agofilestore: make path buffers longer
Sage Weil [Tue, 14 Apr 2009 19:45:28 +0000 (12:45 -0700)]
filestore: make path buffers longer

16 years agoscripts: fix mds and osd request latency checkers
Sage Weil [Tue, 14 Apr 2009 15:24:54 +0000 (08:24 -0700)]
scripts: fix mds and osd request latency checkers

16 years agomds: flush log in do_cap_update if there are unissued but wanted caps
Sage Weil [Tue, 14 Apr 2009 15:04:28 +0000 (08:04 -0700)]
mds: flush log in do_cap_update if there are unissued but wanted caps

16 years agomds: issue caps as needed in xlock_finish
Sage Weil [Tue, 14 Apr 2009 15:00:48 +0000 (08:00 -0700)]
mds: issue caps as needed in xlock_finish

We don't leave xlockdone via eval_gather, so we need a special call
to issue_caps.

16 years agodebug: make log symlinks relative if dirs match
Sage Weil [Tue, 14 Apr 2009 14:51:48 +0000 (07:51 -0700)]
debug: make log symlinks relative if dirs match

16 years agomds: eval_gather on cap removal
Sage Weil [Tue, 14 Apr 2009 14:44:14 +0000 (07:44 -0700)]
mds: eval_gather on cap removal

This fixes a purge_stray problem with a lingering auth_pin (due
to an unstable lock).

16 years agomds: never issue caps in file_eval
Sage Weil [Tue, 14 Apr 2009 14:29:38 +0000 (07:29 -0700)]
mds: never issue caps in file_eval

We should do it explicitly when it is appropriate.  Normally, that's
in eval_gather(), or when caps wanted changes, or something
similar.

When we explicitly issue caps, avoid scanning the whole list when
possible.

16 years agomds: hide stray dentries and inodes that are purging
Sage Weil [Tue, 14 Apr 2009 13:48:51 +0000 (06:48 -0700)]
mds: hide stray dentries and inodes that are purging

Otherwise we get unwanted references when the inode is supposed to
die.

16 years agomds: reorder some code
Sage Weil [Mon, 13 Apr 2009 17:04:36 +0000 (10:04 -0700)]
mds: reorder some code

16 years agomds: use rdlock_path_* for rename; fix helper paths
Sage Weil [Mon, 13 Apr 2009 16:35:30 +0000 (09:35 -0700)]
mds: use rdlock_path_* for rename; fix helper paths

16 years agomds: make dn vec accurate after rdlock_path_xlock_dentry
Sage Weil [Mon, 13 Apr 2009 14:09:52 +0000 (07:09 -0700)]
mds: make dn vec accurate after rdlock_path_xlock_dentry

16 years agomds: store up to two paths in MDRequest; generalize rdlock_path_*
Sage Weil [Sun, 12 Apr 2009 21:49:51 +0000 (14:49 -0700)]
mds: store up to two paths in MDRequest; generalize rdlock_path_*

Eventually we want to use those helpers for _both_ arguments of rename,
link.

16 years agomds: kill mdr->ref_snapdiri
Sage Weil [Sun, 12 Apr 2009 21:24:21 +0000 (14:24 -0700)]
mds: kill mdr->ref_snapdiri

The client handles the nosnap->snap namespace transition.

16 years agomds: move done_locking into acquire_locks
Sage Weil [Sun, 12 Apr 2009 21:19:45 +0000 (14:19 -0700)]
mds: move done_locking into acquire_locks

Be consistent.

16 years agomds: acquire_locks in callers, not rdlock_path_* helpers
Sage Weil [Sun, 12 Apr 2009 21:12:13 +0000 (14:12 -0700)]
mds: acquire_locks in callers, not rdlock_path_* helpers

This way we only call acquire_locks from one place, and avoid weird lock
reordering issues.

16 years agomds: refactor path_traverse, callers
Sage Weil [Sat, 11 Apr 2009 21:55:09 +0000 (14:55 -0700)]
mds: refactor path_traverse, callers

Mainly, we want path_traverse to do the work of giving us back the inode
the final dentry links to.  Simplify callers to use it.

16 years agotodo
Sage Weil [Sat, 11 Apr 2009 21:13:41 +0000 (14:13 -0700)]
todo

16 years agovstart: behave a bit better when sudoing
Sage Weil [Mon, 13 Apr 2009 17:19:47 +0000 (10:19 -0700)]
vstart: behave a bit better when sudoing

16 years agokclient: allocate cap releases outside of spinlock
Sage Weil [Mon, 13 Apr 2009 17:16:24 +0000 (10:16 -0700)]
kclient: allocate cap releases outside of spinlock

16 years agokclient: use FLUSH cap op on cap writeback
Sage Weil [Fri, 10 Apr 2009 22:59:11 +0000 (15:59 -0700)]
kclient: use FLUSH cap op on cap writeback

This is just to make the message logs easier to read.  The only
real distinction is that a FLUSH won't release caps, only write
dirty ones back.

16 years agokclient: only check auth cap for WRBUFFER, max_size checks
Sage Weil [Fri, 10 Apr 2009 21:03:02 +0000 (14:03 -0700)]
kclient: only check auth cap for WRBUFFER, max_size checks

16 years agokclient: switch check_caps interface to use flags field
Sage Weil [Fri, 10 Apr 2009 20:57:32 +0000 (13:57 -0700)]
kclient: switch check_caps interface to use flags field

16 years agokclient: fix setxattr
Sage Weil [Fri, 10 Apr 2009 20:53:38 +0000 (13:53 -0700)]
kclient: fix setxattr

This was broken ages ago with the mds client interface was switched
up a bit.

16 years agokclient: kill ceph_release_caps and check_caps drop arg
Sage Weil [Fri, 10 Apr 2009 20:42:37 +0000 (13:42 -0700)]
kclient: kill ceph_release_caps and check_caps drop arg

16 years agokclient: fix up cap/wanted delayed release logic
Sage Weil [Fri, 10 Apr 2009 20:27:11 +0000 (13:27 -0700)]
kclient: fix up cap/wanted delayed release logic

16 years agomds: don't reissue caps on embedded request releases
Sage Weil [Fri, 10 Apr 2009 20:26:37 +0000 (13:26 -0700)]
mds: don't reissue caps on embedded request releases

16 years agomds: default to issue_caps in file_eval, _unless_ we are dropping caps
Sage Weil [Fri, 10 Apr 2009 04:10:44 +0000 (21:10 -0700)]
mds: default to issue_caps in file_eval, _unless_ we are dropping caps

16 years agomon: make log messages a bit nicer
Sage Weil [Fri, 10 Apr 2009 00:04:33 +0000 (17:04 -0700)]
mon: make log messages a bit nicer

16 years agomds: journal max_size update as loner, if any
Sage Weil [Thu, 9 Apr 2009 23:40:35 +0000 (16:40 -0700)]
mds: journal max_size update as loner, if any

This avoids calling file_excl if the lock is already LOCK_EXCL.

16 years agokclient: less chatty
Sage Weil [Thu, 9 Apr 2009 23:28:53 +0000 (16:28 -0700)]
kclient: less chatty

16 years agomds: include cap, dentry lease release in request messages
Sage Weil [Thu, 9 Apr 2009 22:28:11 +0000 (15:28 -0700)]
mds: include cap, dentry lease release in request messages

Embed dentry and cap releases inside mds request messages.  This
avoids the overhead of sending additional messages, although it
does limit the release to the mds the request is going to.  That
is normally fine, since updates go to the auth MDS, and that is
usually who we're dealing with.

16 years agomds: avoid dup change_max in _do_cap_update
Sage Weil [Thu, 9 Apr 2009 22:16:37 +0000 (15:16 -0700)]
mds: avoid dup change_max in _do_cap_update

Set a flag to prevent issue_caps from checking the max_size (since
we're about to journal that update anyway).  This avoids some dup
cap messages.

16 years agokclient: dequeue cap on non-drop send caps
Sage Weil [Thu, 9 Apr 2009 21:49:11 +0000 (14:49 -0700)]
kclient: dequeue cap on non-drop send caps

If we are doing a full update (i.e., not a drop, where wanted is
censored), remove ourselves from the delay queue.

16 years agomds: drop 'careful' caps concept
Sage Weil [Thu, 9 Apr 2009 21:43:04 +0000 (14:43 -0700)]
mds: drop 'careful' caps concept

This was originally needed before we were smart about projected
vs non-projected values, and making them visible to only the
xlocking or excl client.  No more.

16 years agomds: choose reasonable state after xlock finishes
Sage Weil [Thu, 9 Apr 2009 21:42:15 +0000 (14:42 -0700)]
mds: choose reasonable state after xlock finishes

16 years agomds: better max_size lock checks when EXCL
Sage Weil [Thu, 9 Apr 2009 21:42:01 +0000 (14:42 -0700)]
mds: better max_size lock checks when EXCL

Choose an appropriate lock state to change to when we need to
journal a max_size update (-> 0, usually).

16 years agomds: stay in EXCL and keep loner until wrlocks drain
Sage Weil [Thu, 9 Apr 2009 21:40:45 +0000 (14:40 -0700)]
mds: stay in EXCL and keep loner until wrlocks drain

Otherwise we go to MIX and revoke caps from the loner, which is
lame.

16 years agomds: clean up can_wrlock() so that it checks of loner
Sage Weil [Thu, 9 Apr 2009 21:39:47 +0000 (14:39 -0700)]
mds: clean up can_wrlock() so that it checks of loner

Previously the EXCL state/cap check was outside of can_wrlock,
which is yucky.

16 years agomds: replace WANT cap op with DROP
Sage Weil [Thu, 9 Apr 2009 21:09:45 +0000 (14:09 -0700)]
mds: replace WANT cap op with DROP

While it's not always clear when we are expanding wanted (bc the
client may have skewed perception of mds_wanted), it IS always
clear when we are explicitly _dropping_ caps and don't want them
reissued to us.  And that's the behavior we're trying to avoid
anyway.

16 years agomds: use EXCL instead of LOCK to adjust max_size if loner
Sage Weil [Thu, 9 Apr 2009 20:30:11 +0000 (13:30 -0700)]
mds: use EXCL instead of LOCK to adjust max_size if loner

16 years agomds: don't rdlock_try authlock for path_traverse permission check
Sage Weil [Thu, 9 Apr 2009 20:26:17 +0000 (13:26 -0700)]
mds: don't rdlock_try authlock for path_traverse permission check

We don't actually check anything anyway, just ping the lock.

If the client is trusted with AUTH_EXCL, this is pointless anyway.
It is only really useful with untrusted (e.g., fuse) clients, but
they'll need some sort of special support for that later.

16 years agomds: issue caps in file_eval only if needed, indicated by WANTED cap op
Sage Weil [Thu, 9 Apr 2009 20:21:34 +0000 (13:21 -0700)]
mds: issue caps in file_eval only if needed, indicated by WANTED cap op

We can't always issue_caps in file_eval or cap releases won't work.

Sometimes the client wanted shrink is missed, though, and a wanted
expansion is sent that doesn't actually change wanted.  In those
cases, we DO need to issue caps.  Use a separate cap op WANTED so
the mds knows when the client is asking for caps.

16 years agomds: fix file_eval to issue caps from EXCL state
Sage Weil [Thu, 9 Apr 2009 19:34:24 +0000 (12:34 -0700)]
mds: fix file_eval to issue caps from EXCL state

Before it wasn't getting called in some cases.

16 years agotodo
Sage Weil [Wed, 8 Apr 2009 23:29:19 +0000 (16:29 -0700)]
todo

16 years agokclient: only flush caps in write_inode if wait=1
Sage Weil [Wed, 8 Apr 2009 23:26:22 +0000 (16:26 -0700)]
kclient: only flush caps in write_inode if wait=1

The problem is that on delayed writeback, vm calls write_inode and
THEN writepages.  Which means we still have WRBUFFER caps used,
so sending a cap release then is somewhat counter productive.  If
we don't release wanted, we'll have to again later.  And if we do,
the mds will explicitly revoke our WRBUFFER caps so that it can
journal the max_size to 0.  Yuck.

So.  If wait, then do the cap flush immediately, as before.  If
!wait, queue up the caps at the front of the delay queue so that
it goes the next time we check_delayed_caps.  This catches the
sync() and umount cases (basically the same, really).

On fsync, queue the caps for write, but don't wait, since the mds
can recover the size/mtime anyway.

16 years agokclient: maintain min and max cap hold delays
Sage Weil [Wed, 8 Apr 2009 22:17:04 +0000 (15:17 -0700)]
kclient: maintain min and max cap hold delays

Set a minimum amount of time we keep caps wanted bits even after
the file is closed.  Before that time, even if we are sending a
cap message, we tell the mds we still want the caps.  After the min
but before the max, we will tell the mds we no longer need them
IF we are sending a cap message for some other reason.

The caps_delay queue works as before based on the max timeout. When
that timer goes off, send a new message to release the wanted bits.

In most cases, this now releases wanted bits when we write back the
file size to the mds after writepages, which means only a single
message after we write and close a file.  Yay!

16 years agokclient: drop FILE_RD if !wanted and max_size non-zero
Sage Weil [Wed, 8 Apr 2009 21:41:24 +0000 (14:41 -0700)]
kclient: drop FILE_RD if !wanted and max_size non-zero

If we are dropping wanted and max_size is non-zero, the mds will
want to journal the update, which will mean syncing the lock and
recalling FILE_RD anyway.

16 years agomds: adjust mds client request format to include optional releases
Sage Weil [Wed, 8 Apr 2009 21:40:46 +0000 (14:40 -0700)]
mds: adjust mds client request format to include optional releases

The goal is to release caps and/or dentry leases in the same
message as the request we are dropping them for.  We will already
get caps/leases reissued with the response, in most cases.

Kill the mds replication hack while we're at it.  That should be
cleaned up if/when it is reincarnated.

16 years agomds: separate CREATE vs OPEN handling
Sage Weil [Wed, 8 Apr 2009 20:53:45 +0000 (13:53 -0700)]
mds: separate CREATE vs OPEN handling

These are now distinct ops.

16 years agomds: allow full dir lease (FILE_RDCACHE) on root ino
Sage Weil [Wed, 8 Apr 2009 18:28:40 +0000 (11:28 -0700)]
mds: allow full dir lease (FILE_RDCACHE) on root ino

Now that root changes are persistent, and client looks at
rdcache_gen and not i_version anyway, this will work.

16 years agokclient: drop root ino special cases
Sage Weil [Wed, 8 Apr 2009 18:27:43 +0000 (11:27 -0700)]
kclient: drop root ino special cases

Now that root ino changes are persistent on the mds, we can remove
various special cases that disallow I_CONTENT checks.

16 years agokclient: mark dentries with dir rdcache_gen, not i_version
Sage Weil [Wed, 8 Apr 2009 18:14:54 +0000 (11:14 -0700)]
kclient: mark dentries with dir rdcache_gen, not i_version

The i_version may change if we are doing dir updates with an excl
lock on the dir, but our dcache should remain consistent over those
operations (unless we lack a trace, and fill_trace clears
I_COMPLETE in that case).  Instead, we want to effectively
invalidate prior dentries when we are _newly_ issued RDCACHE and
don't know what has changed... which is exactly what rdcache_gen is
for.

16 years agokclient: don't clear I_COMPLETE on dentry revalidate failure
Sage Weil [Wed, 8 Apr 2009 18:05:31 +0000 (11:05 -0700)]
kclient: don't clear I_COMPLETE on dentry revalidate failure

I_COMPLETE + FILE_RDCACHE means we have the full set of dentries.
If a revalidating dentry is part of the current set, then it will
successfully revalidate.  The only reason revalidate would fail is
if the dentry is not part of the current set, or we don't hold
FILE_RDCACHE.. and in those cases clearing I_COMPLETE is either
wrong or unnecessary.  Revalidate will already fail when we lose
FILE_RDCACHE, or when a dentry is released, or when a new RDCACHE
is issued and our rdcache_gen changes.

16 years agokclient: reverse logic of O_CREAT create vs open check
Sage Weil [Wed, 8 Apr 2009 18:03:15 +0000 (11:03 -0700)]
kclient: reverse logic of O_CREAT create vs open check

16 years agotodo
Sage Weil [Tue, 7 Apr 2009 23:58:34 +0000 (16:58 -0700)]
todo

16 years agoconfig: remove INSTALL_PREFIX
Sage Weil [Tue, 7 Apr 2009 23:58:08 +0000 (16:58 -0700)]
config: remove INSTALL_PREFIX

On a 'norma' install, it's /usr, which isn't helpful.  If anything, we
need sysconfdir, etc. individually.  Blech.

16 years agouclient: fix up caps some. make dentry leases work
Sage Weil [Tue, 7 Apr 2009 23:34:22 +0000 (16:34 -0700)]
uclient: fix up caps some.  make dentry leases work

16 years agouclient: set fsid in statfs request
Sage Weil [Tue, 7 Apr 2009 22:36:07 +0000 (15:36 -0700)]
uclient: set fsid in statfs request

16 years agokclient: fix ino returned in fstat for 32 bit arch
Yehuda Sadeh [Tue, 7 Apr 2009 23:31:59 +0000 (16:31 -0700)]
kclient: fix ino returned in fstat for 32 bit arch

16 years agokclient: don't alter mds_wanted caps if dropping caps
Yehuda Sadeh [Tue, 7 Apr 2009 22:45:07 +0000 (15:45 -0700)]
kclient: don't alter mds_wanted caps if dropping caps

16 years agovstart: kill bashisms
Sage Weil [Tue, 7 Apr 2009 21:51:35 +0000 (14:51 -0700)]
vstart: kill bashisms

16 years agokclient: remove alignment restrictions on O_DIRECT reads and writes
Sage Weil [Tue, 7 Apr 2009 16:29:39 +0000 (09:29 -0700)]
kclient: remove alignment restrictions on O_DIRECT reads and writes

These aren't needed, since we aren't restricted by DMA to a hardware disk
device or any such thing.  (And even if they were, it'd probably be
sector alignment, not page alignment.)

16 years agomds: fix compilation error
Yehuda Sadeh [Tue, 7 Apr 2009 21:29:55 +0000 (14:29 -0700)]
mds: fix compilation error

16 years agomds: bump mds protocol
Yehuda Sadeh [Tue, 7 Apr 2009 21:24:24 +0000 (14:24 -0700)]
mds: bump mds protocol

16 years agomds: add CEPH_CAP_OP_REVOKE
Yehuda Sadeh [Tue, 7 Apr 2009 21:19:03 +0000 (14:19 -0700)]
mds: add CEPH_CAP_OP_REVOKE

16 years agokclient: clear di->lease_session when dropping session
Yehuda Sadeh [Tue, 7 Apr 2009 19:35:37 +0000 (12:35 -0700)]
kclient: clear di->lease_session when dropping session

16 years agomds: flush log when expanding caps and filelock is unstable
Yehuda Sadeh [Mon, 6 Apr 2009 22:53:10 +0000 (15:53 -0700)]
mds: flush log when expanding caps and filelock is unstable

16 years agomds, kclient: add CEPH_MDS_OP_CREATE operation
Yehuda Sadeh [Mon, 6 Apr 2009 19:29:29 +0000 (12:29 -0700)]
mds, kclient: add CEPH_MDS_OP_CREATE operation