src/os/solaris/vm/os_solaris.cpp

Print this page

        

@@ -460,22 +460,20 @@
 
 int os::active_processor_count() {
   int online_cpus = sysconf(_SC_NPROCESSORS_ONLN);
   pid_t pid = getpid();
   psetid_t pset = PS_NONE;
-  // Are we running in a processor set?
+  // Are we running in a processor set or is there any processor set around?
   if (pset_bind(PS_QUERY, P_PID, pid, &pset) == 0) {
-    if (pset != PS_NONE) {
       uint_t pset_cpus;
-      // Query number of cpus in processor set
+    // Query the number of cpus available to us.
       if (pset_info(pset, NULL, &pset_cpus, NULL) == 0) {
         assert(pset_cpus > 0 && pset_cpus <= online_cpus, "sanity check");
         _processors_online = pset_cpus;
         return pset_cpus;
       }
     }
-  }
   // Otherwise return number of online cpus
   return online_cpus;
 }
 
 static bool find_processors_in_pset(psetid_t        pset,