--- opensm/osm_state_mgr.c	2011-08-08 18:36:38.000000000 -0500
+++ opensm/osm_state_mgr.c	2011-10-12 15:55:39.000000000 -0500
@@ -620,6 +620,11 @@
 	}
 
 	OSM_LOG_MSG_BOX(sm->p_log, OSM_LOG_VERBOSE, "INITIATING LIGHT SWEEP");
+
+	osm_opensm_report_event(sm->p_subn->p_osm,
+				OSM_EVENT_ID_LIGHT_SWEEP_START, NULL);
+
+
 	CL_PLOCK_ACQUIRE(sm->p_lock);
 	cl_qmap_apply_func(p_sw_tbl, state_mgr_get_sw_info, sm);
 	CL_PLOCK_RELEASE(sm->p_lock);
@@ -663,6 +668,9 @@
 
 	CL_PLOCK_RELEASE(sm->p_lock);
 
+	osm_opensm_report_event(sm->p_subn->p_osm,
+				OSM_EVENT_ID_LIGHT_SWEEP_DONE, NULL);
+
 _exit:
 	OSM_LOG_EXIT(sm->p_log);
 	return status;
--- include/opensm/osm_event_plugin.h	2011-08-08 18:40:19.000000000 -0500
+++ include/opensm/osm_event_plugin.h	2011-10-12 16:02:31.000000000 -0500
@@ -66,6 +66,7 @@
 /** =========================================================================
  * Event types
  */
+
 typedef enum {
 	OSM_EVENT_ID_PORT_ERRORS = 0,
 	OSM_EVENT_ID_PORT_DATA_COUNTERS,
@@ -77,7 +78,9 @@
 	OSM_EVENT_ID_UCAST_ROUTING_DONE,
 	OSM_EVENT_ID_STATE_CHANGE,
 	OSM_EVENT_ID_SA_DB_DUMPED,
-	OSM_EVENT_ID_MAX
+	OSM_EVENT_ID_MAX,
+	OSM_EVENT_ID_LIGHT_SWEEP_START,	
+	OSM_EVENT_ID_LIGHT_SWEEP_DONE,	
 } osm_epi_event_id_t;
 
 typedef struct osm_epi_port_id {
