]> xenbits.xensource.com Git - people/liuw/freebsd.git/commitdiff
if_ntb: Use ffsll() now that it is broadly available
authorcem <cem@FreeBSD.org>
Thu, 22 Oct 2015 23:03:24 +0000 (23:03 +0000)
committercem <cem@FreeBSD.org>
Thu, 22 Oct 2015 23:03:24 +0000 (23:03 +0000)
Sponsored by: EMC / Isilon Storage Division

sys/dev/ntb/if_ntb/if_ntb.c

index 4997c52123932e071a8d340bc93b0f3f9aedbe3e..c9ca3b0a8090c8c103f5cae85a91da4faf283fd1 100644 (file)
@@ -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];