]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agokclient: don't croak on null dev_name
Sage Weil [Mon, 20 Jul 2009 18:36:23 +0000 (11:36 -0700)]
kclient: don't croak on null dev_name

As currently caused by bad mount.ceph (mount -t ceph foo:bar mnt).

16 years agokclient: drop pr_fmt
Sage Weil [Mon, 20 Jul 2009 18:17:25 +0000 (11:17 -0700)]
kclient: drop pr_fmt

It doesn't build on older kernels, and all we want is varargs
checking anyway.

16 years agokclient: EBADF if there are no caps on an inode
Sage Weil [Mon, 20 Jul 2009 18:04:20 +0000 (11:04 -0700)]
kclient: EBADF if there are no caps on an inode

This will unwedge processes waiting on RD or WR when the mds
caps go away for some reason (like a partial or failed
reconnect).

16 years agomds: ignore stray reconnects
Sage Weil [Mon, 20 Jul 2009 17:58:53 +0000 (10:58 -0700)]
mds: ignore stray reconnects

Although maybe we should force open a session for these stray
clients?

16 years agomds: semi-tolerate/warn on bad client_ranges
Sage Weil [Mon, 20 Jul 2009 17:52:57 +0000 (10:52 -0700)]
mds: semi-tolerate/warn on bad client_ranges

16 years agomds: clean open file lists when we go active
Sage Weil [Mon, 20 Jul 2009 17:52:41 +0000 (10:52 -0700)]
mds: clean open file lists when we go active

Not after reconnect, because some caps have a delayed reconnect.
Add a start_active() stub to do this.

16 years agomds: adjust client_ranges on setattr size
Sage Weil [Mon, 20 Jul 2009 17:51:38 +0000 (10:51 -0700)]
mds: adjust client_ranges on setattr size

16 years agomds: always share min of projected, actual max_size
Sage Weil [Fri, 17 Jul 2009 22:18:53 +0000 (15:18 -0700)]
mds: always share min of projected, actual max_size

16 years agodebian: build git snapshot packages for unstable
Sage Weil [Mon, 20 Jul 2009 17:18:51 +0000 (10:18 -0700)]
debian: build git snapshot packages for unstable

16 years agodebian: build libcrush, librados, libceph packages
Sage Weil [Mon, 20 Jul 2009 17:05:05 +0000 (10:05 -0700)]
debian: build libcrush, librados, libceph packages

16 years agokclient: use kcalloc for decoded count * size allocations
Sage Weil [Sat, 18 Jul 2009 04:38:37 +0000 (21:38 -0700)]
kclient: use kcalloc for decoded count * size allocations

This includes a sanity check to ensure count * size doesn't wrap to a
small value.

16 years agoconfigure.ac: cleanup
Sage Weil [Thu, 16 Jul 2009 00:36:50 +0000 (17:36 -0700)]
configure.ac: cleanup

16 years agokclient: dout is a no-op without DEBUG or CONFIG_DYNAMIC_DEBUG
Sage Weil [Fri, 17 Jul 2009 21:39:50 +0000 (14:39 -0700)]
kclient: dout is a no-op without DEBUG or CONFIG_DYNAMIC_DEBUG

16 years agokclient: signoff in patch series
Sage Weil [Fri, 17 Jul 2009 21:20:18 +0000 (14:20 -0700)]
kclient: signoff in patch series

16 years agohypertable: few cleanups
Sage Weil [Fri, 17 Jul 2009 21:03:46 +0000 (14:03 -0700)]
hypertable: few cleanups

16 years agokclient: cleanup debugfs
Sage Weil [Fri, 17 Jul 2009 20:53:25 +0000 (13:53 -0700)]
kclient: cleanup debugfs

16 years agokclient: simplify dout. again.
Sage Weil [Fri, 17 Jul 2009 20:47:11 +0000 (13:47 -0700)]
kclient: simplify dout.  again.

16 years agokclient: simplify nfs export handles. untested.
Sage Weil [Fri, 17 Jul 2009 20:47:00 +0000 (13:47 -0700)]
kclient: simplify nfs export handles.  untested.

16 years agokclient: messenger cleanup
Sage Weil [Fri, 17 Jul 2009 20:11:18 +0000 (13:11 -0700)]
kclient: messenger cleanup

16 years agokclient: fix unaligned access in snap.c's dup_array
Sage Weil [Fri, 17 Jul 2009 20:01:52 +0000 (13:01 -0700)]
kclient: fix unaligned access in snap.c's dup_array

16 years agokclient: make dout's ceph_file_part NOT inline
Sage Weil [Fri, 17 Jul 2009 19:50:30 +0000 (12:50 -0700)]
kclient: make dout's ceph_file_part NOT inline

16 years agokclient: caps, mon_client cleanup
Sage Weil [Fri, 17 Jul 2009 19:50:12 +0000 (12:50 -0700)]
kclient: caps, mon_client cleanup

16 years agodebian: require libtool, but not libfcgi-dev.
Sage Weil [Fri, 17 Jul 2009 16:54:54 +0000 (09:54 -0700)]
debian: require libtool, but not libfcgi-dev.

16 years agokclient: fix monmap buffer overrun
Sage Weil [Thu, 16 Jul 2009 23:46:11 +0000 (16:46 -0700)]
kclient: fix monmap buffer overrun

Find num_mon before allocating monmap, so we get the right amount
of memory.

16 years agokclient: respond to control-c on slow mount
Sage Weil [Thu, 16 Jul 2009 23:44:07 +0000 (16:44 -0700)]
kclient: respond to control-c on slow mount

16 years agocrush: cleanup
Sage Weil [Thu, 16 Jul 2009 23:24:33 +0000 (16:24 -0700)]
crush: cleanup

16 years agokclient: clean up osdc
Sage Weil [Thu, 16 Jul 2009 23:07:49 +0000 (16:07 -0700)]
kclient: clean up osdc

16 years agokclient: cleanup addr, mdsc
Sage Weil [Thu, 16 Jul 2009 23:02:38 +0000 (16:02 -0700)]
kclient: cleanup addr, mdsc

16 years agokclient: file.c cleanup
Sage Weil [Thu, 16 Jul 2009 22:40:57 +0000 (15:40 -0700)]
kclient: file.c cleanup

16 years agokclient: dir.c cleanups
Sage Weil [Thu, 16 Jul 2009 21:52:36 +0000 (14:52 -0700)]
kclient: dir.c cleanups

16 years agokclient: inode.c cleanup
Sage Weil [Thu, 16 Jul 2009 21:39:37 +0000 (14:39 -0700)]
kclient: inode.c cleanup

16 years agokclient: super.c cleanup
Sage Weil [Thu, 16 Jul 2009 21:25:11 +0000 (14:25 -0700)]
kclient: super.c cleanup

16 years agokclient: use in4_pton to parse ipv4 addrs
Sage Weil [Thu, 16 Jul 2009 21:21:27 +0000 (14:21 -0700)]
kclient: use in4_pton to parse ipv4 addrs

16 years agokclient: misc cleanup
Sage Weil [Thu, 16 Jul 2009 21:13:09 +0000 (14:13 -0700)]
kclient: misc cleanup

16 years agokclient: in dout there may be no / in __FILE__
Sage Weil [Thu, 16 Jul 2009 20:48:57 +0000 (13:48 -0700)]
kclient: in dout there may be no / in __FILE__

16 years agoCephBroker: New version check-in.
Greg Farnum [Fri, 17 Jul 2009 18:16:30 +0000 (11:16 -0700)]
CephBroker: New version check-in.

16 years agouclient: Fix inode ref counting in rename.
Greg Farnum [Fri, 17 Jul 2009 18:10:53 +0000 (11:10 -0700)]
uclient: Fix inode ref counting in rename.

Change error outputting on Inode get/put, but commented out again.

16 years agoClient: removed extra debugging calls, fixed fencepost error
Greg Farnum [Wed, 15 Jul 2009 21:29:20 +0000 (14:29 -0700)]
Client: removed extra debugging calls, fixed fencepost error

Broker: changed debugging levels

16 years agoHypertable: Fixed up error reporting.
Greg Farnum [Wed, 15 Jul 2009 18:03:51 +0000 (11:03 -0700)]
Hypertable: Fixed up error reporting.

16 years agoClient: mkdirs; move test logic into a loop.
Greg Farnum [Wed, 15 Jul 2009 18:03:31 +0000 (11:03 -0700)]
Client: mkdirs; move test logic into a loop.

16 years agoClient: Rewrote mkdirs to avoid possible race condition.
Greg Farnum [Tue, 14 Jul 2009 21:07:45 +0000 (14:07 -0700)]
Client: Rewrote mkdirs to avoid possible race condition.

And added _ to some _mkdir debugging output.

16 years agolibceph: Added calls for lstat and mkdirs.
Greg Farnum [Tue, 14 Jul 2009 20:03:04 +0000 (13:03 -0700)]
libceph: Added calls for lstat and mkdirs.

16 years agoHypertable: numerous fixes.
Greg Farnum [Tue, 14 Jul 2009 20:02:18 +0000 (13:02 -0700)]
Hypertable: numerous fixes.

16 years agoclient: new mkdirs command, and debugging output.
Greg Farnum [Tue, 14 Jul 2009 20:01:08 +0000 (13:01 -0700)]
client: new mkdirs command, and debugging output.

Will create a all necessary directories for a filepath, not just the last one.

16 years agofilepath: constructor works correctly on relative filename.
Greg Farnum [Tue, 14 Jul 2009 19:59:09 +0000 (12:59 -0700)]
filepath: constructor works correctly on relative filename.

16 years agokclient: make dout() behave despite file prefix, cleanup
Sage Weil [Thu, 16 Jul 2009 20:39:48 +0000 (13:39 -0700)]
kclient: make dout() behave despite file prefix, cleanup

16 years agokclient: make debug output look nicer
Sage Weil [Thu, 16 Jul 2009 20:28:10 +0000 (13:28 -0700)]
kclient: make debug output look nicer

[ 1445    53.090000] ceph:      inode.c:1528 : do_getattr inode 000000006ccd0ff8 mask As
[ 1445    53.090000] ceph:       caps.c:657  : __ceph_caps_issued_mask 000000006ccd0ff8 cap 000000006cc9f898 issued pAsxLsXsxFsx (mask As)

16 years agokclient: replace dout hackery with pr_debug
Sage Weil [Thu, 16 Jul 2009 19:42:17 +0000 (12:42 -0700)]
kclient: replace dout hackery with pr_debug

16 years agokclient: kill dout(0, ...) calls
Sage Weil [Thu, 16 Jul 2009 18:18:50 +0000 (11:18 -0700)]
kclient: kill dout(0, ...) calls

16 years agokclient: kill derr, use pr_err instead
Sage Weil [Thu, 16 Jul 2009 18:12:52 +0000 (11:12 -0700)]
kclient: kill derr, use pr_err instead

16 years agokclient: specify file max size in mdsmap
Sage Weil [Thu, 16 Jul 2009 18:09:54 +0000 (11:09 -0700)]
kclient: specify file max size in mdsmap

16 years agokclient: __attribute__ ((packed)) all around
Sage Weil [Thu, 16 Jul 2009 16:59:10 +0000 (09:59 -0700)]
kclient: __attribute__ ((packed)) all around

16 years agov0.10 v0.10
Sage Weil [Wed, 15 Jul 2009 20:33:30 +0000 (13:33 -0700)]
v0.10

16 years agoMakefile: fix up initscript packaging
Sage Weil [Wed, 15 Jul 2009 21:07:04 +0000 (14:07 -0700)]
Makefile: fix up initscript packaging

16 years agoinitscripts: /etc, not /usr/etc
Sage Weil [Wed, 15 Jul 2009 21:06:39 +0000 (14:06 -0700)]
initscripts: /etc, not /usr/etc

16 years agokclient: kill debug msg
Sage Weil [Wed, 15 Jul 2009 19:19:18 +0000 (12:19 -0700)]
kclient: kill debug msg

16 years agokclient: fix up patchset comments, docs
Sage Weil [Wed, 15 Jul 2009 19:06:12 +0000 (12:06 -0700)]
kclient: fix up patchset comments, docs

16 years agomds: adjust client reconnect timeout
Sage Weil [Wed, 15 Jul 2009 18:50:48 +0000 (11:50 -0700)]
mds: adjust client reconnect timeout

16 years agomsgr: use SIGUSR2 for pipe kills, USR1 for accepter kills
Sage Weil [Tue, 14 Jul 2009 23:33:55 +0000 (16:33 -0700)]
msgr: use SIGUSR2 for pipe kills, USR1 for accepter kills

Otherwise our pthread sigmask change for accepter pselect() call
can block signals sent to kill pipe threads, and we get hangs on
msgr shutdown.

16 years agokclient: whitespace
Sage Weil [Tue, 14 Jul 2009 21:06:09 +0000 (14:06 -0700)]
kclient: whitespace

16 years agokclient: some comment cleanup
Sage Weil [Tue, 14 Jul 2009 21:04:35 +0000 (14:04 -0700)]
kclient: some comment cleanup

16 years agomds: eval locks too in reissue_all_caps after mds restart
Sage Weil [Tue, 14 Jul 2009 20:46:58 +0000 (13:46 -0700)]
mds: eval locks too in reissue_all_caps after mds restart

We may have correct wanted, issued info for the clients, but that
doesn't help us if we don't use it.

16 years agomds: reset seq on mds after reconnect, too
Sage Weil [Tue, 14 Jul 2009 20:46:10 +0000 (13:46 -0700)]
mds: reset seq on mds after reconnect, too

We were setting it to 1 (due to the issue_norevoke() call), but the
client is resetting to 0, so do the same here.  (Otherwise
subsequent client cap messages may get ignored.)

16 years agomds: flush log during clientreplay
Sage Weil [Tue, 14 Jul 2009 20:27:14 +0000 (13:27 -0700)]
mds: flush log during clientreplay

16 years agomds: fix max_size calculation
Sage Weil [Tue, 14 Jul 2009 20:18:04 +0000 (13:18 -0700)]
mds: fix max_size calculation

We want to ROUND_UP_TO from (size+1)<<1, otherwise size=0 gives us
a max_size of 0 (no good!).

16 years agouclient: make lstat() take mask
Sage Weil [Tue, 14 Jul 2009 19:50:06 +0000 (12:50 -0700)]
uclient: make lstat() take mask

16 years agomds: truncate journal on partial write
Sage Weil [Tue, 14 Jul 2009 19:27:11 +0000 (12:27 -0700)]
mds: truncate journal on partial write

Otherwise, we start writing new entries, then restart, and end up
with garbage at the write pos.

16 years agomds: apply cap mask in choose_lock_state
Sage Weil [Tue, 14 Jul 2009 19:27:41 +0000 (12:27 -0700)]
mds: apply cap mask in choose_lock_state

Otherwise we get CAP_GWR and other bits outside of simplelock
mask.

16 years agomsgr: fix race with signals vs select with pselect
Sage Weil [Tue, 14 Jul 2009 17:35:03 +0000 (10:35 -0700)]
msgr: fix race with signals vs select with pselect

Fixes hang where accepter thread misses the stop signal and
doesn't shut down.

16 years agomkcephfs: chown/chmod mount point if non-root
Sage Weil [Mon, 13 Jul 2009 22:24:22 +0000 (15:24 -0700)]
mkcephfs: chown/chmod mount point if non-root

16 years agomds: reconnect caps added via replay+issue_new_caps
Sage Weil [Tue, 14 Jul 2009 00:44:28 +0000 (17:44 -0700)]
mds: reconnect caps added via replay+issue_new_caps

Also, set up the initial lock states after reconnecting them!

16 years agomds: check client ranges on mds restart
Sage Weil [Mon, 13 Jul 2009 20:21:37 +0000 (13:21 -0700)]
mds: check client ranges on mds restart

16 years agomds: adjust client range on open existing for write
Sage Weil [Mon, 13 Jul 2009 20:18:40 +0000 (13:18 -0700)]
mds: adjust client range on open existing for write

16 years agomds: journal recovered mtime; cleanup
Sage Weil [Mon, 13 Jul 2009 20:13:37 +0000 (13:13 -0700)]
mds: journal recovered mtime; cleanup

Also avoid using in->inode as that may fail with concurrent updates
(if that's even possible?).

16 years agomds: do not check_inode_max_size in eval() path
Sage Weil [Mon, 13 Jul 2009 19:54:30 +0000 (12:54 -0700)]
mds: do not check_inode_max_size in eval() path

This is super dangerous, since we may journal something in the
middle of preparing another journal entry.  (This is notably a
problem with calls to issue_new_caps).

Kill fugly NO_SIZE_CHECK flag too, yay.

16 years agomds: set client_range on open O_TRUNC
Sage Weil [Mon, 13 Jul 2009 19:46:39 +0000 (12:46 -0700)]
mds: set client_range on open O_TRUNC

Set client_ranges explicitly.  Move get_layout_size_inc into
inode_t.

16 years agomds: base client_ranges update on issued|wanted, not just issued
Sage Weil [Mon, 13 Jul 2009 18:31:31 +0000 (11:31 -0700)]
mds: base client_ranges update on issued|wanted, not just issued

16 years agomds: use SCAN state for file recovery on mds restart
Sage Weil [Mon, 13 Jul 2009 18:25:08 +0000 (11:25 -0700)]
mds: use SCAN state for file recovery on mds restart

This ensures we revoke other caps before scanning for file
sizes.

16 years agoMakefile: fix whitespace
Sage Weil [Mon, 13 Jul 2009 17:39:25 +0000 (10:39 -0700)]
Makefile: fix whitespace

16 years agoinitscript: fix 'reload'
Sage Weil [Fri, 10 Jul 2009 17:43:48 +0000 (10:43 -0700)]
initscript: fix 'reload'

16 years agoinitscripts: do what we can to run as user specified in the conf
Sage Weil [Fri, 10 Jul 2009 17:43:38 +0000 (10:43 -0700)]
initscripts: do what we can to run as user specified in the conf

16 years agoinitscripts: substitute in proper autoconf paths
Sage Weil [Mon, 13 Jul 2009 17:30:43 +0000 (10:30 -0700)]
initscripts: substitute in proper autoconf paths

Based on
http://www.gnu.org/software/hello/manual/autoconf/Installation-Directory-Variables.html

16 years agomds todos
Sage Weil [Fri, 10 Jul 2009 22:32:10 +0000 (15:32 -0700)]
mds todos

16 years agokclient: simplify/fix cap delay timeouts
Sage Weil [Fri, 10 Jul 2009 22:31:17 +0000 (15:31 -0700)]
kclient: simplify/fix cap delay timeouts

Do NOT reset timeouts at the top of ceph_check_caps.. that's just
wrong, and screws up cap release logic.

Reset timeouts when we requeue the cap, since that's what all the
callers do.

16 years agomds: on restart, only recover files affected by missing clients
Sage Weil [Fri, 10 Jul 2009 22:14:48 +0000 (15:14 -0700)]
mds: on restart, only recover files affected by missing clients

16 years agomds: maintain per-client write ranges instead of single max_size
Sage Weil [Fri, 10 Jul 2009 21:59:12 +0000 (14:59 -0700)]
mds: maintain per-client write ranges instead of single max_size

We need to track individual clients' ability to write to a file in
order to behave rationally when a client dies or fails to reconnect
after an mds restart.

There is also a behavior change hiding in here: before we were
adjusting max_size based on _wanted_ caps, but that was unsafe,
since a client may have the old max_size value and initiate a write
after informing the mds it no longer wants said caps.  There will
undoubtably be some fallout from that change...

Also clean up instances of memset() on inode_t and friends.  Define
and use constructors instead.

16 years agouclient: fix getdir() to use new readdir_r return value
Sage Weil [Fri, 10 Jul 2009 21:45:46 +0000 (14:45 -0700)]
uclient: fix getdir() to use new readdir_r return value

16 years agouclient: stop using mds inode_t
Sage Weil [Fri, 10 Jul 2009 19:44:38 +0000 (12:44 -0700)]
uclient: stop using mds inode_t

16 years agomds: add SCAN, PRE_SCAN lock states
Sage Weil [Fri, 10 Jul 2009 19:25:53 +0000 (12:25 -0700)]
mds: add SCAN, PRE_SCAN lock states

Also clean up state machine array sizes

16 years agoosd: less hexdump on tmap updates
Sage Weil [Fri, 10 Jul 2009 17:10:50 +0000 (10:10 -0700)]
osd: less hexdump on tmap updates

16 years agoobjecter: fix pool objects listing
Yehuda Sadeh [Fri, 10 Jul 2009 20:17:48 +0000 (13:17 -0700)]
objecter: fix pool objects listing

16 years agokclient: fix uninitialized vars
Sage Weil [Thu, 9 Jul 2009 23:44:09 +0000 (16:44 -0700)]
kclient: fix uninitialized vars

16 years agotodo
Sage Weil [Thu, 9 Jul 2009 23:34:54 +0000 (16:34 -0700)]
todo

16 years agoRevert "kclient: strip out kernel version compatibility cruft"
Sage Weil [Thu, 18 Jun 2009 22:01:57 +0000 (15:01 -0700)]
Revert "kclient: strip out kernel version compatibility cruft"

This reverts commit ac1cf5dc7343953462aa27dc3526dd5ccec9cb53.

16 years agoMerge branch 'master' of ssh://ceph.newdream.net/git/ceph
Sage Weil [Thu, 9 Jul 2009 23:29:36 +0000 (16:29 -0700)]
Merge branch 'master' of ssh://ceph.newdream.net/git/ceph

16 years agos3gw: make compilation optional (./configure --with-s3gw)
Sage Weil [Thu, 9 Jul 2009 23:28:18 +0000 (16:28 -0700)]
s3gw: make compilation optional (./configure --with-s3gw)

16 years agouclient: include tid in cap flush, flushsnap
Sage Weil [Thu, 9 Jul 2009 22:50:29 +0000 (15:50 -0700)]
uclient: include tid in cap flush, flushsnap

16 years agokclient: include tid in cap flush, flushsnap
Sage Weil [Thu, 9 Jul 2009 22:41:23 +0000 (15:41 -0700)]
kclient: include tid in cap flush, flushsnap

This avoids (dirty 1, flush 1, dirty 2, flush 2, flush_ack 1 ->
mark clean) badness.

16 years agomds: add tid to cap flush/flushsnap ops
Sage Weil [Thu, 9 Jul 2009 22:35:22 +0000 (15:35 -0700)]
mds: add tid to cap flush/flushsnap ops

And include in the ACK.

16 years agokclient: assign seq to cap flush; avoid starvation on sync_fs
Sage Weil [Thu, 9 Jul 2009 22:11:52 +0000 (15:11 -0700)]
kclient: assign seq to cap flush; avoid starvation on sync_fs

Assign a seq# to each cap flush.  When we sync_fs, wait only for
prior cap flushes to complete.

Also, fix wait_unsafe_requests.