s390/qdio: replace shift loop by ilog2
account_sbals is called by get_inbound_buffer_frontier and get_outbound_buffer_frontier with 'count' value > 0 so we can safely convert shift loop to ilog2. Cc: Joe Perches <joe@perches.com> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Fabian Frederick <fabf@skynet.be> Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
dbe33fc9ad
commit
92bdae5d9c
|
@ -409,17 +409,16 @@ static inline void qdio_stop_polling(struct qdio_q *q)
|
|||
set_buf_state(q, q->u.in.ack_start, SLSB_P_INPUT_NOT_INIT);
|
||||
}
|
||||
|
||||
static inline void account_sbals(struct qdio_q *q, int count)
|
||||
static inline void account_sbals(struct qdio_q *q, unsigned int count)
|
||||
{
|
||||
int pos = 0;
|
||||
int pos;
|
||||
|
||||
q->q_stats.nr_sbal_total += count;
|
||||
if (count == QDIO_MAX_BUFFERS_MASK) {
|
||||
q->q_stats.nr_sbals[7]++;
|
||||
return;
|
||||
}
|
||||
while (count >>= 1)
|
||||
pos++;
|
||||
pos = ilog2(count);
|
||||
q->q_stats.nr_sbals[pos]++;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue