From: Patience Warnick Date: Mon, 7 Apr 2008 17:37:11 +0000 (-0700) Subject: Merge branch 'unstable' of ssh://patience@ceph.newdream.net/home/sage/ceph.newdream... X-Git-Tag: v0.3~239^2~81^2^2~10 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=113e96b0ae1c831ad01e9b86a2c5a87ce4187604;p=ceph.git Merge branch 'unstable' of ssh://patience@ceph.newdream.net/home/sage/ceph.newdream.net/git/ceph into unstable Conflicts: src/kernel/mon_client.h --- 113e96b0ae1c831ad01e9b86a2c5a87ce4187604 diff --cc src/kernel/mds_client.c index a5fa855b45c5,a469254b966a..7932a4ffa562 --- a/src/kernel/mds_client.c +++ b/src/kernel/mds_client.c @@@ -1532,15 -1533,27 +1533,19 @@@ void schedule_delayed(struct ceph_mds_c /* * renew at 1/2 the advertised timeout period. */ - unsigned hz = (HZ * mdsc->mdsmap->m_cap_bit_timeout) >> 1; - schedule_delayed_work(&mdsc->delayed_work, hz); + int delay = mdsc->mdsmap->m_cap_bit_timeout >> 1; + unsigned hz = HZ * delay; + int r; + dout(10, "schedule_delayed for %d seconds (%u hz)\n", delay, hz); + r = schedule_delayed_work(&mdsc->delayed_work, hz); + dout(10, "r = %d\n", r); } -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) void delayed_work(struct work_struct *work) -#else -void delayed_work(void *arg) -#endif { int i; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) struct ceph_mds_client *mdsc = container_of(work, struct ceph_mds_client, delayed_work.work); -#else - struct ceph_mds_client *mdsc = arg; -#endif dout(10, "delayed_work on %p\n", mdsc); diff --cc src/kernel/mon_client.h index 10fc2435736b,19274b1438c1..81b242c4496a --- a/src/kernel/mon_client.h +++ b/src/kernel/mon_client.h @@@ -32,10 -32,7 +32,11 @@@ struct ceph_mon_client u64 last_tid; u32 want_mdsmap; /* protected by caller's lock */ + struct delayed_work delayed_work; /* delayed work */ + unsigned long delay; + + struct ceph_msg *msg; + u32 want_osdmap; /* protected by caller's lock */ }; extern struct ceph_monmap *ceph_monmap_decode(void *p, void *end);