!349 Automatically generate code patches with openeuler !185

From: @kuhnchen18
Reviewed-by: @imxcc
Signed-off-by: @imxcc
This commit is contained in:
openeuler-ci-bot 2021-08-16 10:45:43 +00:00 committed by Gitee
commit d60ae9a499
2 changed files with 43 additions and 1 deletions

View File

@ -1,6 +1,6 @@
Name: qemu
Version: 4.1.0
Release: 76
Release: 77
Epoch: 2
Summary: QEMU is a generic and open source machine emulator and virtualizer
License: GPLv2 and BSD and MIT and CC-BY-SA-4.0
@ -555,6 +555,7 @@ Patch0542: vfio-Add-vfio_prereg_listener_log_sync-in-nested-sta.patch
Patch0543: vfio-Add-vfio_prereg_listener_log_clear-to-re-enable.patch
Patch0544: vfio-Add-vfio_prereg_listener_global_log_start-stop-.patch
Patch0545: hw-arm-smmuv3-Post-load-stage-1-configurations-to-th.patch
Patch0546: usbredir-fix-free-call.patch
BuildRequires: flex
BuildRequires: gcc
@ -949,6 +950,9 @@ getent passwd qemu >/dev/null || \
%endif
%changelog
* Mon Aug 16 2021 Chen Qun <kuhn.chenqun@huawei.com>
- usbredir: fix free call
* Wed Aug 04 2021 Chen Qun <kuhn.chenqun@huawei.com>
- vfio: Support host translation granule size
- vfio/migrate: Move switch of dirty tracking into vfio_memory_listener

View File

@ -0,0 +1,38 @@
From 642ace93283c326666a9bbc2f8cf5b483fca2a6a Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 22 Jul 2021 09:27:56 +0200
Subject: [PATCH] usbredir: fix free call
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
data might point into the middle of a larger buffer, there is a separate
free_on_destroy pointer passed into bufp_alloc() to handle that. It is
only used in the normal workflow though, not when dropping packets due
to the queue being full. Fix that.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/491
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210722072756.647673-1-kraxel@redhat.com>
Signed-off-by: imxcc <xingchaochao@huawei.com>
---
hw/usb/redirect.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
index 3cf82589ed..71f3594f4a 100644
--- a/hw/usb/redirect.c
+++ b/hw/usb/redirect.c
@@ -468,7 +468,7 @@ static int bufp_alloc(USBRedirDevice *dev, uint8_t *data, uint16_t len,
if (dev->endpoint[EP2I(ep)].bufpq_dropping_packets) {
if (dev->endpoint[EP2I(ep)].bufpq_size >
dev->endpoint[EP2I(ep)].bufpq_target_size) {
- free(data);
+ free(free_on_destroy);
return -1;
}
dev->endpoint[EP2I(ep)].bufpq_dropping_packets = 0;
--
2.27.0