summaryrefslogtreecommitdiffstats
path: root/fs/ceph/super.h
Commit message (Collapse)AuthorAgeFilesLines
* ceph: put unused osd connections on lruYehuda Sadeh2010-02-111-0/+2
| | | | | | | | | | Instead of removing osd connection immediately when the requests list is empty, put the osd connection on an lru. Only if that osd has not been used for more than a specified time, will it be removed. Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net> Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: allow renewal of auth credentialsSage Weil2010-02-101-2/+2
| | | | | | | | | Add infrastructure to allow the mon_client to periodically renew its auth credentials. Also add a messenger callback that will force such a renewal if a peer rejects our authenticator. Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net> Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: writeback congestion controlYehuda Sadeh2009-12-211-0/+3
| | | | | | | | Set bdi congestion bit when amount of write data in flight exceeds adjustable threshold. Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net> Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: include link to bdi in debugfsSage Weil2009-12-211-0/+1
| | | | Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: fix debugfs entry, simplify fsid checksSage Weil2009-11-201-9/+9
| | | | | | | | | | | We may first learn our fsid from any of the mon, osd, or mds maps (whichever the monitor sends first). Consolidate checks in a single helper. Initialize the client debugfs entry then, since we need the fsid (and global_id) for the directory name. Also remove dead mount code. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: negotiate authentication protocol; implement AUTH_NONE protocolSage Weil2009-11-181-0/+2
| | | | | | | | | | | | | | | | When we open a monitor session, we send an initial AUTH message listing the auth protocols we support, our entity name, and (possibly) a previously assigned global_id. The monitor chooses a protocol and responds with an initial message. Initially implement AUTH_NONE, a dummy protocol that provides no security, but works within the new framework. It generates 'authorizers' that are used when connecting to (mds, osd) services that simply state our entity name and global_id. This is a wire protocol change. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: build cleanly without CONFIG_DEBUG_FSSage Weil2009-11-121-0/+2
| | | | Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: remove recon_gen logicSage Weil2009-11-101-1/+0
| | | | | | | | We don't get an explicit affirmative confirmation that our caps reconnect, nor do we necessarily want to pay that cost. So, take all this code out for now. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: do not confuse stale and dead (unreconnected) capsSage Weil2009-11-091-1/+3
| | | | | | | | | | | | We were using the cap_gen to track both stale caps (caps that timed out due to temporarily losing touch with the mds) and dead caps that did not reconnect after an MDS failure. Introduce a recon_gen counter to track reconnections to restarted MDSs and kill dead caps based on that instead. Rename gen to cap_gen while we're at it to make it more clear which is which. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: replace list_entry with container_ofNoah Watkins2009-10-281-1/+1
| | | | | | | | Usage of non-list.h list_entry function for container_of functionality replaced with direct use of container_of. Signed-off-by: Noah Watkins <noah@noahdesu.com> Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: allocate and parse mount args before client instanceSage Weil2009-10-271-3/+5
| | | | | | | | This simplifies much of the error handling during mount. It also means that we have the mount args before client creation, and we can initialize based on those options. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: remove small mon addr limit; use CEPH_MAX_MON where appropriateSage Weil2009-10-221-2/+0
| | | | | | | | Get rid of separate max mon limit; use the system limit instead. This allows mounts when there are lots of mon addrs provided by mount.ceph (as with a host with lots of A/AAAA records). Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: enable readaheadSage Weil2009-10-161-1/+1
| | | | | | Initialized bdi->ra_pages to enable readahead. Use 512KB default. Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: flush dirty caps via the cap_dirty listSage Weil2009-10-151-3/+3
| | | | | | | | | | | | | | | | | | Previously we were flushing dirty caps by passing an extra flag when traversing the delayed caps list. Besides being a bit ugly, that can also miss caps that are dirty but didn't result in a cap requeue: notably, mark_caps_dirty(). Separate the flushing into a separate helper, and traverse the cap_dirty list. This also brings i_dirty_item in line with i_dirty_caps: we are on the list IFF caps != 0. We carry an inode ref IFF dirty_caps|flushing_caps != 0. Lose the unused return value from __ceph_mark_caps_dirty(). Signed-off-by: Sage Weil <sage@newdream.net>
* ceph: client typesSage Weil2009-10-061-0/+890
We first define constants, types, and prototypes for the kernel client proper. A few subsystems are defined separately later: the MDS, OSD, and monitor clients, and the messaging layer. Signed-off-by: Sage Weil <sage@newdream.net>
OpenPOWER on IntegriCloud