]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
17 years agokclient: take i_lock in flush_snaps
Sage Weil [Fri, 24 Oct 2008 22:29:52 +0000 (15:29 -0700)]
kclient: take i_lock in flush_snaps

17 years agokclient: get code up to date with latest linux kernel
Yehuda Sadeh [Fri, 24 Oct 2008 21:07:29 +0000 (14:07 -0700)]
kclient: get code up to date with latest linux kernel

17 years agokclient: flush/release all caps back to mds before closing a session
Sage Weil [Fri, 24 Oct 2008 20:56:45 +0000 (13:56 -0700)]
kclient: flush/release all caps back to mds before closing a session

This allows us to handle races that can occur if an inode moves between
MDSs.  It also ensures that _all_ dirty cap data is safely flushed before
we throw it out.

To make this work, we drop the PIN reference on the subdirectory that
we mounted.  Since VFS doesn't tell us when each vfsmount goes away,
we can't remove them as we go.  And we're more or less screwed anyway
if the directory gets renamed (currently, at least), so there's not
much point in having this reference in the first place.

17 years agocrush: return 1.0 from get_offload if osd is not in the map
Sage Weil [Fri, 24 Oct 2008 18:44:11 +0000 (11:44 -0700)]
crush: return 1.0 from get_offload if osd is not in the map

17 years agokclient: remove realm from parent's child list on removal; avoid letting ref count...
Sage Weil [Fri, 24 Oct 2008 18:30:06 +0000 (11:30 -0700)]
kclient: remove realm from parent's child list on removal; avoid letting ref count hit 0 during split

17 years agokclient: remove some sparse warnings
Yehuda Sadeh [Fri, 24 Oct 2008 18:09:12 +0000 (11:09 -0700)]
kclient: remove some sparse warnings

17 years agokclient: fix cap flush, and drop ref when acked by mds
Sage Weil [Fri, 24 Oct 2008 18:16:56 +0000 (11:16 -0700)]
kclient: fix cap flush, and drop ref when acked by mds

17 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Yehuda Sadeh [Fri, 24 Oct 2008 17:47:09 +0000 (10:47 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable

17 years agokclient: finish_cap_snap fixes
Sage Weil [Fri, 24 Oct 2008 17:57:39 +0000 (10:57 -0700)]
kclient: finish_cap_snap fixes

17 years agokclient: queue finished cap_snaps and flush them after snap_rwsem is dropped
Sage Weil [Fri, 24 Oct 2008 17:47:52 +0000 (10:47 -0700)]
kclient: queue finished cap_snaps and flush them after snap_rwsem is dropped

This avoids some lock ordering problems.  It's also just smarter.. we don't
want to send all those messages while holding snap_rwsem.

17 years agokclient: cleanup some sparse messages
Yehuda Sadeh [Fri, 24 Oct 2008 17:47:07 +0000 (10:47 -0700)]
kclient: cleanup some sparse messages

17 years agokclient: free snap_rwsem at ceph_handle_snap
Yehuda Sadeh [Fri, 24 Oct 2008 17:33:24 +0000 (10:33 -0700)]
kclient: free snap_rwsem at ceph_handle_snap

17 years agokclient: remove the use of snap_rwsem at ceph_mdsc_close_sessions()
Yehuda Sadeh [Fri, 24 Oct 2008 17:31:08 +0000 (10:31 -0700)]
kclient: remove the use of snap_rwsem at ceph_mdsc_close_sessions()

17 years agokclient: fix __ceph_flush_snaps use of 'follows'
Yehuda Sadeh [Fri, 24 Oct 2008 17:30:21 +0000 (10:30 -0700)]
kclient: fix __ceph_flush_snaps use of 'follows'

17 years agokclient: drop reply mutex, add a flag instead
Yehuda Sadeh [Thu, 23 Oct 2008 19:48:42 +0000 (12:48 -0700)]
kclient: drop reply mutex, add a flag instead

17 years agokclient: use a new reply mutex, fixes locks dependency problem
Yehuda Sadeh [Thu, 23 Oct 2008 18:49:27 +0000 (11:49 -0700)]
kclient: use a new reply mutex, fixes locks dependency problem

17 years agokclient: fix allocation flags for osd client radix tree
Sage Weil [Thu, 23 Oct 2008 03:36:52 +0000 (20:36 -0700)]
kclient: fix allocation flags for osd client radix tree

17 years agokclient: try to release RDCACHE if _no_ caps are wanted
Sage Weil [Thu, 23 Oct 2008 02:17:21 +0000 (19:17 -0700)]
kclient: try to release RDCACHE if _no_ caps are wanted

As Yehuda pointed out, we aren't really concerned about invalidating pages and
releasing RDCACHE if we are still open for write.  So only bother releasing
RDCACHE when we have _no_ more interest in the file.  If there is a conflict,
the MDS will just revoke.

17 years agokclient: invalidate pages if RDCACHE used but not wanted
Sage Weil [Thu, 23 Oct 2008 00:16:06 +0000 (17:16 -0700)]
kclient: invalidate pages if RDCACHE used but not wanted

17 years agokclient: changing around the rdcache invalidation stuff
Sage Weil [Wed, 22 Oct 2008 23:40:44 +0000 (16:40 -0700)]
kclient: changing around the rdcache invalidation stuff

17 years agokclient: fix messenger tmp var name
Sage Weil [Wed, 22 Oct 2008 22:58:36 +0000 (15:58 -0700)]
kclient: fix messenger tmp var name

17 years agokclient: cleanup
Yehuda Sadeh [Wed, 22 Oct 2008 22:32:42 +0000 (15:32 -0700)]
kclient: cleanup

17 years agokclient: revocation of rdcache handling
Yehuda Sadeh [Wed, 22 Oct 2008 22:12:12 +0000 (15:12 -0700)]
kclient: revocation of rdcache handling

17 years agokclient: more patch queue futzing
Sage Weil [Wed, 22 Oct 2008 22:26:50 +0000 (15:26 -0700)]
kclient: more patch queue futzing

17 years agocrush: comments, cleanup
Sage Weil [Wed, 22 Oct 2008 22:26:04 +0000 (15:26 -0700)]
crush: comments, cleanup

17 years agokclient: flush cap_snaps on session close
Sage Weil [Wed, 22 Oct 2008 19:35:43 +0000 (12:35 -0700)]
kclient: flush cap_snaps on session close

17 years agokclient: build patches too in import script
Sage Weil [Wed, 22 Oct 2008 17:42:15 +0000 (10:42 -0700)]
kclient: build patches too in import script

17 years agokclient: remove remaining #include/#ifdef cruft from ceph_fs.h
Sage Weil [Wed, 22 Oct 2008 17:54:44 +0000 (10:54 -0700)]
kclient: remove remaining #include/#ifdef cruft from ceph_fs.h

17 years agokclient: patch queue commit comments
Sage Weil [Wed, 22 Oct 2008 05:14:06 +0000 (22:14 -0700)]
kclient: patch queue commit comments

17 years agoclean up ceph_fs.h a bit
Sage Weil [Wed, 22 Oct 2008 04:42:48 +0000 (21:42 -0700)]
clean up ceph_fs.h a bit

17 years agokclient: more patch queue fun
Sage Weil [Tue, 21 Oct 2008 23:57:27 +0000 (16:57 -0700)]
kclient: more patch queue fun

17 years agokclient: adjust import queue
Sage Weil [Wed, 22 Oct 2008 00:04:45 +0000 (17:04 -0700)]
kclient: adjust import queue

17 years agokclient: allow monitor port to be specified with the ip(s) during mount
Sage Weil [Tue, 21 Oct 2008 23:27:48 +0000 (16:27 -0700)]
kclient: allow monitor port to be specified with the ip(s) during mount

17 years agokclient: include Documentation/filesystems/ceph.txt in patch series
Sage Weil [Tue, 21 Oct 2008 22:08:46 +0000 (15:08 -0700)]
kclient: include Documentation/filesystems/ceph.txt in patch series

17 years agokclient: some changes for 2.6.28
Yehuda Sadeh [Tue, 21 Oct 2008 22:16:15 +0000 (15:16 -0700)]
kclient: some changes for 2.6.28

17 years agokclient: added crush.h for the git import tool
Yehuda Sadeh [Tue, 21 Oct 2008 00:00:12 +0000 (17:00 -0700)]
kclient: added crush.h for the git import tool

17 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Yehuda Sadeh [Mon, 20 Oct 2008 23:45:30 +0000 (16:45 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable

17 years agokclient: add dput to getattr for do_lookup splice case
Sage Weil [Mon, 20 Oct 2008 23:55:49 +0000 (16:55 -0700)]
kclient: add dput to getattr for do_lookup splice case

If do_lookup returns a dentry, it has a new ref on it.  Make sure we
dput() that, since we don't actually need it.  (In contrast, if there is no
splice, do_lookup does not dget, as the caller has a ref on the dentry it
provided in the first place.)

17 years agokclient: import tool fix, take two
Yehuda Sadeh [Mon, 20 Oct 2008 23:44:52 +0000 (16:44 -0700)]
kclient: import tool fix, take two

17 years agokclient: add Makefile to git import script
Yehuda Sadeh [Mon, 20 Oct 2008 23:42:25 +0000 (16:42 -0700)]
kclient: add Makefile to git import script

17 years agokclient: fix bookkeeper dynamic setup
Yehuda Sadeh [Mon, 20 Oct 2008 23:23:23 +0000 (16:23 -0700)]
kclient: fix bookkeeper dynamic setup

17 years agokclient: bookkeeper cleanup, configurable via kconfig
Yehuda Sadeh [Mon, 20 Oct 2008 22:40:31 +0000 (15:40 -0700)]
kclient: bookkeeper cleanup, configurable via kconfig

17 years agokclient: replace printk with dout in the leak tool
Yehuda Sadeh [Mon, 20 Oct 2008 21:55:24 +0000 (14:55 -0700)]
kclient: replace printk with dout in the leak tool

17 years agokclient: some more cleanup
Yehuda Sadeh [Mon, 20 Oct 2008 21:49:35 +0000 (14:49 -0700)]
kclient: some more cleanup

17 years agokclient: cleanup
Yehuda Sadeh [Mon, 20 Oct 2008 21:39:46 +0000 (14:39 -0700)]
kclient: cleanup

17 years agokclient: some leak tool cleanup
Yehuda Sadeh [Mon, 20 Oct 2008 21:20:35 +0000 (14:20 -0700)]
kclient: some leak tool cleanup

17 years agokclient: remove extra debug messages
Yehuda Sadeh [Mon, 20 Oct 2008 20:53:33 +0000 (13:53 -0700)]
kclient: remove extra debug messages

17 years agokclient: analyze crush correctly, kzalloc
Yehuda Sadeh [Mon, 20 Oct 2008 20:15:34 +0000 (13:15 -0700)]
kclient: analyze crush correctly, kzalloc

17 years agoMerge branch 'unstable' into kleak
Yehuda Sadeh [Mon, 20 Oct 2008 18:34:08 +0000 (11:34 -0700)]
Merge branch 'unstable' into kleak

Conflicts:

src/kernel/super.h

17 years agokclient: leak output shows filename and line
Yehuda Sadeh [Mon, 20 Oct 2008 17:19:17 +0000 (10:19 -0700)]
kclient: leak output shows filename and line

17 years agokclient: add missing files
Yehuda Sadeh [Sat, 18 Oct 2008 00:16:49 +0000 (17:16 -0700)]
kclient: add missing files

17 years agokclient: leak detections tool
Yehuda Sadeh [Sat, 18 Oct 2008 00:14:25 +0000 (17:14 -0700)]
kclient: leak detections tool

17 years agomds todo
Sage Weil [Mon, 20 Oct 2008 22:37:49 +0000 (15:37 -0700)]
mds todo

17 years agofilestore: fix getattrs to interpret listxattr return value correctly
Sage Weil [Mon, 20 Oct 2008 22:36:42 +0000 (15:36 -0700)]
filestore: fix getattrs to interpret listxattr return value correctly

17 years agofilestore: clean up xattr routines using nice helpers
Sage Weil [Mon, 20 Oct 2008 22:31:40 +0000 (15:31 -0700)]
filestore: clean up xattr routines using nice helpers

Conflicts:

src/os/FileStore.cc

17 years agomds: kill off inodes that get recovered but no longer have any parents
Sage Weil [Mon, 20 Oct 2008 22:07:08 +0000 (15:07 -0700)]
mds: kill off inodes that get recovered but no longer have any parents

17 years agomds: don't clobber ctime on snap removal
Sage Weil [Mon, 20 Oct 2008 21:54:33 +0000 (14:54 -0700)]
mds: don't clobber ctime on snap removal

17 years agokclient: fix snap_realm leak
Sage Weil [Mon, 20 Oct 2008 21:26:14 +0000 (14:26 -0700)]
kclient: fix snap_realm leak

The snap tree carries no reference.  Instead, when the refcount hits 0, we remove
the realm from the tree.

Alternatively, we could attach the realm to it's parent inode and avoid the snap
tree entirely... hmm.

17 years agoosd: clean up write_info vs write_log vs write_state
Sage Weil [Mon, 20 Oct 2008 21:06:37 +0000 (14:06 -0700)]
osd: clean up write_info vs write_log vs write_state

17 years agokclient: fix possible null pointer deref
Sage Weil [Mon, 20 Oct 2008 20:56:43 +0000 (13:56 -0700)]
kclient: fix possible null pointer deref

17 years agocrush: include cleanup
Sage Weil [Mon, 20 Oct 2008 20:55:19 +0000 (13:55 -0700)]
crush: include cleanup

17 years agokclient: include crush in patch series
Sage Weil [Mon, 20 Oct 2008 20:54:56 +0000 (13:54 -0700)]
kclient: include crush in patch series

17 years agomds: update log segment tid list on journaled tableclient ack
Sage Weil [Mon, 20 Oct 2008 20:35:01 +0000 (13:35 -0700)]
mds: update log segment tid list on journaled tableclient ack

17 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Yehuda Sadeh [Mon, 20 Oct 2008 20:20:31 +0000 (13:20 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable

17 years agokclient: free sessions container on exit
Yehuda Sadeh [Mon, 20 Oct 2008 20:18:06 +0000 (13:18 -0700)]
kclient: free sessions container on exit

17 years agokclient: whitespace
Sage Weil [Mon, 20 Oct 2008 19:49:20 +0000 (12:49 -0700)]
kclient: whitespace

17 years agokclient: remove useless __ for __u32 et al
Sage Weil [Mon, 20 Oct 2008 17:36:26 +0000 (10:36 -0700)]
kclient: remove useless __ for __u32 et al

17 years agokclient: fix else as per CodingStyle
Sage Weil [Mon, 20 Oct 2008 17:16:59 +0000 (10:16 -0700)]
kclient: fix else as per CodingStyle

17 years agokclient: wrong parameter passed to mdsmap_destroy
Yehuda Sadeh [Mon, 20 Oct 2008 18:25:08 +0000 (11:25 -0700)]
kclient: wrong parameter passed to mdsmap_destroy

17 years agokclient: fix leak in osd reply messages
Yehuda Sadeh [Mon, 20 Oct 2008 18:23:42 +0000 (11:23 -0700)]
kclient: fix leak in osd reply messages

17 years agokclient: mdsmap leak fix
Yehuda Sadeh [Mon, 20 Oct 2008 17:41:52 +0000 (10:41 -0700)]
kclient: mdsmap leak fix

17 years agokclient: free monmap on exit
Yehuda Sadeh [Mon, 20 Oct 2008 17:24:54 +0000 (10:24 -0700)]
kclient: free monmap on exit

17 years agokclient: move dout etc. defs to ceph_debug.h
Sage Weil [Mon, 20 Oct 2008 17:14:53 +0000 (10:14 -0700)]
kclient: move dout etc. defs to ceph_debug.h

17 years agokclient: some osd, mds client comments
Sage Weil [Mon, 20 Oct 2008 17:06:08 +0000 (10:06 -0700)]
kclient: some osd, mds client comments

17 years agokclient: last bit of mon_client cleanup
Sage Weil [Mon, 20 Oct 2008 16:54:23 +0000 (09:54 -0700)]
kclient: last bit of mon_client cleanup

17 years agokclient: script to build patch set for upstream
Sage Weil [Mon, 20 Oct 2008 16:24:52 +0000 (09:24 -0700)]
kclient: script to build patch set for upstream

17 years agokclient: some mon client cleanup
Sage Weil [Mon, 20 Oct 2008 16:24:25 +0000 (09:24 -0700)]
kclient: some mon client cleanup

17 years agokclient: kbuild patch update
Sage Weil [Sun, 19 Oct 2008 20:43:56 +0000 (13:43 -0700)]
kclient: kbuild patch update

17 years agokclient: more messenger cleanups, comments
Sage Weil [Sat, 18 Oct 2008 04:12:52 +0000 (21:12 -0700)]
kclient: more messenger cleanups, comments

17 years agokclient: messenger.c cleanup, reorganization, comments
Sage Weil [Sat, 18 Oct 2008 03:47:07 +0000 (20:47 -0700)]
kclient: messenger.c cleanup, reorganization, comments

17 years agokclient: fix cap_snap flush to reference correct snap
Sage Weil [Fri, 17 Oct 2008 21:12:35 +0000 (14:12 -0700)]
kclient: fix cap_snap flush to reference correct snap

The client was passing the snapid the data was to fall into
instead of the snap it _follows_ (which is now the mds tends
to look at things).  Use snapid-1 instead.  This fixes the
problem of files being written while the snapshot was taken
appearing as 0 bytes in the snapshot.

17 years agoosd todos
Sage Weil [Fri, 17 Oct 2008 20:36:15 +0000 (13:36 -0700)]
osd todos

17 years agomds: only check osdmap against snap table while active
Sage Weil [Fri, 17 Oct 2008 20:30:33 +0000 (13:30 -0700)]
mds: only check osdmap against snap table while active

17 years agoosd: track snap collections per pg, and clean them up
Sage Weil [Fri, 17 Oct 2008 20:27:11 +0000 (13:27 -0700)]
osd: track snap collections per pg, and clean them up

Explicitly track which snap collections exist for each pg.  Clean them
up when the PG is destroyed.

17 years agoosd: fast path if snap collection doesn't exist in snap_trimmer
Sage Weil [Fri, 17 Oct 2008 19:55:23 +0000 (12:55 -0700)]
osd: fast path if snap collection doesn't exist in snap_trimmer

17 years agofilestore: return error code (instead of asserting) if collection doesn't exist on...
Sage Weil [Fri, 17 Oct 2008 19:53:46 +0000 (12:53 -0700)]
filestore: return error code (instead of asserting) if collection doesn't exist on collection_list

The OSD doesn't pre-create the snap collections.

17 years agovstartnew.sh: turn up debugging on osd
Sage Weil [Fri, 17 Oct 2008 19:44:17 +0000 (12:44 -0700)]
vstartnew.sh: turn up debugging on osd

17 years agomds: cleanly update snapserver table after snap purge
Sage Weil [Fri, 17 Oct 2008 19:43:15 +0000 (12:43 -0700)]
mds: cleanly update snapserver table after snap purge

Any modifications to the table need to be journaled.  Create MDSTableServer infrastructure
for a simple update done by the server (no prepare/commit), and use it to
remove the snapid(s).  Replay no works.

17 years agokclient: more snap.c comments, cleanup
Sage Weil [Fri, 17 Oct 2008 19:17:28 +0000 (12:17 -0700)]
kclient: more snap.c comments, cleanup

17 years agokclient: a few more snap.c comments
Sage Weil [Fri, 17 Oct 2008 17:17:13 +0000 (10:17 -0700)]
kclient: a few more snap.c comments

17 years agokclient: adjust ceph_finish_cap behavior
Sage Weil [Fri, 17 Oct 2008 14:26:03 +0000 (07:26 -0700)]
kclient: adjust ceph_finish_cap behavior

Look at capsnap->dirty instead of used cap refs, as this directly indicates
whether _this_ capsnap can be flushed (used bit indicates whether _all_
capsnaps can be flushed.. no need to wait that long!).  Avoid an extra
call to ceph_flush_snaps by waiting until after to call it.

17 years agokclient: some snap.c comments, cleanup
Sage Weil [Fri, 17 Oct 2008 14:12:04 +0000 (07:12 -0700)]
kclient: some snap.c comments, cleanup

17 years agokclient: osd messages timeout retriggering
Yehuda Sadeh [Fri, 17 Oct 2008 19:31:00 +0000 (12:31 -0700)]
kclient: osd messages timeout retriggering

17 years agokclient: refine osd messages timeout handling
Yehuda Sadeh [Fri, 17 Oct 2008 16:58:25 +0000 (09:58 -0700)]
kclient: refine osd messages timeout handling

17 years agokclient: debug message
Yehuda Sadeh [Thu, 16 Oct 2008 22:00:29 +0000 (15:00 -0700)]
kclient: debug message

17 years agodebian: include debian dir in usr/src/modules/ceph
Sage Weil [Fri, 17 Oct 2008 01:27:57 +0000 (18:27 -0700)]
debian: include debian dir in usr/src/modules/ceph

17 years agokclient: some export.c comments
Sage Weil [Thu, 16 Oct 2008 23:39:43 +0000 (16:39 -0700)]
kclient: some export.c comments

17 years agokclient: addr.c comments, cleanup
Sage Weil [Thu, 16 Oct 2008 23:34:44 +0000 (16:34 -0700)]
kclient: addr.c comments, cleanup

I'm leaving the ability to redirty a page within a given
snapc in ceph_set_page_dirty (even though it isn't used)
because I'm not sure about the failure paths.. I suspect
we will need it later.

17 years agodebian: make ceph-source include module source
Sage Weil [Thu, 16 Oct 2008 22:33:54 +0000 (15:33 -0700)]
debian: make ceph-source include module source

There's a bunch of weirdness in the rules file, though, that I don't understand.
What's rules.modules.in?  Why was it being populated (along with a debian dir)
in /usr/src/modules/ceph?

17 years agokclient: mdsmap cleanups
Sage Weil [Thu, 16 Oct 2008 22:33:10 +0000 (15:33 -0700)]
kclient: mdsmap cleanups