[U-Boot] [PATCH 6/6] common: iotrace: fix behaviour when buffer is full

Ramon Fried ramon.fried at gmail.com
Fri May 25 10:41:28 UTC 2018


When the buffer is full, there supposed to be no more
writes, the code however misses the else statement and
subsequently writes to arbitrary pointer location and increases
the offset.
This patch fixes that by returning immediately.

Signed-off-by: Ramon Fried <ramon.fried at gmail.com>
---
 common/iotrace.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/common/iotrace.c b/common/iotrace.c
index 74408a5dbb..5f06d2b250 100644
--- a/common/iotrace.c
+++ b/common/iotrace.c
@@ -55,6 +55,8 @@ static void add_record(int flags, const void *ptr, ulong value)
 		rec = (struct iotrace_record *)map_sysmem(
 					iotrace.start + iotrace.offset,
 					sizeof(value));
+	} else {
+		return;
 	}
 
 	rec->timestamp = get_ticks();
-- 
2.17.0



More information about the U-Boot mailing list