DragonFlyBSD Kernel Audit
DF-1697 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/raid/mps/mps_sas_lsi.c b/sys/dev/raid/mps/mps_sas_lsi.c
--- a/sys/dev/raid/mps/mps_sas_lsi.c
+++ b/sys/dev/raid/mps/mps_sas_lsi.c
@@ -205,7 +205,8 @@
 
 		mps_mapping_topology_change_event(sc, fw_event->event_data);
 
-		for (i = 0; i < data->NumEntries; i++) {
+		for (i = 0; i < data->NumEntries &&
+		    i < MPI2_EVENT_SAS_TOPO_PHY_COUNT; i++) {
 			phy = &data->PHY[i];
 			switch (phy->PhyStatus & MPI2_EVENT_SAS_TOPO_RC_MASK) {
 			case MPI2_EVENT_SAS_TOPO_RC_TARG_ADDED: