aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ntb/if_ntb
diff options
context:
space:
mode:
authorConrad Meyer <cem@FreeBSD.org>2015-10-22 23:03:24 +0000
committerConrad Meyer <cem@FreeBSD.org>2015-10-22 23:03:24 +0000
commitf09b75d4b555082f1c899988f1b8450c9ad5494b (patch)
tree0f8d893d450cd05637dceeaece536f6e809e27cd /sys/dev/ntb/if_ntb
parent0a7663c2c00bc65b838855002b1296717b963fa3 (diff)
downloadsrc-f09b75d4b555082f1c899988f1b8450c9ad5494b.tar.gz
src-f09b75d4b555082f1c899988f1b8450c9ad5494b.zip
if_ntb: Use ffsll() now that it is broadly available
Sponsored by: EMC / Isilon Storage Division
Notes
Notes: svn path=/head/; revision=289775
Diffstat (limited to 'sys/dev/ntb/if_ntb')
-rw-r--r--sys/dev/ntb/if_ntb/if_ntb.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/sys/dev/ntb/if_ntb/if_ntb.c b/sys/dev/ntb/if_ntb/if_ntb.c
index 4997c5212393..c9ca3b0a8090 100644
--- a/sys/dev/ntb/if_ntb/if_ntb.c
+++ b/sys/dev/ntb/if_ntb/if_ntb.c
@@ -1150,14 +1150,7 @@ ntb_transport_doorbell_callback(void *data, uint32_t vector)
vec_mask = ntb_db_vector_mask(nt->ntb, vector);
while (vec_mask != 0) {
- qp_num = ffsl(vec_mask);
- /* i386 doesn't have ffsll(), fake it */
- if (qp_num == 0) {
- qp_num = ffsl(vec_mask >> 32);
- KASSERT(qp_num != 0, ("ffs"));
- qp_num += 32;
- }
- qp_num--;
+ qp_num = ffsll(vec_mask) - 1;
if (test_bit(qp_num, &db_bits)) {
qp = &nt->qp_vec[qp_num];