diff options
author | 2016-04-05 06:56:47 -0400 | |
---|---|---|
committer | 2016-04-05 06:56:47 -0400 | |
commit | 6ea7e3873e52902af9ee8c0837450fdb69d54140 (patch) | |
tree | b291dad174446387a166763cfbf3dd351148ecbe /fs/cachefiles/interface.c | |
parent | scsi: Do not attach VPD to devices that don't support it (diff) | |
parent | Linux 4.6-rc1 (diff) | |
download | wireguard-linux-6ea7e3873e52902af9ee8c0837450fdb69d54140.tar.xz wireguard-linux-6ea7e3873e52902af9ee8c0837450fdb69d54140.zip |
Merge branch 'fixes-base' into fixes
Diffstat (limited to 'fs/cachefiles/interface.c')
-rw-r--r-- | fs/cachefiles/interface.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/fs/cachefiles/interface.c b/fs/cachefiles/interface.c index 675a3332d72f..861d611b8c05 100644 --- a/fs/cachefiles/interface.c +++ b/fs/cachefiles/interface.c @@ -291,15 +291,8 @@ static void cachefiles_drop_object(struct fscache_object *_object) } /* note that the object is now inactive */ - if (test_bit(CACHEFILES_OBJECT_ACTIVE, &object->flags)) { - write_lock(&cache->active_lock); - if (!test_and_clear_bit(CACHEFILES_OBJECT_ACTIVE, - &object->flags)) - BUG(); - rb_erase(&object->active_node, &cache->active_nodes); - wake_up_bit(&object->flags, CACHEFILES_OBJECT_ACTIVE); - write_unlock(&cache->active_lock); - } + if (test_bit(CACHEFILES_OBJECT_ACTIVE, &object->flags)) + cachefiles_mark_object_inactive(cache, object); dput(object->dentry); object->dentry = NULL; |