Bläddra i källkod

Merge 8168f4e0d505831f93de01088ccb1167253bfac3 on remote branch

Change-Id: Idb927d44c0a6cd5e3b8c8020ff7aafcc106a28e0
Linux Build Service Account 6 månader sedan
förälder
incheckning
ca5dc8ec8d
2 ändrade filer med 14 tillägg och 2 borttagningar
  1. 6 0
      dsp/adsprpc.c
  2. 8 2
      dsp/fastrpc_trace.h

+ 6 - 0
dsp/adsprpc.c

@@ -8172,6 +8172,12 @@ static int fastrpc_cb_probe(struct device *dev)
 			for (j = 1; j < sharedcb_count &&
 					chan->sesscount < NUM_SESSIONS; j++) {
 				chan->sesscount++;
+				VERIFY(err, chan->sesscount < NUM_SESSIONS);
+				if (err) {
+					ADSPRPC_WARN("failed to add shared session, maximum sessions (%d) reached \n",
+						NUM_SESSIONS);
+					break;
+				}
 				dup_sess = &chan->session[chan->sesscount];
 				memcpy(dup_sess, sess,
 					sizeof(struct fastrpc_session_ctx));

+ 8 - 2
dsp/fastrpc_trace.h

@@ -385,7 +385,10 @@ TRACE_EVENT(fastrpc_msg,
 		memcpy(__get_str(buf), (message), (sizeof(message) - 1));
 		__get_str(buf)[sizeof(message) - 1] = '\0';
 #else
-		__assign_str(buf, message);
+		if (message)
+			__assign_str_len(buf, message, (sizeof(message) - 1));
+		else
+			memcpy(__get_str(buf), "(null)", sizeof("(null)"));
 #endif
 	),
 	TP_printk(" %s", __get_str(buf))
@@ -410,7 +413,10 @@ TRACE_EVENT(fastrpc_dspsignal,
 		memcpy(__get_str(buf), (event), (sizeof(event) - 1));
 		__get_str(buf)[sizeof(event) - 1] = '\0';
 #else
-		__assign_str(buf, event);
+		if (event)
+			__assign_str_len(buf, event, (sizeof(event) - 1));
+		else
+			memcpy(__get_str(buf), "(null)", sizeof("(null)"));
 #endif
 		__entry->signal_id = signal_id;
 		__entry->state = state;