summaryrefslogtreecommitdiffstats
path: root/lib/sbitmap.c
Commit message (Expand)AuthorAgeFilesLines
* Merge tag 'for-6.2/block-2022-12-08' of git://git.kernel.dk/linuxLinus Torvalds2022-12-131-106/+38
|\
| * sbitmap: Try each queue to wake up at least one waiterGabriel Krisman Bertazi2022-11-161-16/+12
| * sbitmap: Advance the queue index before waking up a queueGabriel Krisman Bertazi2022-11-161-2/+8
| * sbitmap: Use single per-bitmap counting to wake up queued tagsGabriel Krisman Bertazi2022-11-111-96/+26
* | treewide: use get_random_u32_below() instead of deprecated functionJason A. Donenfeld2022-11-181-2/+2
|/
* treewide: use prandom_u32_max() when possible, part 2Jason A. Donenfeld2022-10-111-1/+1
* treewide: use prandom_u32_max() when possible, part 1Jason A. Donenfeld2022-10-111-1/+1
* sbitmap: fix lockup while swappingHugh Dickins2022-09-291-1/+1
* sbitmap: fix batched wait_cnt accountingKeith Busch2022-09-121-14/+23
* sbitmap: Use atomic_long_try_cmpxchg in __sbitmap_queue_get_batchUros Bizjak2022-09-081-5/+5
* sbitmap: Avoid leaving waitqueue in invalid state in __sbq_wake_up()Jan Kara2022-09-081-3/+15
* Revert "sbitmap: fix batched wait_cnt accounting"Jens Axboe2022-09-041-17/+14
* sbitmap: fix batched wait_cnt accountingKeith Busch2022-09-011-14/+17
* sbitmap: remove unnecessary code in __sbitmap_queue_get_batchLiu Song2022-08-261-3/+2
* sbitmap: fix possible io hung due to lost wakeupYu Kuai2022-08-231-22/+33
* lib/sbitmap: Fix invalid loop in __sbitmap_queue_get_batch()wuchi2022-06-251-1/+4
* lib/sbitmap: allocate sb->map via kvzalloc_nodeMing Lei2022-03-211-1/+1
* sbitmap: Delete old sbitmap_queue_get_shallow()John Garry2022-02-081-3/+3
* lib/sbitmap: kill 'depth' from sbitmap_wordMing Lei2022-02-081-20/+14
* blk-mq: Fix wrong wakeup batch configuration which will cause hangLaibin Qiu2022-01-271-2/+6
* blk-mq: fix tag_get wait task can't be awakenedLaibin Qiu2022-01-131-3/+22
* sbitmap: silence data race warningJens Axboe2021-10-251-1/+1
* sbitmap: add helper to clear a batch of tagsJens Axboe2021-10-181-3/+41
* sbitmap: add __sbitmap_queue_get_batch()Jens Axboe2021-10-181-0/+51
* lib: fix spelling mistakesZhen Lei2021-07-081-1/+1
* scsi: sbitmap: Add sbitmap_calculate_shift() helperMing Lei2021-03-041-13/+3
* scsi: sbitmap: Export sbitmap_weightMing Lei2021-03-041-5/+6
* scsi: sbitmap: Move allocation hint into sbitmapMing Lei2021-03-041-46/+66
* scsi: sbitmap: Add helpers for updating allocation hintMing Lei2021-03-041-39/+54
* scsi: sbitmap: Maintain allocation round_robin in sbitmapMing Lei2021-03-041-14/+14
* sbitmap: simplify wrap checkPavel Begunkov2020-12-071-3/+5
* sbitmap: replace CAS with atomic andPavel Begunkov2020-12-071-5/+3
* sbitmap: remove swap_lockPavel Begunkov2020-12-071-11/+3
* sbitmap: optimise sbitmap_deferred_clear()Pavel Begunkov2020-12-071-12/+12
* sbitmap: Consider cleared bits in sbitmap_bitmap_show()John Garry2020-07-011-0/+3
* sbitmap: only queue kyber's wait callback if not already activeDavid Jeffery2019-12-201-1/+1
* sbitmap: Delete sbitmap_any_bit_clear()John Garry2019-11-131-17/+0
* sbitmap: Replace cmpxchg with xchgPavel Begunkov2019-07-011-7/+3
* treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 328Thomas Gleixner2019-06-051-12/+1
* sbitmap: fix improper use of smp_mb__before_atomic()Andrea Parri2019-05-231-1/+1
* sbitmap: order READ/WRITE freed instance and setting clear bitMing Lei2019-03-251-0/+11
* sbitmap: Protect swap_lock from hardirqMing Lei2019-01-151-2/+3
* sbitmap: Protect swap_lock from softirqsSteven Rostedt (VMware)2019-01-151-10/+2
* sbitmap: add helpers for add/del wait queue handlingJens Axboe2018-12-201-4/+26
* sbitmap: flush deferred clears for resize and shallow getsJens Axboe2018-12-111-43/+51
* sbitmap: silence bogus lockdep IRQ warningJens Axboe2018-12-091-0/+8
* sbitmap: optimize wakeup checkJens Axboe2018-11-301-0/+28
* sbitmap: ammortize cost of clearing bitsJens Axboe2018-11-301-8/+73
* sbitmap: don't loop for find_next_zero_bit() for !round_robinJens Axboe2018-11-291-8/+13
* treewide: kzalloc_node() -> kcalloc_node()Kees Cook2018-06-121-1/+1