Message ID | 20190308013222.12524-7-philmd@redhat.com |
---|---|
State | New |
Headers | show |
Series | fw_cfg: reduce memleaks, add QMP/HMP info + edk2_add_host_crypto_policy | expand |
On 08/03/2019 02.32, Philippe Mathieu-Daudé wrote: > The 'boot_splash_filedata_size' was introduced as a global variable > in 3d3b8303c6f. This variable is used as a 'size' argument to the > fw_cfg_add_file(). This function has an interface contract with his > 'data' argument, but there is no such contract for 'size' (this is > not a referenced pointer). We can simply remove it. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > hw/nvram/fw_cfg.c | 5 ++--- > include/sysemu/sysemu.h | 1 - > vl.c | 1 - > 3 files changed, 2 insertions(+), 5 deletions(-) > > diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c > index 8eb76a382c..b2dc0a80cb 100644 > --- a/hw/nvram/fw_cfg.c > +++ b/hw/nvram/fw_cfg.c > @@ -217,15 +217,14 @@ static void fw_cfg_bootsplash(FWCfgState *s) > } > g_free(boot_splash_filedata); > boot_splash_filedata = (uint8_t *)file_data; > - boot_splash_filedata_size = file_size; > > /* insert data */ > if (file_type == JPG_FILE) { > fw_cfg_add_file(s, "bootsplash.jpg", > - boot_splash_filedata, boot_splash_filedata_size); > + boot_splash_filedata, file_size); > } else { > fw_cfg_add_file(s, "bootsplash.bmp", > - boot_splash_filedata, boot_splash_filedata_size); > + boot_splash_filedata, file_size); > } > g_free(filename); > } > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > index 89604a8328..6065d9e420 100644 > --- a/include/sysemu/sysemu.h > +++ b/include/sysemu/sysemu.h > @@ -110,7 +110,6 @@ extern int old_param; > extern int boot_menu; > extern bool boot_strict; > extern uint8_t *boot_splash_filedata; > -extern size_t boot_splash_filedata_size; > extern bool enable_mlock; > extern bool enable_cpu_pm; > extern QEMUClockType rtc_clock; > diff --git a/vl.c b/vl.c > index 4c5cc0d8ad..fad6fec38c 100644 > --- a/vl.c > +++ b/vl.c > @@ -188,7 +188,6 @@ const char *prom_envs[MAX_PROM_ENVS]; > int boot_menu; > bool boot_strict; > uint8_t *boot_splash_filedata; > -size_t boot_splash_filedata_size; > bool wakeup_suspend_enabled; > > int icount_align_option; > Nice, one global variable less! Reviewed-by: Thomas Huth <thuth@redhat.com>
On 03/08/19 02:32, Philippe Mathieu-Daudé wrote: > The 'boot_splash_filedata_size' was introduced as a global variable > in 3d3b8303c6f. This variable is used as a 'size' argument to the > fw_cfg_add_file(). This function has an interface contract with his s/with his/on its/ With that update: Reviewed-by: Laszlo Ersek <lersek@redhat.com> Thanks Laszlo > 'data' argument, but there is no such contract for 'size' (this is > not a referenced pointer). We can simply remove it. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > hw/nvram/fw_cfg.c | 5 ++--- > include/sysemu/sysemu.h | 1 - > vl.c | 1 - > 3 files changed, 2 insertions(+), 5 deletions(-) > > diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c > index 8eb76a382c..b2dc0a80cb 100644 > --- a/hw/nvram/fw_cfg.c > +++ b/hw/nvram/fw_cfg.c > @@ -217,15 +217,14 @@ static void fw_cfg_bootsplash(FWCfgState *s) > } > g_free(boot_splash_filedata); > boot_splash_filedata = (uint8_t *)file_data; > - boot_splash_filedata_size = file_size; > > /* insert data */ > if (file_type == JPG_FILE) { > fw_cfg_add_file(s, "bootsplash.jpg", > - boot_splash_filedata, boot_splash_filedata_size); > + boot_splash_filedata, file_size); > } else { > fw_cfg_add_file(s, "bootsplash.bmp", > - boot_splash_filedata, boot_splash_filedata_size); > + boot_splash_filedata, file_size); > } > g_free(filename); > } > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > index 89604a8328..6065d9e420 100644 > --- a/include/sysemu/sysemu.h > +++ b/include/sysemu/sysemu.h > @@ -110,7 +110,6 @@ extern int old_param; > extern int boot_menu; > extern bool boot_strict; > extern uint8_t *boot_splash_filedata; > -extern size_t boot_splash_filedata_size; > extern bool enable_mlock; > extern bool enable_cpu_pm; > extern QEMUClockType rtc_clock; > diff --git a/vl.c b/vl.c > index 4c5cc0d8ad..fad6fec38c 100644 > --- a/vl.c > +++ b/vl.c > @@ -188,7 +188,6 @@ const char *prom_envs[MAX_PROM_ENVS]; > int boot_menu; > bool boot_strict; > uint8_t *boot_splash_filedata; > -size_t boot_splash_filedata_size; > bool wakeup_suspend_enabled; > > int icount_align_option; >
On 08/03/2019 07:49, Thomas Huth wrote: > On 08/03/2019 02.32, Philippe Mathieu-Daudé wrote: >> The 'boot_splash_filedata_size' was introduced as a global variable >> in 3d3b8303c6f. This variable is used as a 'size' argument to the >> fw_cfg_add_file(). This function has an interface contract with his >> 'data' argument, but there is no such contract for 'size' (this is >> not a referenced pointer). We can simply remove it. >> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >> --- >> hw/nvram/fw_cfg.c | 5 ++--- >> include/sysemu/sysemu.h | 1 - >> vl.c | 1 - >> 3 files changed, 2 insertions(+), 5 deletions(-) >> >> diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c >> index 8eb76a382c..b2dc0a80cb 100644 >> --- a/hw/nvram/fw_cfg.c >> +++ b/hw/nvram/fw_cfg.c >> @@ -217,15 +217,14 @@ static void fw_cfg_bootsplash(FWCfgState *s) >> } >> g_free(boot_splash_filedata); >> boot_splash_filedata = (uint8_t *)file_data; >> - boot_splash_filedata_size = file_size; >> >> /* insert data */ >> if (file_type == JPG_FILE) { >> fw_cfg_add_file(s, "bootsplash.jpg", >> - boot_splash_filedata, boot_splash_filedata_size); >> + boot_splash_filedata, file_size); >> } else { >> fw_cfg_add_file(s, "bootsplash.bmp", >> - boot_splash_filedata, boot_splash_filedata_size); >> + boot_splash_filedata, file_size); >> } >> g_free(filename); >> } >> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h >> index 89604a8328..6065d9e420 100644 >> --- a/include/sysemu/sysemu.h >> +++ b/include/sysemu/sysemu.h >> @@ -110,7 +110,6 @@ extern int old_param; >> extern int boot_menu; >> extern bool boot_strict; >> extern uint8_t *boot_splash_filedata; >> -extern size_t boot_splash_filedata_size; >> extern bool enable_mlock; >> extern bool enable_cpu_pm; >> extern QEMUClockType rtc_clock; >> diff --git a/vl.c b/vl.c >> index 4c5cc0d8ad..fad6fec38c 100644 >> --- a/vl.c >> +++ b/vl.c >> @@ -188,7 +188,6 @@ const char *prom_envs[MAX_PROM_ENVS]; >> int boot_menu; >> bool boot_strict; >> uint8_t *boot_splash_filedata; >> -size_t boot_splash_filedata_size; >> bool wakeup_suspend_enabled; >> >> int icount_align_option; >> > > Nice, one global variable less! > > Reviewed-by: Thomas Huth <thuth@redhat.com> > Applied to my trivial-patches branch. Thanks, Laurent
diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index 8eb76a382c..b2dc0a80cb 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -217,15 +217,14 @@ static void fw_cfg_bootsplash(FWCfgState *s) } g_free(boot_splash_filedata); boot_splash_filedata = (uint8_t *)file_data; - boot_splash_filedata_size = file_size; /* insert data */ if (file_type == JPG_FILE) { fw_cfg_add_file(s, "bootsplash.jpg", - boot_splash_filedata, boot_splash_filedata_size); + boot_splash_filedata, file_size); } else { fw_cfg_add_file(s, "bootsplash.bmp", - boot_splash_filedata, boot_splash_filedata_size); + boot_splash_filedata, file_size); } g_free(filename); } diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 89604a8328..6065d9e420 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -110,7 +110,6 @@ extern int old_param; extern int boot_menu; extern bool boot_strict; extern uint8_t *boot_splash_filedata; -extern size_t boot_splash_filedata_size; extern bool enable_mlock; extern bool enable_cpu_pm; extern QEMUClockType rtc_clock; diff --git a/vl.c b/vl.c index 4c5cc0d8ad..fad6fec38c 100644 --- a/vl.c +++ b/vl.c @@ -188,7 +188,6 @@ const char *prom_envs[MAX_PROM_ENVS]; int boot_menu; bool boot_strict; uint8_t *boot_splash_filedata; -size_t boot_splash_filedata_size; bool wakeup_suspend_enabled; int icount_align_option;
The 'boot_splash_filedata_size' was introduced as a global variable in 3d3b8303c6f. This variable is used as a 'size' argument to the fw_cfg_add_file(). This function has an interface contract with his 'data' argument, but there is no such contract for 'size' (this is not a referenced pointer). We can simply remove it. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- hw/nvram/fw_cfg.c | 5 ++--- include/sysemu/sysemu.h | 1 - vl.c | 1 - 3 files changed, 2 insertions(+), 5 deletions(-)