backends/cryptodev-builtin.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)
It seems that this error does not need to be propagated to the upper,
directly output the error to avoid the leaks
Closes: https://gitlab.com/qemu-project/qemu/-/issues/2283
Signed-off-by: Li Zhijian <lizhijian@fujitsu.com>
---
backends/cryptodev-builtin.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/backends/cryptodev-builtin.c b/backends/cryptodev-builtin.c
index a514bbb310..940104ee55 100644
--- a/backends/cryptodev-builtin.c
+++ b/backends/cryptodev-builtin.c
@@ -23,6 +23,7 @@
#include "qemu/osdep.h"
#include "sysemu/cryptodev.h"
+#include "qemu/error-report.h"
#include "qapi/error.h"
#include "standard-headers/linux/virtio_crypto.h"
#include "crypto/cipher.h"
@@ -396,8 +397,8 @@ static int cryptodev_builtin_create_session(
case VIRTIO_CRYPTO_HASH_CREATE_SESSION:
case VIRTIO_CRYPTO_MAC_CREATE_SESSION:
default:
- error_setg(&local_error, "Unsupported opcode :%" PRIu32 "",
- sess_info->op_code);
+ error_report("Unsupported opcode :%" PRIu32 "",
+ sess_info->op_code);
return -VIRTIO_CRYPTO_NOTSUPP;
}
@@ -554,8 +555,8 @@ static int cryptodev_builtin_operation(
if (op_info->session_id >= MAX_NUM_SESSIONS ||
builtin->sessions[op_info->session_id] == NULL) {
- error_setg(&local_error, "Cannot find a valid session id: %" PRIu64 "",
- op_info->session_id);
+ error_report("Cannot find a valid session id: %" PRIu64 "",
+ op_info->session_id);
return -VIRTIO_CRYPTO_INVSESS;
}
--
2.31.1
22.04.2024 11:53, Li Zhijian via wrote: > It seems that this error does not need to be propagated to the upper, > directly output the error to avoid the leaks > > Closes: https://gitlab.com/qemu-project/qemu/-/issues/2283 > Signed-off-by: Li Zhijian <lizhijian@fujitsu.com> Applied to trivial-patches tree, with s/Closes/Resolves/ and with addition of "Fixes:" suggested by zhenwei pi. Thanks, /mjt
Hi, Please add the following message: Fixes: 2fda101de07("virtio-crypto:
Support asynchronous mode") LGTM. Reviewed-by: zhenwei pi <
pizhenwei@bytedance.com> > From:"Li Zhijian"<lizhijian@fujitsu.com> >
Date:Mon, Apr 22, 2024, 16:50 > Subject:[External] [PATCH]
backends/cryptodev-builtin: Fix local_error leaks > To:<
arei.gonglei@huawei.com>,<pizhenwei@bytedance.com> > Cc:<philmd@linaro.org
>,<qemu-devel@nongnu.org>,"Li Zhijian"<lizhijian@fujitsu.com> > It seems
that this error does not need to be propagated to the upper, > directly
output the error to avoid the leaks > > Closes:
https://gitlab.com/qemu-project/qemu/-/issues/2283 > Signed-off-by: Li
Zhijian <lizhijian@fujitsu.com> > --- > backends/cryptodev-builtin.c | 9
+++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff
--git a/backends/cryptodev-builtin.c b/backends/cryptodev-builtin.c > index
a514bbb310..940104ee55 100644 > --- a/backends/cryptodev-builtin.c > +++
b/backends/cryptodev-builtin.c > @@ -23,6 +23,7 @@ > > #include
"qemu/osdep.h" > #include "sysemu/cryptodev.h" > +#include
"qemu/error-report.h" > #include "qapi/error.h" > #include
"standard-headers/linux/virtio_crypto.h" > #include "crypto/cipher.h" > @@
-396,8 +397,8 @@ static int cryptodev_builtin_create_session( > case
VIRTIO_CRYPTO_HASH_CREATE_SESSION: > case
VIRTIO_CRYPTO_MAC_CREATE_SESSION: > default: > -
error_setg(&local_error, "Unsupported opcode :%" PRIu32 "", > -
sess_info->op_code); > + error_report("Unsupported opcode :%"
PRIu32 "", > + sess_info->op_code); > return
-VIRTIO_CRYPTO_NOTSUPP; > } > > @@ -554,8 +555,8 @@ static int
cryptodev_builtin_operation( > > if (op_info->session_id >=
MAX_NUM_SESSIONS || > builtin->sessions[op_info->session_id]
== NULL) { > - error_setg(&local_error, "Cannot find a valid session
id: %" PRIu64 "", > - op_info->session_id); > +
error_report("Cannot find a valid session id: %" PRIu64 "", > +
op_info->session_id); > return -VIRTIO_CRYPTO_INVSESS; >
} > > -- > 2.31.1
On 22/4/24 10:53, Li Zhijian wrote:
> It seems that this error does not need to be propagated to the upper,
> directly output the error to avoid the leaks
>
> Closes: https://gitlab.com/qemu-project/qemu/-/issues/2283
> Signed-off-by: Li Zhijian <lizhijian@fujitsu.com>
> ---
> backends/cryptodev-builtin.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/backends/cryptodev-builtin.c b/backends/cryptodev-builtin.c
> index a514bbb310..940104ee55 100644
> --- a/backends/cryptodev-builtin.c
> +++ b/backends/cryptodev-builtin.c
> @@ -23,6 +23,7 @@
>
> #include "qemu/osdep.h"
> #include "sysemu/cryptodev.h"
> +#include "qemu/error-report.h"
> #include "qapi/error.h"
> #include "standard-headers/linux/virtio_crypto.h"
> #include "crypto/cipher.h"
> @@ -396,8 +397,8 @@ static int cryptodev_builtin_create_session(
> case VIRTIO_CRYPTO_HASH_CREATE_SESSION:
> case VIRTIO_CRYPTO_MAC_CREATE_SESSION:
> default:
> - error_setg(&local_error, "Unsupported opcode :%" PRIu32 "",
> - sess_info->op_code);
> + error_report("Unsupported opcode :%" PRIu32 "",
> + sess_info->op_code);
> return -VIRTIO_CRYPTO_NOTSUPP;
> }
>
> @@ -554,8 +555,8 @@ static int cryptodev_builtin_operation(
>
> if (op_info->session_id >= MAX_NUM_SESSIONS ||
> builtin->sessions[op_info->session_id] == NULL) {
> - error_setg(&local_error, "Cannot find a valid session id: %" PRIu64 "",
> - op_info->session_id);
> + error_report("Cannot find a valid session id: %" PRIu64 "",
> + op_info->session_id);
> return -VIRTIO_CRYPTO_INVSESS;
> }
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
© 2016 - 2026 Red Hat, Inc.