Thanks Eric and Markus's review, I have sent out another patch.
I'm not sure what's the effect when the etc/reboot-timeout and etc/splash-time is 0 in seabios, so CC'd Gerd. Maybe it can be more simplicity. Thanks, Li Qiang Eric Blake <ebl...@redhat.com> 于2018年10月31日周三 下午11:55写道: > On 10/24/18 6:35 AM, Laszlo Ersek wrote: > > On 10/24/18 09:11, Li Qiang wrote: > >> This can avoid setting a negative value to > >> etc/boot-fail-wait. > >> > >> Signed-off-by: Li Qiang <liq...@gmail.com> > >> --- > >> hw/nvram/fw_cfg.c | 15 ++++++++++----- > >> 1 file changed, 10 insertions(+), 5 deletions(-) > >> > >> diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c > >> index f4a52d8..276dcb1 100644 > >> --- a/hw/nvram/fw_cfg.c > >> +++ b/hw/nvram/fw_cfg.c > >> @@ -199,12 +199,17 @@ static void fw_cfg_reboot(FWCfgState *s) > >> reboot_timeout = strtol(p, &p, 10); > > Looks like Markus handled the question about replacing strtol(), so I'll > just point out one additional nit: > > >> } > >> } > >> - /* validate the input */ > >> - if (reboot_timeout > 0xffff) { > >> - error_report("reboot timeout is larger than 65535, force it to > 65535."); > > Pre-existing, but now's as good a time as any to improve it: > > >> - reboot_timeout = 0xffff; > >> + > >> + if (reboot_timeout >= 0) { > >> + /* validate the input */ > >> + if (reboot_timeout > 0xffff) { > >> + error_report("reboot timeout is larger than 65535," > >> + "force it to 65535."); > > error_report() callers generally do not end with trailing '.' > > -- > Eric Blake, Principal Software Engineer > Red Hat, Inc. +1-919-301-3266 > Virtualization: qemu.org | libvirt.org >