]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agomds: avoid going to MIX when unnecessary
Sage Weil [Mon, 30 Mar 2009 20:30:39 +0000 (13:30 -0700)]
mds: avoid going to MIX when unnecessary

16 years agokclient: do async wanted adjustment on open if we hold any caps
Sage Weil [Mon, 30 Mar 2009 20:09:30 +0000 (13:09 -0700)]
kclient: do async wanted adjustment on open if we hold any caps

16 years agomds: issue FILE_RD+FILE_RDCACHE caps speculatively
Sage Weil [Mon, 30 Mar 2009 20:12:24 +0000 (13:12 -0700)]
mds: issue FILE_RD+FILE_RDCACHE caps speculatively

This should let us do readdir + open + read with no mds
interaction on the open.

16 years agokclient: fix touch_cap; release old caps
Sage Weil [Mon, 30 Mar 2009 19:50:50 +0000 (12:50 -0700)]
kclient: fix touch_cap; release old caps

16 years agokclient: make clean_caps lru; explicitly release old caps
Sage Weil [Mon, 30 Mar 2009 18:38:12 +0000 (11:38 -0700)]
kclient: make clean_caps lru; explicitly release old caps

Use check_caps for now.  Eventually we want something more
efficient.

16 years agokclient: drop rdcaps (cap expiration) in favor of clean_caps
Sage Weil [Mon, 30 Mar 2009 18:04:58 +0000 (11:04 -0700)]
kclient: drop rdcaps (cap expiration) in favor of clean_caps

This simplifies locking, too, since we have a less complication
definition of clean vs dirty (i.e. one that doesn't depend on
wanted and requires put_fmode weirdness).

16 years agokclient: drop cap renewal
Sage Weil [Mon, 30 Mar 2009 18:03:37 +0000 (11:03 -0700)]
kclient: drop cap renewal

16 years agokclient: keep track of which cap is authoritative
Sage Weil [Mon, 30 Mar 2009 17:10:05 +0000 (10:10 -0700)]
kclient: keep track of which cap is authoritative

16 years agokclient: drop unused USE_CAP_MDS
Sage Weil [Fri, 27 Mar 2009 22:56:17 +0000 (15:56 -0700)]
kclient: drop unused USE_CAP_MDS

16 years agokclient: remove unused dentry in ceph_open
Sage Weil [Fri, 27 Mar 2009 22:56:08 +0000 (15:56 -0700)]
kclient: remove unused dentry in ceph_open

16 years agomore cap notes
Sage Weil [Fri, 27 Mar 2009 21:58:34 +0000 (14:58 -0700)]
more cap notes

16 years agokclient: take CAP_PIN refs on requests
Sage Weil [Fri, 27 Mar 2009 21:46:37 +0000 (14:46 -0700)]
kclient: take CAP_PIN refs on requests

16 years agocap todos
Sage Weil [Fri, 27 Mar 2009 21:35:24 +0000 (14:35 -0700)]
cap todos

16 years agokclient: i_pin_ref
Sage Weil [Fri, 27 Mar 2009 21:35:06 +0000 (14:35 -0700)]
kclient: i_pin_ref

Ability to carry refs on CAP_PIN.

16 years agokclient: fix deep mount refcounting on s_root
Sage Weil [Fri, 27 Mar 2009 20:52:59 +0000 (13:52 -0700)]
kclient: fix deep mount refcounting on s_root

16 years agokclient: handle mds replies with no trace.
Sage Weil [Fri, 27 Mar 2009 19:54:01 +0000 (12:54 -0700)]
kclient: handle mds replies with no trace.

Passes posix test suite.

16 years agomds: fix rename common parent checks
Sage Weil [Fri, 27 Mar 2009 17:53:00 +0000 (10:53 -0700)]
mds: fix rename common parent checks

Rewrite common parent logic in terms of base inodes, since the
traces may initially be empty, and we may be renaming items in the
root directory.

Also look at _projected_ parents, not current parents.

16 years agokclient: clean up
Sage Weil [Fri, 27 Mar 2009 17:34:23 +0000 (10:34 -0700)]
kclient: clean up

16 years agokclient: d_move only on rename
Sage Weil [Fri, 27 Mar 2009 17:34:15 +0000 (10:34 -0700)]
kclient: d_move only on rename

16 years agomds: expose projected inode to loners, even if they don't have EXCL yet
Sage Weil [Fri, 27 Mar 2009 17:33:57 +0000 (10:33 -0700)]
mds: expose projected inode to loners, even if they don't have EXCL yet

If they are a (new) loner, they soon will!

16 years agomds: return open dn to client when it wants it
Sage Weil [Thu, 26 Mar 2009 23:42:27 +0000 (16:42 -0700)]
mds: return open dn to client when it wants it

16 years agopartial cleanup of snap related ops. still not really working.
Sage Weil [Thu, 26 Mar 2009 23:20:05 +0000 (16:20 -0700)]
partial cleanup of snap related ops.  still not really working.

16 years agokclient: set s_root, fix misc refcounting
Sage Weil [Thu, 26 Mar 2009 20:58:42 +0000 (13:58 -0700)]
kclient: set s_root, fix misc refcounting

16 years agomds: include diri in readdir result
Sage Weil [Thu, 26 Mar 2009 20:53:33 +0000 (13:53 -0700)]
mds: include diri in readdir result

16 years agokclient: make mds requests relative to inode or single dentry
Sage Weil [Thu, 26 Mar 2009 19:52:43 +0000 (12:52 -0700)]
kclient: make mds requests relative to inode or single dentry

16 years agomds: simplify reply trace
Sage Weil [Thu, 26 Mar 2009 18:52:17 +0000 (11:52 -0700)]
mds: simplify reply trace

We have either or both of:
  dir inode + dirfrag + dentry
  target inode

And that's it.

Clean up the server reply interface a bit.

16 years agofilepath: leave off / if bare inode (no relative part)
Sage Weil [Thu, 26 Mar 2009 18:49:00 +0000 (11:49 -0700)]
filepath: leave off / if bare inode (no relative part)

16 years agokclient: simplify fill_trace, mount
Sage Weil [Wed, 25 Mar 2009 23:41:43 +0000 (16:41 -0700)]
kclient: simplify fill_trace, mount

Don't set sb->s_root.

16 years agotrain wreck
Sage Weil [Tue, 24 Mar 2009 23:36:10 +0000 (16:36 -0700)]
train wreck

16 years agomds: specify number of dentries want in mds request
Sage Weil [Tue, 24 Mar 2009 21:34:37 +0000 (14:34 -0700)]
mds: specify number of dentries want in mds request

Let the client inform the MDS whether it wants dentry linkage info
(i.e., whether it holds the directory i_mutex).

16 years agotodo
Sage Weil [Wed, 25 Mar 2009 23:48:00 +0000 (16:48 -0700)]
todo

16 years agokclient: kill bad r_locked_dir in getattr
Sage Weil [Wed, 25 Mar 2009 23:28:17 +0000 (16:28 -0700)]
kclient: kill bad r_locked_dir in getattr

16 years agomds: fix unlink stray snaprealm reference
Sage Weil [Wed, 25 Mar 2009 23:27:18 +0000 (16:27 -0700)]
mds: fix unlink stray snaprealm reference

Stray dir doesn't get a snaprealm currently.

16 years agomds: make root dir default to 0755
Sage Weil [Wed, 25 Mar 2009 22:31:16 +0000 (15:31 -0700)]
mds: make root dir default to 0755

16 years agoconfig: make log sym dir default to log dir
Sage Weil [Wed, 25 Mar 2009 22:31:03 +0000 (15:31 -0700)]
config: make log sym dir default to log dir

16 years agoconfig: open conf file readonly
Sage Weil [Wed, 25 Mar 2009 21:22:53 +0000 (14:22 -0700)]
config: open conf file readonly

16 years agotodo
Sage Weil [Wed, 25 Mar 2009 19:19:36 +0000 (12:19 -0700)]
todo

16 years agomds: fix auth_pin vs xlocks
Sage Weil [Wed, 25 Mar 2009 18:41:48 +0000 (11:41 -0700)]
mds: fix auth_pin vs xlocks

Look at lock->is_stable() to determine whether auth_pin should be
taken or dropped in xlock_start() and eval_gather().

16 years agokclient: fix r_locked_dir to match VFS locking
Sage Weil [Wed, 25 Mar 2009 18:34:26 +0000 (11:34 -0700)]
kclient: fix r_locked_dir to match VFS locking

Make sure r_locked_dir properly matches what the VFS is actually
doing.

16 years agodebian: no restart on upgrade, no start
Sage Weil [Tue, 24 Mar 2009 23:46:01 +0000 (16:46 -0700)]
debian: no restart on upgrade, no start

16 years agoconf: compare mon addr in monmap and in conf, warn
Yehuda Sadeh [Tue, 24 Mar 2009 23:44:07 +0000 (16:44 -0700)]
conf: compare mon addr in monmap and in conf, warn

16 years agotodo
Sage Weil [Tue, 24 Mar 2009 23:40:39 +0000 (16:40 -0700)]
todo

16 years agomds: avoid including caps in readdir items if snaprealm differs
Sage Weil [Tue, 24 Mar 2009 22:12:50 +0000 (15:12 -0700)]
mds: avoid including caps in readdir items if snaprealm differs

Since the reply snaprealm starts at the _dir_ inode, we want to
exclude caps for any nested items if the realm differs.  Otherwise
the client is screwed...

16 years agomds: no snaprealm for stray dir is needed
Sage Weil [Tue, 24 Mar 2009 22:11:27 +0000 (15:11 -0700)]
mds: no snaprealm for stray dir is needed

16 years agoinitscript: don't fail if $btrfs_path already mounted
Sage Weil [Tue, 24 Mar 2009 21:53:52 +0000 (14:53 -0700)]
initscript: don't fail if $btrfs_path already mounted

16 years agoosd: separate CEPH_OSD_OP_* and FLAGS_* namespaces
Sage Weil [Tue, 24 Mar 2009 21:02:35 +0000 (14:02 -0700)]
osd: separate CEPH_OSD_OP_* and FLAGS_* namespaces

Ops and op flags are separate namespaces; fix the naming.

16 years agotodo
Sage Weil [Tue, 24 Mar 2009 20:48:49 +0000 (13:48 -0700)]
todo

16 years agokclient: print reassert_version in /debug/ceph/.../osdc
Sage Weil [Tue, 24 Mar 2009 20:47:56 +0000 (13:47 -0700)]
kclient: print reassert_version in /debug/ceph/.../osdc

If it's there, it means a sync write was acked but not yet
committed.

16 years agobuffer: check posix_memalign result code
Sage Weil [Tue, 24 Mar 2009 20:13:52 +0000 (13:13 -0700)]
buffer: check posix_memalign result code

16 years agokclient: clean osd read requests after receiving reply
Yehuda Sadeh [Tue, 24 Mar 2009 20:35:43 +0000 (13:35 -0700)]
kclient: clean osd read requests after receiving reply

16 years agoinitscripts: make do_cmd properly bail when command fails
Sage Weil [Tue, 24 Mar 2009 19:55:01 +0000 (12:55 -0700)]
initscripts: make do_cmd properly bail when command fails

And print what command it was that failed.

16 years agoconf: exit if -c specified and conf file not found
Yehuda Sadeh [Tue, 24 Mar 2009 19:47:11 +0000 (12:47 -0700)]
conf: exit if -c specified and conf file not found

16 years agoinitscript: fix .conf push to other nodes
Sage Weil [Tue, 24 Mar 2009 19:33:11 +0000 (12:33 -0700)]
initscript: fix .conf push to other nodes

16 years agotodo
Sage Weil [Tue, 24 Mar 2009 19:28:18 +0000 (12:28 -0700)]
todo

16 years agomds: creation, subtree map tweaks
Sage Weil [Tue, 24 Mar 2009 19:27:12 +0000 (12:27 -0700)]
mds: creation, subtree map tweaks

Don't include mydir if it doesn't exist just yet, etc.

16 years agokclient: fix default timeout values
Yehuda Sadeh [Tue, 24 Mar 2009 19:23:23 +0000 (12:23 -0700)]
kclient: fix default timeout values

16 years agokclient: add configurable caps_delay option
Yehuda Sadeh [Tue, 24 Mar 2009 19:20:35 +0000 (12:20 -0700)]
kclient: add configurable caps_delay option

16 years agokclient: less verbose
Yehuda Sadeh [Mon, 23 Mar 2009 23:43:07 +0000 (16:43 -0700)]
kclient: less verbose

16 years agomkcephfs: fix monmap/osdmap copying
Sage Weil [Tue, 24 Mar 2009 19:15:38 +0000 (12:15 -0700)]
mkcephfs: fix monmap/osdmap copying

16 years agomds: fix fs creation, replay
Sage Weil [Tue, 24 Mar 2009 18:56:59 +0000 (11:56 -0700)]
mds: fix fs creation, replay

Include mydir in subtree map, and journal it on mkfs.  Invent
root inode during replay as needed (it will get rejoined).

16 years agokclient: locally open file based on what MDS thinks we want, not what we still want
Sage Weil [Tue, 24 Mar 2009 18:18:52 +0000 (11:18 -0700)]
kclient: locally open file based on what MDS thinks we want, not what we still want

As long as we have our interest in the caps still registered with
the MDS, we can do a local open.  Checking what we currently still
want is only helpful if the same file still is open by another
process or something.  Now, we can do a local open on a close +
wait + reopen, as long as we haven't done a cap release yet.

16 years agokclient: properly maintain mds_wanted value
Sage Weil [Tue, 24 Mar 2009 18:17:16 +0000 (11:17 -0700)]
kclient: properly maintain mds_wanted value

Keep track of what wanted caps we have registered with the mds.

16 years agomds: put pending (not added) caps in reply caps
Sage Weil [Tue, 24 Mar 2009 18:14:48 +0000 (11:14 -0700)]
mds: put pending (not added) caps in reply caps

Otherwise the client thinks it had fewer caps than it has.

16 years agokclient: do not retain unEXPIREABLE caps if !wanted
Sage Weil [Tue, 24 Mar 2009 17:01:48 +0000 (10:01 -0700)]
kclient: do not retain unEXPIREABLE caps if !wanted

16 years agokclient: schedule check_caps if unwanted, unEXPIREABLE caps are issued by the mds
Sage Weil [Tue, 24 Mar 2009 17:00:53 +0000 (10:00 -0700)]
kclient: schedule check_caps if unwanted, unEXPIREABLE caps are issued by the mds

16 years agotodos
Sage Weil [Tue, 24 Mar 2009 02:57:59 +0000 (19:57 -0700)]
todos

16 years agokclient: debugfs cleanups
Sage Weil [Tue, 24 Mar 2009 02:57:51 +0000 (19:57 -0700)]
kclient: debugfs cleanups

16 years agocommon: reorder config option parsing vs defaults for daemonization
Sage Weil [Mon, 23 Mar 2009 23:49:22 +0000 (16:49 -0700)]
common: reorder config option parsing vs defaults for daemonization

16 years agomds: fix xlock authpinning
Sage Weil [Mon, 23 Mar 2009 23:04:51 +0000 (16:04 -0700)]
mds: fix xlock authpinning

Remove extra auth_pin call.. we pin when going from LOCK
to LOCK_XLOCK.

16 years agokclient: adjust makefile, patch series for sysfs->debugfs
Sage Weil [Mon, 23 Mar 2009 22:56:36 +0000 (15:56 -0700)]
kclient: adjust makefile, patch series for sysfs->debugfs

16 years agomonclient: fix error message to suggest correct arg (-c not -C)
Sage Weil [Mon, 23 Mar 2009 22:40:16 +0000 (15:40 -0700)]
monclient: fix error message to suggest correct arg (-c not -C)

16 years agomakefile: add new files
Sage Weil [Mon, 23 Mar 2009 22:39:58 +0000 (15:39 -0700)]
makefile: add new files

16 years agokclient: remove sysfs stuff
Yehuda Sadeh [Mon, 23 Mar 2009 22:49:20 +0000 (15:49 -0700)]
kclient: remove sysfs stuff

16 years agokclient: put all info stuff in debugfs
Yehuda Sadeh [Mon, 23 Mar 2009 22:43:01 +0000 (15:43 -0700)]
kclient: put all info stuff in debugfs

16 years agotodo
Sage Weil [Mon, 23 Mar 2009 22:22:59 +0000 (15:22 -0700)]
todo

16 years agocrun: remove bashisms
Sage Weil [Mon, 23 Mar 2009 22:22:46 +0000 (15:22 -0700)]
crun: remove bashisms

16 years agoinitscript: make crun/valgrind init arguments override conf
Sage Weil [Mon, 23 Mar 2009 22:17:21 +0000 (15:17 -0700)]
initscript: make crun/valgrind init arguments override conf

16 years agoosd: only set mtime if non-zero
Sage Weil [Mon, 23 Mar 2009 22:14:51 +0000 (15:14 -0700)]
osd: only set mtime if non-zero

This lets you do things like lock or post-truncate without
changing the mtime.

16 years agoobjecter: provide mtime for writes
Sage Weil [Mon, 23 Mar 2009 22:13:54 +0000 (15:13 -0700)]
objecter: provide mtime for writes

16 years agokclient: set mtime on writes
Sage Weil [Mon, 23 Mar 2009 21:48:39 +0000 (14:48 -0700)]
kclient: set mtime on writes

Since we don't track per-page dirty timestamps or anything like
that, we just use the inode mtime for writeback, and the current
time for sync writes.

16 years agodebian: which gcc/g++, not fixed at 4.1
Sage Weil [Mon, 23 Mar 2009 21:41:33 +0000 (14:41 -0700)]
debian: which gcc/g++, not fixed at 4.1

16 years agoosd: set mtime based on client-provided timestamp
Sage Weil [Mon, 23 Mar 2009 21:40:35 +0000 (14:40 -0700)]
osd: set mtime based on client-provided timestamp

Ideally, this should be the time the data was dirtied (i.e. when
the write logically occured, as opposed to when it was written
back).

16 years agomds: rejoin dirfragtreelock too
Sage Weil [Mon, 23 Mar 2009 21:07:58 +0000 (14:07 -0700)]
mds: rejoin dirfragtreelock too

We need to rejoin _all_ scatterlocks.

16 years agofakefuse: fix common_init call
Sage Weil [Mon, 23 Mar 2009 20:55:29 +0000 (13:55 -0700)]
fakefuse: fix common_init call

16 years agomds: fix xlock behavior
Sage Weil [Mon, 23 Mar 2009 18:58:06 +0000 (11:58 -0700)]
mds: fix xlock behavior

We need to insert a gather from lock->xlock and xlockdone->xlock.
So, we add a PREXLOCK state, so that we go lock->prexlock->xlock.
Adjust auth_pin rules accordingly (it is unfortunately a bit wonky,
since the PREXLOCK gathered-to state is still deemed 'unstable').

16 years agomds: properly check xlocker caps
Sage Weil [Mon, 23 Mar 2009 18:43:10 +0000 (11:43 -0700)]
mds: properly check xlocker caps

16 years agomds: set xlocks done _before_ setting trace dist
Sage Weil [Mon, 23 Mar 2009 17:59:54 +0000 (10:59 -0700)]
mds: set xlocks done _before_ setting trace dist

This allows caps on xlocked data to be exposed to the client.

16 years agomds: allow caps to be selectively issued to xlockers
Sage Weil [Mon, 23 Mar 2009 17:59:30 +0000 (10:59 -0700)]
mds: allow caps to be selectively issued to xlockers

This mirrors the exposure of projected updates to the clients that
make them: we also give them an RDCACHE cap on that metadata.

16 years agokclient: ceph_open caps check cleanup
Sage Weil [Mon, 23 Mar 2009 16:35:58 +0000 (09:35 -0700)]
kclient: ceph_open caps check cleanup

Make debug output more helpful.  Clean up var names.

16 years agomds: restructure mds root directory
Sage Weil [Fri, 20 Mar 2009 23:56:35 +0000 (16:56 -0700)]
mds: restructure mds root directory

Create .ceph/mds%d/{stray/,journal}.  Restructure mds creation,
startup, and shutdown procedures to create, import (and populate),
and export the per-mds directory.

16 years agomds: make scatterlock flush on mix <-> lock transitions, not just mix <-> sync
Sage Weil [Fri, 20 Mar 2009 23:54:20 +0000 (16:54 -0700)]
mds: make scatterlock flush on mix <-> lock transitions, not just mix <-> sync

Among other things, this fixes up mds (>0) shutdown.

16 years agoauth: fix uninitialized variable
Yehuda Sadeh [Fri, 20 Mar 2009 21:19:27 +0000 (14:19 -0700)]
auth: fix uninitialized variable

16 years agomds: add MClientMountAck
Sage Weil [Fri, 20 Mar 2009 21:19:12 +0000 (14:19 -0700)]
mds: add MClientMountAck

16 years agoconfig: clean up common_init a bit
Sage Weil [Fri, 20 Mar 2009 19:12:33 +0000 (12:12 -0700)]
config: clean up common_init a bit

16 years agoinitscripts: add default mount options
Yehuda Sadeh [Fri, 20 Mar 2009 21:04:09 +0000 (14:04 -0700)]
initscripts: add default mount options

16 years agoauth: advanced auth config options
Yehuda Sadeh [Fri, 20 Mar 2009 20:54:56 +0000 (13:54 -0700)]
auth: advanced auth config options

16 years agokclient: remove renew_from from lease renew message
Sage Weil [Thu, 19 Mar 2009 23:16:18 +0000 (16:16 -0700)]
kclient: remove renew_from from lease renew message

Keep it in the ceph_dentry_info instead (as is done with the cap
renewals).  Much cleaner.

16 years agoprotocol: add mount_ack to client mount protocol
Sage Weil [Thu, 19 Mar 2009 21:36:59 +0000 (14:36 -0700)]
protocol: add mount_ack to client mount protocol

16 years agocstring: don't fall over on null initialization
Sage Weil [Thu, 19 Mar 2009 21:35:46 +0000 (14:35 -0700)]
cstring: don't fall over on null initialization

(like std::string does)

16 years agodebian: description updates
Sage Weil [Thu, 19 Mar 2009 18:29:17 +0000 (11:29 -0700)]
debian: description updates