On 11/3/20 2:52 AM, Chen Qun wrote: > After the WITH_QEMU_LOCK_GUARD macro is added, the compiler cannot identify > that the statements in the macro must be executed. As a result, some > variables > assignment statements in the macro may be considered as unexecuted by the > compiler. > > The compiler showed warning: > plugins/loader.c: In function ‘plugin_reset_uninstall’: > plugins/loader.c:382:15: warning: ‘ctx’ may be used uninitialized in this > function [-Wmaybe-uninitialized]
This shouldn't happen as the function returns before (else there is a NULL deref). > 382 | data->ctx = ctx; > | ~~~~~~~~~~^~~~~ > > Add a default value for 'expire_time' to prevented the warning. > > Reported-by: Euler Robot <euler.ro...@huawei.com> > Signed-off-by: Chen Qun <kuhn.chen...@huawei.com> > --- > Cc: "Alex Bennée" <alex.ben...@linaro.org> > --- > plugins/loader.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/plugins/loader.c b/plugins/loader.c > index 8ac5dbc20f..88593fe138 100644 > --- a/plugins/loader.c > +++ b/plugins/loader.c > @@ -367,7 +367,7 @@ void plugin_reset_uninstall(qemu_plugin_id_t id, > bool reset) > { > struct qemu_plugin_reset_data *data; > - struct qemu_plugin_ctx *ctx; > + struct qemu_plugin_ctx *ctx = NULL; > > WITH_QEMU_LOCK_GUARD(&plugin.lock) { > ctx = plugin_id_to_ctx_locked(id); >