Message ID | 1403891719.30332.419.camel@auk59.llnl.gov (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Hal Rosenstock |
Headers | show |
diff --git a/opensm/osm_perfmgr.c b/opensm/osm_perfmgr.c index 1c0ed46..2b7ea6a 100644 --- a/opensm/osm_perfmgr.c +++ b/opensm/osm_perfmgr.c @@ -448,13 +448,8 @@ wait: goto wait; cl_spinlock_acquire(&perfmgr->lock); - if (perfmgr->sweep_state == PERFMGR_SWEEP_SUSPENDED) { + if (perfmgr->sweep_state == PERFMGR_SWEEP_SUSPENDED) perfmgr->sweep_state = PERFMGR_SWEEP_ACTIVE; - } else { - OSM_LOG(perfmgr->log, OSM_LOG_ERROR, "ERR 54FF: " - "PM state %d was NOT Suspended???\n", - perfmgr->sweep_state); - } cl_spinlock_release(&perfmgr->lock); } }
The "PM state %d was NOT Suspended???" log message is unnecessary. It is not an error, and in fact is quite normal, for the sweep_state to be not suspended. Multiple threads can enter perfmgr_send_mad() and sit on the conditional wait. The first one to be signaled will obtain the perfmgr lock and set the sweep_state to ACTIVE. Every other thread sitting on the conditional wait that is signaled afterwards has a very high chance of seeing the sweep_state in ACTIVE instead of SUSPENDED. Signed-off-by: Albert L. Chu <chu11@llnl.gov> --- opensm/osm_perfmgr.c | 7 +------ 1 files changed, 1 insertions(+), 6 deletions(-)