If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
No reason for local_err here, use errp directly instead.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
backends/cryptodev.c | 11 +--
1 file changed, 1 insertion(+), 10 deletions(-)
diff --git a/backends/cryptodev.c b/backends/cryptodev.c
index 3c071eab95..5a9735684e 100644
---
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
include/qapi/error.h | 23 +++
1 file changed, 23 insertions(+)
diff --git a/include/qapi/error.h b/include/qapi/error.h
index 12532bdf69..d6898d833b 100644
--- a/include/qapi/error.h
+++ b/include/qapi/error.h
@@ -309,6
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
include/qom/object.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/qom/object.h b/include/qom/object.h
index 128d00c77f..716f6f655d 100644
--- a/include/qom/object.h
+++ b/include/qom/object.h
@@ -1635,9 +1635,9 @@
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
hw/sd/sdhci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c
index e08ec3e398..e56031b5e4 100644
--- a/hw/sd/sdhci.c
+++ b/hw/sd/sdhci.c
@@ -1459,7 +1459,7 @@ static void
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
hw/s390x/event-facility.c | 2 +-
hw/s390x/s390-stattrib.c | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
index 66205697ae..dc733ee2af 100644
---
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
block/snapshot.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/snapshot.c b/block/snapshot.c
index 8081616ae9..bd9fb01817 100644
--- a/block/snapshot.c
+++ b/block/snapshot.c
@@ -426,7 +426,7 @@ fail:
}
int
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
fit_load_fdt forget to check that errp is not NULL and to zero it after
freeing. Fix it.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Reviewed-by: Eric Blake
---
hw/core/loader-fit.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hw/core/loader-fit.c
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Patchew URL:
https://patchew.org/QEMU/2019102015.11785-1-jfreim...@redhat.com/
Hi,
This series failed the docker-quick@centos7 build test. Please find the testing
commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
=== TEST SCRIPT BEGIN
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
hw/tpm/tpm_emulator.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/tpm/tpm_emulator.c b/hw/tpm/tpm_emulator.c
index 22f9113432..10d587ed40 100644
--- a/hw/tpm/tpm_emulator.c
+++ b/hw/tpm/tpm_emulator.c
@@ -155,7
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
monitor/qmp-cmds.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
index 0880341a2d..c6faa3eaf0 100644
--- a/monitor/qmp-cmds.c
+++ b/monitor/qmp-cmds.c
@@ -109,7 +109,7 @@ void
This is the payoff.
>From perf record -g data of ubuntu 18 boot and shutdown:
BEFORE:
- 23.02% 2.82% qemu-system-aar [.] helper_lookup_tb_ptr
- 20.22% helper_lookup_tb_ptr
+ 10.05% tb_htable_lookup
- 9.13% cpu_get_tb_cpu_state
3.20% aa64_va_parameters_both
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
We don't need Error **, as all callers pass local Error object, which
isn't used after the call. Use Error * instead.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
include/monitor/hmp.h | 2 +-
dump/dump-hmp-cmds.c | 4 +-
hw/core/machine-hmp-cmds.c | 6 +-
monitor/hmp-cmds.c
Continue setting, but not relying upon, env->hflags.
Signed-off-by: Richard Henderson
---
target/arm/op_helper.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/arm/op_helper.c b/target/arm/op_helper.c
index ccc2cecb46..b529d6c1bf 100644
--- a/target/arm/op_helper.c
+++
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
If we want to add some info to errp (by error_prepend() or
error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
Otherwise, this info will not be added when errp == _err
(the program will exit prior to the error_append_hint() or
error_prepend() call). Fix such cases.
If we want to
We don't need Error **, as all callers pass local Error object, which
isn't used after the call, or NULL. Use Error * instead.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
ui/vnc.h | 2 +-
ui/vnc.c | 20 +++-
2 files changed, 8 insertions(+), 14 deletions(-)
diff --git
Begin setting, but not relying upon, env->hflags.
Signed-off-by: Richard Henderson
---
linux-user/syscall.c| 1 +
target/arm/cpu.c| 1 +
target/arm/helper-a64.c | 3 +++
target/arm/helper.c | 2 ++
target/arm/machine.c| 1 +
target/arm/op_helper.c | 1 +
6 files changed, 9
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
hw/i386/amd_iommu.c | 14 +++---
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c
index d3726361dd..c496a0679b 100644
--- a/hw/i386/amd_iommu.c
+++ b/hw/i386/amd_iommu.c
@@ -1533,7
Make error_append_security_model_hint and
error_append_socket_sockfd_hint hint append helpers well formed:
rename errp to errp_in, as it is IN-parameter here (which is unusual
for errp).
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
hw/9pfs/9p-local.c | 4 ++--
hw/9pfs/9p-proxy.c | 5 +++--
2
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
qga/commands-posix.c | 2 +-
qga/commands-win32.c | 2 +-
qga/commands.c | 12 ++--
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
index dfc05f5b8a..6dcd2d5db6 100644
---
Continue setting, but not relying upon, env->hflags.
Signed-off-by: Richard Henderson
---
target/arm/translate-a64.c | 13 +++--
target/arm/translate.c | 28 +++-
2 files changed, 34 insertions(+), 7 deletions(-)
diff --git a/target/arm/translate-a64.c
Variable int err in inner scope shadows Error *err in outer scope.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Reviewed-by: Eric Blake
---
net/net.c | 17 +++--
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/net/net.c b/net/net.c
index 84aa6d8d00..9e93c3f8a1 100644
This functions are given the mode and el state of the cpu
and writes the computed value to env->hflags.
Signed-off-by: Richard Henderson
---
target/arm/helper.h | 4
target/arm/helper.c | 24
2 files changed, 28 insertions(+)
diff --git a/target/arm/helper.h
Rename Error ** parameter in check_only_migratable to common errp.
In device_set_realized:
- Move "if (local_err != NULL)" closer to error setters.
- Drop 'Error **local_errp': it doesn't save any LoCs, but it's very
unusual.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
On Thu, 10 Oct 2019 10:34:15 +
"Zhang, Chen" wrote:
> > -Original Message-
> > From: Lukas Straub
> > Sent: Wednesday, October 9, 2019 11:17 PM
> > To: Zhang, Chen
> > Cc: qemu-devel ; Jason Wang
> > ; Wen Congyang ;
> > Xie Changlong ; Kevin Wolf
> > ; Max Reitz ; qemu-block
> >
Make kvmppc_hint_smt_possible hint append helper well formed:
rename errp to errp_in, as it is IN-parameter here (which is unusual
for errp), rename function to be error_append_*_hint.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
target/ppc/kvm_ppc.h | 4 ++--
hw/ppc/spapr.c | 2 +-
By performing this store early, we avoid having to save and restore
the register holding the address around any function calls.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/arm/helper.c b/target/arm/helper.c
Make qbus_list_bus and qbus_list_dev hint append helpers well formed:
rename errp to errp_in, as it is IN-parameter here (which is unusual
for errp), rename functions to be error_append_*_hint.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
qdev-monitor.c | 24
1 file
Avoid calling arm_current_el() twice.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
target/arm/internals.h | 9 +
target/arm/helper.c| 12 +++-
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/target/arm/internals.h
This function assumes nothing about the current state of the cpu,
and writes the computed value to env->hflags.
Signed-off-by: Richard Henderson
---
target/arm/cpu.h| 6 ++
target/arm/helper.c | 30 ++
2 files changed, 28 insertions(+), 8 deletions(-)
diff
Create a function to compute the values of the TBFLAG_ANY bits
that will be cached, and are used by A-profile.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 20
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/target/arm/helper.c
Make nbd_iter_channel_error errp handler well formed:
rename errp to errp_in, as it is IN-parameter here (which is unusual
for errp).
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
block/nbd.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/block/nbd.c
There are 3 conditions that each enable this flag. M-profile always
enables; A-profile with EL1 as AA64 always enables. Both of these
conditions can easily be cached. The final condition relies on the
FPEXC register which we are not prepared to cache.
Signed-off-by: Richard Henderson
---
Error **errp is almost always OUT-argument: it's assumed to be NULL, or
pointer to NULL-initialized pointer, or pointer to error_abort or
error_fatal, for callee to report error.
But very few functions instead get Error **errp as IN-argument:
it's assumed to be set (or, maybe, NULL), and callee
Currently a trivial wrapper for rebuild_hflags_common_32.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/target/arm/helper.c b/target/arm/helper.c
index 296a4b2232..d1cd54cc93 100644
--- a/target/arm/helper.c
Hoist the variable load for PSTATE into the existing test vs is_a64.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 20
1 file changed, 8 insertions(+), 12 deletions(-)
diff --git a/target/arm/helper.c b/target/arm/helper.c
index e2a62cf19a..398e5f5d6d 100644
We do not need to compute any of these values for M-profile.
Further, XSCALE_CPAR overlaps VECSTRIDE so obviously the two
sets must be mutually exclusive.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 21 ++---
1 file changed, 14 insertions(+), 7 deletions(-)
diff
Create a function to compute the values of the TBFLAG_A32 bits
that will be cached, and are used by M-profile.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 45 ++---
1 file changed, 30 insertions(+), 15 deletions(-)
diff --git
Hoist the computation of some TBFLAG_A32 bits that only apply to
M-profile under a single test for ARM_FEATURE_M.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 49 +
1 file changed, 23 insertions(+), 26 deletions(-)
diff --git
Create a function to compute the values of the TBFLAG_A32 bits
that will be cached, and are used by all profiles.
Signed-off-by: Richard Henderson
---
target/arm/helper.c | 16 +++-
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/target/arm/helper.c
Set TBFLAG_ANY.BE_DATA in rebuild_hflags_common_32 and
rebuild_hflags_a64 instead of rebuild_hflags_common, where we do
not need to re-test is_a64() nor re-compute the various inputs.
Signed-off-by: Richard Henderson
---
target/arm/cpu.h| 49 +++--
Continue setting, but not relying upon, env->hflags.
Signed-off-by: Richard Henderson
---
target/arm/m_helper.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/target/arm/m_helper.c b/target/arm/m_helper.c
index 27cd2f3f96..f2512e448e 100644
--- a/target/arm/m_helper.c
+++
Changes since v5:
* Fix the debug assertion ifdef in the final patch.
* Add more calls to arm_rebuild_hflags: CPSR and M-profile
These become two new patches, 18 & 19.
* Update some comments per review. (Alex)
Changes since v4:
* Split patch 1 into 15 smaller patches.
* Cache the
Create a function to compute the values of the TBFLAG_ANY bits
that will be cached. For now, the env->hflags variable is not
used, and the results are fed back to cpu_get_tb_cpu_state.
Reviewed-by: Alex Bennée
Signed-off-by: Richard Henderson
---
target/arm/cpu.h| 29
Create a function to compute the values of the TBFLAG_A64 bits
that will be cached. For now, the env->hflags variable is not
used, and the results are fed back to cpu_get_tb_cpu_state.
Note that not all BTI related flags are cached, so we have to
test the BTI feature twice -- once for those bits
On Friday, October 11, 2019, Philippe Mathieu-Daudé
wrote:
> Hi Michael,
>
> On 9/2/19 4:01 PM, Michael Rolnik wrote:
>
>> This series of patches adds 8bit AVR cores to QEMU.
>> All instruction, except BREAK/DES/SPM/SPMX, are implemented. Not fully
>> tested yet.
>> However I was able to execute
Public bug reported:
When I install a new vm with qemu 4.1.0 all the guest filesystems are
corrupt. The first boot from the install dvd iso is ok and the installer
work fine. But the guest system hangs after the installer finishes and I
reboot the guest. I can see the grub boot menue but the
Add a test how our qcow2 driver handles extra data in snapshot table
entries, and how it repairs overly long snapshot tables.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
tests/qemu-iotests/261 | 523 +
tests/qemu-iotests/261.out | 346
On 9/2/19 4:01 PM, Michael Rolnik wrote:
Michael Rolnik (7):
target/avr: Add outward facing interfaces and core CPU logic
target/avr: Add instruction helpers
target/avr: Add instruction decoding
target/avr: Add instruction translation
[...]> target/avr/Makefile.objs | 33
Hi Michael,
On 9/2/19 4:01 PM, Michael Rolnik wrote:
This series of patches adds 8bit AVR cores to QEMU.
All instruction, except BREAK/DES/SPM/SPMX, are implemented. Not fully tested
yet.
However I was able to execute simple code with functions. e.g fibonacci
calculation.
This series of
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
tests/qemu-iotests/common.rc | 20
1 file changed, 20 insertions(+)
diff --git a/tests/qemu-iotests/common.rc b/tests/qemu-iotests/common.rc
index 12b4751848..fa7bae2422 100644
--- a/tests/qemu-iotests/common.rc
+++
09.10.2019 10:42, Markus Armbruster wrote:
> Vladimir Sementsov-Ogievskiy writes:
>
>> If we want to add some info to errp (by error_prepend() or
>> error_append_hint()), we must use the ERRP_AUTO_PROPAGATE macro.
>> Otherwise, this info will not be added when errp == _err
>> (the program will
qcow2_check_read_snapshot_table() can perform consistency checks, but it
cannot fix everything. Specifically, it cannot allocate new clusters,
because that should wait until the refcount structures are known to be
consistent (i.e., after qcow2_check_refcounts()). Thus, it cannot call
qcow2 v3 images require every snapshot table entry to have at least 16
bytes of extra data. If they do not, let qemu-img check -r all fix it.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2-snapshot.c | 18 ++
1 file changed, 18 insertions(+)
diff --git
When repairing the snapshot table, we truncate entries that have too
much extra data. This frees up space that we do not have to count
towards the snapshot table size.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2-snapshot.c | 14 +-
1 file changed, 13
The user cannot choose which snapshots are removed. This is fine
because we have chosen the maximum snapshot table size to be so large
(65536 entries) that it cannot be reasonably reached. If the snapshot
table exceeds this size, the image has probably been corrupted in some
way; in this case,
This does not make sense right now, but it will make sense once we need
to do more than to just update s->qcow_version.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2.c | 43 ++-
1 file changed, 38 insertions(+), 5 deletions(-)
diff
Reading the snapshot table can fail. That is a problem when we want to
repair the image.
Therefore, stop reading the snapshot table in qcow2_do_open() in check
mode. Instead, add a new function qcow2_check_read_snapshot_table()
that reads the snapshot table at a later point. In the future, we
The only case where we currently reject snapshot table entries is when
they have too much extra data. Fix them with qemu-img check -r all by
counting it as a corruption, reducing their extra_data_size, and then
letting qcow2_check_fix_snapshot_table() do the rest.
Signed-off-by: Max Reitz
The qcow2 specification says to ignore unknown extra data fields in
snapshot table entries. Currently, we discard it whenever we update the
image, which is a bit different from "ignore".
This patch makes the qcow2 driver keep all unknown extra data fields
when updating an image's snapshot table.
We currently refuse to open qcow2 images with overly long snapshot
tables. This patch makes qemu-img check -r all drop all offending
entries past what we deem acceptable.
The user cannot choose which snapshots are removed. This is fine
because we have chosen the maximum snapshot table size to
Updating the snapshot list will be useful when upgrading a v2 image to
v3, so we will need to call this function in qcow2.c.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2.h | 1 +
block/qcow2-snapshot.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff
qcow2 v3 requires every snapshot table entry to have two extra data
fields: The 64-bit VM state size, and the virtual disk size. Both are
optional for v2 images, so they may not be present.
qcow2_upgrade() therefore should update the snapshot table to ensure all
entries have these extra data
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2.h | 2 +-
block/qcow2-snapshot.c | 7 ++-
block/qcow2.c | 3 +--
3 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/block/qcow2.h b/block/qcow2.h
index f51f478e34..8da1ad11d9 100644
---
endof() is a useful macro, we can make use of it outside of virtio.
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
include/hw/virtio/virtio.h | 7 ---
include/qemu/compiler.h| 7 +++
hw/block/virtio-blk.c | 4 ++--
hw/net/virtio-net.c| 10 +-
4 files
Hi,
The v1 cover letter explained this series’s purpose:
https://lists.nongnu.org/archive/html/qemu-block/2019-07/msg01290.html
The v2 cover letter explained the v2 changes:
https://lists.nongnu.org/archive/html/qemu-block/2019-08/msg00921.html
The only changes in v3 are:
- Patches 12 and 13:
Signed-off-by: Max Reitz
Reviewed-by: Eric Blake
---
block/qcow2-snapshot.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/block/qcow2-snapshot.c b/block/qcow2-snapshot.c
index d0e7fa9311..752883e5c3 100644
--- a/block/qcow2-snapshot.c
+++ b/block/qcow2-snapshot.c
@@
Hi Michael,
On 9/2/19 4:01 PM, Michael Rolnik wrote:
Signed-off-by: Michael Rolnik
---
MAINTAINERS | 6 +++
arch_init.c | 2 +
configure | 93 ++---
default-configs/avr-softmmu.mak | 5 ++
On Thu, 10 Oct 2019 19:35:03 +0200
Igor Mammedov wrote:
Forgot to actually CC Eduardo,
> On Tue, 8 Oct 2019 07:33:15 -0400
> Igor Mammedov wrote:
...
> Eduardo,
>
> This patches are fixing various machines across tree, so series does not
> belong
> to any particular arch specific tree, can
201 - 300 of 503 matches
Mail list logo