797ce578a4
- kvm-Remove-7-qcow2-and-luks-iotests-that-are-taking-25-s.patch [bz#1683473] - kvm-spapr-fix-out-of-bounds-write-in-spapr_populate_drme.patch [bz#1674438] - kvm-qcow2-include-LUKS-payload-overhead-in-qemu-img-meas.patch [bz#1655065] - kvm-iotests-add-LUKS-payload-overhead-to-178-qemu-img-me.patch [bz#1655065] - kvm-vnc-detect-and-optimize-pageflips.patch [bz#1666206] - kvm-Load-kvm-module-during-boot.patch [bz#1676907 bz#1685995] - kvm-hostmem-file-reject-invalid-pmem-file-sizes.patch [bz#1669053] - kvm-iotests-Fix-test-200-on-s390x-without-virtio-pci.patch [bz#1687582] - kvm-block-file-posix-do-not-fail-on-unlock-bytes.patch [bz#1652572] - Resolves: bz#1652572 (QEMU core dumped if stop nfs service during migration) - Resolves: bz#1655065 ([rhel.8.0][fast train]'qemu-img measure' size does not match the real allocated size for luks-inside-qcow2 image) - Resolves: bz#1666206 (vnc server should detect page-flips and avoid sending fullscreen updates then.) - Resolves: bz#1669053 (Guest call trace when boot with nvdimm device backed by /dev/dax) - Resolves: bz#1674438 (RHEL8.0 - Guest reboot fails after memory hotplug multiple times (kvm)) - Resolves: bz#1676907 (/dev/kvm device exists but kernel module is not loaded on boot up causing VM start to fail in libvirt) - Resolves: bz#1683473 (Remove 7 qcow2 & luks iotests from rhel8 fast train build %check phase) - Resolves: bz#1685995 (/dev/kvm device exists but kernel module is not loaded on boot up causing VM start to fail in libvirt) - Resolves: bz#1687582 (QEMU IOTEST 200 fails with 'virtio-scsi-pci is not a valid device model name')
59 lines
2.3 KiB
Diff
59 lines
2.3 KiB
Diff
From cc7dbe3ae92a2bb1557df184493a331fe2381003 Mon Sep 17 00:00:00 2001
|
|
From: Max Reitz <mreitz@redhat.com>
|
|
Date: Wed, 3 Apr 2019 17:53:52 +0100
|
|
Subject: [PATCH 9/9] block/file-posix: do not fail on unlock bytes
|
|
|
|
RH-Author: Max Reitz <mreitz@redhat.com>
|
|
Message-id: <20190403175352.27439-2-mreitz@redhat.com>
|
|
Patchwork-id: 85408
|
|
O-Subject: [RHEL-AV-8.0.1 qemu-kvm PATCH 1/1] block/file-posix: do not fail on unlock bytes
|
|
Bugzilla: 1652572
|
|
RH-Acked-by: John Snow <jsnow@redhat.com>
|
|
RH-Acked-by: Stefano Garzarella <sgarzare@redhat.com>
|
|
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
|
|
|
|
From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
|
|
|
|
bdrv_replace_child() calls bdrv_check_perm() with error_abort on
|
|
loosening permissions. However file-locking operations may fail even
|
|
in this case, for example on NFS. And this leads to Qemu crash.
|
|
|
|
Let's avoid such errors. Note, that we ignore such things anyway on
|
|
permission update commit and abort.
|
|
|
|
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
|
|
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
|
|
(cherry picked from commit 696aaaed579ac5bf5fa336216909b46d3d8f07a8)
|
|
Signed-off-by: Max Reitz <mreitz@redhat.com>
|
|
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
|
---
|
|
block/file-posix.c | 12 ++++++++++++
|
|
1 file changed, 12 insertions(+)
|
|
|
|
diff --git a/block/file-posix.c b/block/file-posix.c
|
|
index 07bbdab..f0af144 100644
|
|
--- a/block/file-posix.c
|
|
+++ b/block/file-posix.c
|
|
@@ -812,6 +812,18 @@ static int raw_handle_perm_lock(BlockDriverState *bs,
|
|
|
|
switch (op) {
|
|
case RAW_PL_PREPARE:
|
|
+ if ((s->perm | new_perm) == s->perm &&
|
|
+ (s->shared_perm & new_shared) == s->shared_perm)
|
|
+ {
|
|
+ /*
|
|
+ * We are going to unlock bytes, it should not fail. If it fail due
|
|
+ * to some fs-dependent permission-unrelated reasons (which occurs
|
|
+ * sometimes on NFS and leads to abort in bdrv_replace_child) we
|
|
+ * can't prevent such errors by any check here. And we ignore them
|
|
+ * anyway in ABORT and COMMIT.
|
|
+ */
|
|
+ return 0;
|
|
+ }
|
|
ret = raw_apply_lock_bytes(s, s->fd, s->perm | new_perm,
|
|
~s->shared_perm | ~new_shared,
|
|
false, errp);
|
|
--
|
|
1.8.3.1
|
|
|