Lines Matching refs:candidate
141 static void fscache_wait_on_volume_collision(struct fscache_volume *candidate, in fscache_wait_on_volume_collision() argument
144 wait_var_event_timeout(&candidate->flags, in fscache_wait_on_volume_collision()
145 !fscache_is_acquire_pending(candidate), 20 * HZ); in fscache_wait_on_volume_collision()
146 if (fscache_is_acquire_pending(candidate)) { in fscache_wait_on_volume_collision()
148 candidate->debug_id, collidee_debug_id); in fscache_wait_on_volume_collision()
150 wait_var_event(&candidate->flags, !fscache_is_acquire_pending(candidate)); in fscache_wait_on_volume_collision()
159 static bool fscache_hash_volume(struct fscache_volume *candidate) in fscache_hash_volume() argument
166 bucket = candidate->key_hash & (ARRAY_SIZE(fscache_volume_hash) - 1); in fscache_hash_volume()
171 if (fscache_volume_same(candidate, cursor)) { in fscache_hash_volume()
176 set_bit(FSCACHE_VOLUME_ACQUIRE_PENDING, &candidate->flags); in fscache_hash_volume()
182 hlist_bl_add_head(&candidate->hash_link, h); in fscache_hash_volume()
185 if (fscache_is_acquire_pending(candidate)) in fscache_hash_volume()
186 fscache_wait_on_volume_collision(candidate, collidee_debug_id); in fscache_hash_volume()