qcacmn: Fix last_per overflow issue

Check if ucast pkts count is more than success pkts count,
compute last packet error rate only if ucast is less than success
pkts.

Change-Id: I0aa4d41d09b1691e4d554beab2f2ed7a7f2ceb1e
CRs-Fixed: 2343479
diff --git a/dp/cmn_dp_api/dp_cal_client_api.c b/dp/cmn_dp_api/dp_cal_client_api.c
index 8e2bcd9..3721743 100644
--- a/dp/cmn_dp_api/dp_cal_client_api.c
+++ b/dp/cmn_dp_api/dp_cal_client_api.c
@@ -153,10 +153,17 @@
 	peer_stats->tx.tx_data_success_last = temp_tx_data;
 	peer_stats->tx.tx_data_ucast_last = temp_tx_ucast_pkts;
 
-	if (peer_stats->tx.tx_data_ucast_rate)
-		peer_stats->tx.last_per = ((peer_stats->tx.tx_data_ucast_last -
-				peer_stats->tx.tx_data_success_last) * 100) /
-				peer_stats->tx.tx_data_ucast_last;
+	if (peer_stats->tx.tx_data_ucast_rate) {
+		if (peer_stats->tx.tx_data_ucast_rate >
+				peer_stats->tx.tx_data_rate)
+			peer_stats->tx.last_per =
+				((peer_stats->tx.tx_data_ucast_rate -
+					peer_stats->tx.tx_data_rate) * 100) /
+				peer_stats->tx.tx_data_ucast_rate;
+		else
+			peer_stats->tx.last_per = 0;
+	}
+
 }
 
 qdf_export_symbol(dp_cal_client_update_peer_stats);