Lines Matching refs:bucket
631 struct fuse_sync_bucket *bucket;
633 bucket = kzalloc(sizeof(*bucket), GFP_KERNEL | __GFP_NOFAIL);
634 if (bucket) {
635 init_waitqueue_head(&bucket->waitq);
637 atomic_set(&bucket->count, 1);
639 return bucket;
644 struct fuse_sync_bucket *bucket, *new_bucket;
649 bucket = rcu_dereference_protected(fc->curr_bucket, 1);
650 count = atomic_read(&bucket->count);
660 * Completion of new bucket depends on completion of this bucket, so add
671 atomic_dec(&bucket->count);
673 wait_event(bucket->waitq, atomic_read(&bucket->count) == 0);
675 /* Drop temp count on descendant bucket */
677 kfree_rcu(bucket, rcu);
943 struct fuse_sync_bucket *bucket;
951 bucket = rcu_dereference_protected(fc->curr_bucket, 1);
952 if (bucket) {
953 WARN_ON(atomic_read(&bucket->count) != 1);
954 kfree(bucket);