Explicit integer promotion for bit shift operations

Explicitly promote variables to correct type. Undefined behavior is
reported because length of int is not well defined by C standard.

Issue #4883

Signed-off-by: Gvozden Neskovic <neskovic@gmail.com>
This commit is contained in:
Gvozden Neskovic
2016-09-02 15:07:00 +02:00
committed by Brian Behlendorf
parent 031d7c2fe6
commit 4ca9c1de12
2 changed files with 3 additions and 2 deletions
+1 -1
View File
@@ -600,7 +600,7 @@ spa_tx_assign_add_nsecs(spa_t *spa, uint64_t nsecs)
spa_stats_history_t *ssh = &spa->spa_stats.tx_assign_histogram;
uint64_t idx = 0;
while (((1 << idx) < nsecs) && (idx < ssh->size - 1))
while (((1ULL << idx) < nsecs) && (idx < ssh->size - 1))
idx++;
atomic_inc_64(&((kstat_named_t *)ssh->private)[idx].value.ui64);