1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 00:32:04 +02:00

iotrace: fix behaviour when buffer is full

Don't continue updating the offset when buffer is full.
When the buffer size exhausts and there's no space left to write
warn the user and update only the needed size and not both the
offset and needed size.

Add needed buffer size information in the iotrace command.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
This commit is contained in:
Ramon Fried
2018-06-08 20:53:27 +03:00
committed by Tom Rini
parent 501c89d330
commit e0212dfa13
3 changed files with 20 additions and 9 deletions

View File

@@ -9,12 +9,13 @@
static void do_print_stats(void)
{
ulong start, size, offset, count;
ulong start, size, needed_size, offset, count;
printf("iotrace is %sabled\n", iotrace_get_enabled() ? "en" : "dis");
iotrace_get_buffer(&start, &size, &offset, &count);
iotrace_get_buffer(&start, &size, &needed_size, &offset, &count);
printf("Start: %08lx\n", start);
printf("Size: %08lx\n", size);
printf("Actual Size: %08lx\n", size);
printf("Needed Size: %08lx\n", needed_size);
iotrace_get_region(&start, &size);
printf("Region: %08lx\n", start);
printf("Size: %08lx\n", size);
@@ -26,11 +27,11 @@ static void do_print_stats(void)
static void do_print_trace(void)
{
ulong start, size, offset, count;
ulong start, size, needed_size, offset, count;
struct iotrace_record *cur_record;
iotrace_get_buffer(&start, &size, &offset, &count);
iotrace_get_buffer(&start, &size, &needed_size, &offset, &count);
if (!start || !size || !count)
return;