On Mon, Jan 03, 2022 at 01:03:10PM +0100, Ahmad Fatoum wrote: > The current millisecond output may be too coarse for debugging timing > of barebox functionality. Add an optional nanosecond output. > > Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > --- > commands/time.c | 21 ++++++++++++++------- > 1 file changed, 14 insertions(+), 7 deletions(-) > > diff --git a/commands/time.c b/commands/time.c > index 25ba2da15ed5..2d9fb75e7a8c 100644 > --- a/commands/time.c > +++ b/commands/time.c > @@ -9,7 +9,7 @@ static int do_time(int argc, char *argv[]) > int i; > unsigned char *buf; > u64 start, end, diff64; > - unsigned long diff; > + bool nanoseconds = false; > int len = 1; /* '\0' */ > > if (argc < 2) > @@ -20,7 +20,13 @@ static int do_time(int argc, char *argv[]) > > buf = xzalloc(len); The argv[] elements are copied into a string allocated here. The number of bytes needed is calculated before the option parsing, so the space allocated here unnecessarily includes the space for the options. Not a big deal, but I think it's more consistent to move the option parsing before calculating the needed buffer space. > > - for (i = 1; i < argc; i++) { > + i = 1; > + if (!strcmp(argv[i], "-n")) { > + nanoseconds = true; > + i++; > + } I just created a patch to support '+' as the first character of optstring. This allows you to use regular getopt for option parsing here. Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox