diff options
| author | Wolfram Sang <wsa@kernel.org> | 2022-02-23 14:14:15 +0100 | 
|---|---|---|
| committer | Wolfram Sang <wsa@kernel.org> | 2022-02-23 14:14:15 +0100 | 
| commit | 24e3bb7429bde31e9a28a46ca2fd6deaab257c30 (patch) | |
| tree | e071e61748b5322e35033dbe0df8df5b027803d8 /lib/sbitmap.c | |
| parent | 8302532f47bb6c3aa1ed2043d30187ca307f176a (diff) | |
| parent | 509853f9e1e7b1490dc79f735a5dbafc9298f40d (diff) | |
Merge tag 'irq-api-2022-02-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into i2c/for-mergewindow
Provide a tag for maintainers to pull the generic_handle_irq_safe() API.
Diffstat (limited to 'lib/sbitmap.c')
| -rw-r--r-- | lib/sbitmap.c | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/lib/sbitmap.c b/lib/sbitmap.c index 6220fa67fb7e..09d293c30fd2 100644 --- a/lib/sbitmap.c +++ b/lib/sbitmap.c @@ -488,9 +488,13 @@ void sbitmap_queue_recalculate_wake_batch(struct sbitmap_queue *sbq,  					    unsigned int users)  {  	unsigned int wake_batch; +	unsigned int min_batch; +	unsigned int depth = (sbq->sb.depth + users - 1) / users; -	wake_batch = clamp_val((sbq->sb.depth + users - 1) / -			users, 4, SBQ_WAKE_BATCH); +	min_batch = sbq->sb.depth >= (4 * SBQ_WAIT_QUEUES) ? 4 : 1; + +	wake_batch = clamp_val(depth / SBQ_WAIT_QUEUES, +			min_batch, SBQ_WAKE_BATCH);  	__sbitmap_queue_update_wake_batch(sbq, wake_batch);  }  EXPORT_SYMBOL_GPL(sbitmap_queue_recalculate_wake_batch); | 
