mirror of https://github.com/thesofproject/sof.git
logger: convert: Fix compile time error with newer toolchain
Using Compiler version: aarch64-poky-linux-gcc (GCC) 13.2.0 we get the following error: tools/logger/convert.c: In function 'convert': tools/logger/convert.c:357:34: error: '%*s' directive output between 4294967264 and 4294967284 bytes exceeds 'INT_MAX' [-Werror=format-overflow=] | 357 | fprintf(out_fd, "%*s(us)%*s ", -ts_width, " TIMESTAMP", ts_width, "DELTA"); | | ^~~ ~~~~~~~~~~~~ | In file included from /opt/builds/OBNand/build/tmp/work/armv8a-poky-linux/sof-tools/2.8.0/recipe-sysroot/usr/include/stdio.h:964, | from /opt/builds/OBNand/build/tmp/work/armv8a-poky-linux/sof-tools/2.8.0/git/tools/logger/convert.h:13, | from /opt/builds/OBNand/build/tmp/work/armv8a-poky-linux/sof-tools/2.8.0/git/tools/logger/convert.c:21: | In function 'fprintf', Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> Signed-off-by: Marc Herbert <marc.herbert@intel.com>
This commit is contained in:
parent
c27eda7edb
commit
ff9343aa4a
|
@ -318,7 +318,7 @@ static double to_usecs(uint64_t time)
|
|||
}
|
||||
|
||||
/** Justified timestamp width for printf format string */
|
||||
static unsigned int timestamp_width(unsigned int precision)
|
||||
static uint8_t timestamp_width(uint8_t precision)
|
||||
{
|
||||
/* 64bits yields less than 20 digits precision. As reported by
|
||||
* gcc 9.3, this avoids a very long precision causing snprintf()
|
||||
|
@ -352,7 +352,7 @@ static inline void print_table_header(void)
|
|||
}
|
||||
|
||||
if (global_config->time_precision >= 0) {
|
||||
const unsigned int ts_width = timestamp_width(global_config->time_precision);
|
||||
const uint8_t ts_width = timestamp_width(global_config->time_precision);
|
||||
|
||||
fprintf(out_fd, "%*s(us)%*s ", -ts_width, " TIMESTAMP", ts_width, "DELTA");
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ struct convert_config {
|
|||
int dump_ldc;
|
||||
int hide_location;
|
||||
int relative_timestamps;
|
||||
int time_precision;
|
||||
uint8_t time_precision;
|
||||
struct snd_sof_uids_header *uids_dict;
|
||||
struct snd_sof_logs_header *logs_header;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue