On Wed, 13 Aug 2014 12:58:21 -0400 Milosz Tanski <milosz@xxxxxxxxx> wrote: > I've been seeing issues with disposing cookies under vma pressure. The symptom > is that the refcount gets out of sync. In this case we fail to decrement the > refcount if submit fails. I found this while auditing the error in and around > cookie operations. > > Signed-off-by: Milosz Tanski <milosz@xxxxxxxxx> > --- > fs/fscache/object.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/fs/fscache/object.c b/fs/fscache/object.c > index d3b4539..e1eb1f5 100644 > --- a/fs/fscache/object.c > +++ b/fs/fscache/object.c > @@ -982,6 +982,8 @@ nomem: > submit_op_failed: > clear_bit(FSCACHE_OBJECT_IS_LIVE, &object->flags); > spin_unlock(&cookie->lock); > + if (__fscache_unuse_cookie(cookie)) > + __fscache_wake_unused_cookie(cookie); > kfree(op); > _leave(" [EIO]"); > return transit_to(KILL_OBJECT); Should this simple by + fscache_unuse_cookie(cookie); it does both the "unuse" and the "wake". Otherwise they all look good to me. NeilBrown
Attachment:
signature.asc
Description: PGP signature