X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=fs%2Fafs%2Fcallback.c;h=a78d5b236bb1685ffe5e3eaf36ee3e2ccd6db28b;hb=8f859016ea49cd8d7c743533bd1ab3db9a813ffa;hp=f64e40fefc02841d8c9625e556780e963c0f2090;hpb=2c4f365ad2361c93c097e958b2b0a7a112750228;p=linux-2.6-omap-h63xx.git diff --git a/fs/afs/callback.c b/fs/afs/callback.c index f64e40fefc0..a78d5b236bb 100644 --- a/fs/afs/callback.c +++ b/fs/afs/callback.c @@ -17,9 +17,12 @@ #include #include #include +#include #include "internal.h" +#if 0 unsigned afs_vnode_update_timeout = 10; +#endif /* 0 */ #define afs_breakring_space(server) \ CIRC_SPACE((server)->cb_break_head, (server)->cb_break_tail, \ @@ -124,6 +127,9 @@ static void afs_break_callback(struct afs_server *server, spin_unlock(&server->cb_lock); queue_work(afs_callback_update_worker, &vnode->cb_broken_work); + if (list_empty(&vnode->granted_locks) && + !list_empty(&vnode->pending_locks)) + afs_lock_may_be_available(vnode); spin_unlock(&vnode->lock); } }