Print this page
5255 uts shouldn't open-code ISP2

@@ -22,10 +22,11 @@
 /*
  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
+#include <sys/sysmacros.h>
 #include <sys/types.h>
 #include <sys/conf.h>
 #include <sys/time.h>
 #include <sys/taskq.h>
 #include <sys/cmn_err.h>

@@ -298,11 +299,11 @@
 
         /*
          * If ilbs->ilbs_conn_hash_size is not a power of 2, bump it up to
          * the next power of 2.
          */
-        if (ilbs->ilbs_conn_hash_size & (ilbs->ilbs_conn_hash_size - 1)) {
+        if (!ISP2(ilbs->ilbs_conn_hash_size)) {
                 for (i = 0; i < 31; i++) {
                         if (ilbs->ilbs_conn_hash_size < (1 << i))
                                 break;
                 }
                 ilbs->ilbs_conn_hash_size = 1 << i;

@@ -1357,11 +1358,11 @@
         extern pri_t minclsyspri;
         int i, part;
         char tq_name[TASKQ_NAMELEN];
         ilb_timer_t *tm;
 
-        if (ilbs->ilbs_sticky_hash_size & (ilbs->ilbs_sticky_hash_size - 1)) {
+        if (!ISP2(ilbs->ilbs_sticky_hash_size)) {
                 for (i = 0; i < 31; i++) {
                         if (ilbs->ilbs_sticky_hash_size < (1 << i))
                                 break;
                 }
                 ilbs->ilbs_sticky_hash_size = 1 << i;