Lines Matching full:bucket

246  * Request exclusive access to a hash bucket for a given dma_debug_entry.
261 * Give up exclusive access to the hash bucket
263 static void put_hash_bucket(struct hash_bucket *bucket, in put_hash_bucket() argument
265 __releases(&bucket->lock) in put_hash_bucket()
267 spin_unlock_irqrestore(&bucket->lock, flags); in put_hash_bucket()
290 * Search a given entry in the hash bucket list
292 static struct dma_debug_entry *__hash_bucket_find(struct hash_bucket *bucket, in __hash_bucket_find() argument
299 list_for_each_entry(entry, &bucket->list, list) { in __hash_bucket_find()
342 static struct dma_debug_entry *bucket_find_exact(struct hash_bucket *bucket, in bucket_find_exact() argument
345 return __hash_bucket_find(bucket, ref, exact_match); in bucket_find_exact()
348 static struct dma_debug_entry *bucket_find_contain(struct hash_bucket **bucket, in bucket_find_contain() argument
357 entry = __hash_bucket_find(*bucket, ref, containing_match); in bucket_find_contain()
363 * Nothing found, go back a hash bucket in bucket_find_contain()
365 put_hash_bucket(*bucket, *flags); in bucket_find_contain()
367 *bucket = get_hash_bucket(&index, flags); in bucket_find_contain()
374 * Add an entry to a hash bucket
376 static void hash_bucket_add(struct hash_bucket *bucket, in hash_bucket_add() argument
379 list_add_tail(&entry->list, &bucket->list); in hash_bucket_add()
383 * Remove entry from a hash bucket list
522 struct hash_bucket *bucket = &dma_entry_hash[idx]; in debug_dma_dump_mappings() local
526 spin_lock_irqsave(&bucket->lock, flags); in debug_dma_dump_mappings()
527 list_for_each_entry(entry, &bucket->list, list) { in debug_dma_dump_mappings()
539 spin_unlock_irqrestore(&bucket->lock, flags); in debug_dma_dump_mappings()
554 struct hash_bucket *bucket = &dma_entry_hash[idx]; in dump_show() local
558 spin_lock_irqsave(&bucket->lock, flags); in dump_show()
559 list_for_each_entry(entry, &bucket->list, list) { in dump_show()
571 spin_unlock_irqrestore(&bucket->lock, flags); in dump_show()
583 struct hash_bucket *bucket; in add_dma_entry() local
587 bucket = get_hash_bucket(entry, &flags); in add_dma_entry()
588 hash_bucket_add(bucket, entry); in add_dma_entry()
589 put_hash_bucket(bucket, flags); in add_dma_entry()
957 struct hash_bucket *bucket; in check_unmap() local
960 bucket = get_hash_bucket(ref, &flags); in check_unmap()
961 entry = bucket_find_exact(bucket, ref); in check_unmap()
965 put_hash_bucket(bucket, flags); in check_unmap()
1045 put_hash_bucket(bucket, flags); in check_unmap()
1094 struct hash_bucket *bucket; in check_sync() local
1097 bucket = get_hash_bucket(ref, &flags); in check_sync()
1099 entry = bucket_find_contain(&bucket, ref, &flags); in check_sync()
1161 put_hash_bucket(bucket, flags); in check_sync()
1243 struct hash_bucket *bucket; in debug_dma_mapping_error() local
1251 bucket = get_hash_bucket(&ref, &flags); in debug_dma_mapping_error()
1253 list_for_each_entry(entry, &bucket->list, list) { in debug_dma_mapping_error()
1273 put_hash_bucket(bucket, flags); in debug_dma_mapping_error()
1334 struct hash_bucket *bucket; in get_nr_mapped_entries() local
1338 bucket = get_hash_bucket(ref, &flags); in get_nr_mapped_entries()
1339 entry = bucket_find_exact(bucket, ref); in get_nr_mapped_entries()
1344 put_hash_bucket(bucket, flags); in get_nr_mapped_entries()