Skip to contentSkip to conversation

scripts/device-crash-test: vmcoreinfo in error_whitelist for ppc64

PATCH In review Daniel Henrique Barboza 3 participants 6 messages Oct 27, 2017 – Nov 3, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 scripts/device-crash-test: vmcoreinfo in error_whitelist for ppc64

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

To fix it, this patch adds the following ppc64 machines into the error_whitelist for the vmcoreinfo device:

- pseries.*
- 40p
- bamboo
- g3beige
- mac99
- mpc8544ds
- powernv
- ppce500
- prep
- virtex-ml507

After this patch, the only ppc64 machine that reports error on the vmcoreinfo device is the 'none' type.

---
 scripts/device-crash-test | 12 ++++++++++++
 1 file changed, 12 insertions(+)
scripts/device-crash-test +12 -0
index 043b24a4aa..fb8a43d679 100755
@@ -163,6 +163,18 @@ ERROR_WHITELIST = [
     # "spapr-cpu-core needs a pseries machine"
     {'machine':'(?!pseries).*', 'device':'.*-spapr-cpu-core', 'expected':True},
 
+    # vmcoreinfo requires a fw_cfg device and will fail in these ppc64 machines
+    {'machine':'pseries.*', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'40p', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'bamboo', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'g3beige', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mac99', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mpc8544ds', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'powernv', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'ppce500', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'prep', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'virtex-ml507', 'device':'vmcoreinfo', 'expected':True},
+
     # KVM-specific devices shouldn't be tried without accel=kvm:
     {'accel':'(?!kvm).*', 'device':'kvmclock', 'expected':True},
     {'accel':'(?!kvm).*', 'device':'kvm-pci-assign', 'expected':True},
Signature · 1 line
2.13.6
#1 lore raw

Hi Daniel

Quoted 38 lines · Daniel Henrique Barboza

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

To fix it, this patch adds the following ppc64 machines into the error_whitelist for the vmcoreinfo device:

- pseries.*
- 40p
- bamboo
- g3beige
- mac99
- mpc8544ds
- powernv
- ppce500
- prep
- virtex-ml507

After this patch, the only ppc64 machine that reports error on the vmcoreinfo device is the 'none' type.

---
 scripts/device-crash-test | 12 ++++++++++++
 1 file changed, 12 insertions(+)
scripts/device-crash-test +1 -0
index 043b24a4aa..fb8a43d679 100755
@@ -163,6 +163,18 @@ ERROR_WHITELIST = [
     # "spapr-cpu-core needs a pseries machine"
     {'machine':'(?!pseries).*', 'device':'.*-spapr-cpu-core', 'expected':True},
 
+    # vmcoreinfo requires a fw_cfg device and will fail in these ppc64 machines

scripts/device-crash-test ERROR_WHITELIST = [ · line 176

Quoted 10 lines
scripts/device-crash-test +10 -0
+    {'machine':'pseries.*', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'40p', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'bamboo', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'g3beige', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mac99', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mpc8544ds', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'powernv', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'ppce500', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'prep', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'virtex-ml507', 'device':'vmcoreinfo', 'expected':True},

You could try to make it fit on one line with r"(pseries.*|40p|bamboo|...)". Declaring a ppc64_machines before would probably help too.

Any idea for an alternative vmcoreinfo device approach on ppc64?

Quoted 8 lines
scripts/device-crash-test +1 -1
+
     # KVM-specific devices shouldn't be tried without accel=kvm:
     {'accel':'(?!kvm).*', 'device':'kvmclock', 'expected':True},
     {'accel':'(?!kvm).*', 'device':'kvm-pci-assign', 'expected':True},
--

2.13.6

Signature · 1 line
Marc-André Lureau
#2 lore raw
Quoted 57 lines · Marc-André Lureau

Hi Daniel

Quoted 38 lines · Daniel Henrique Barboza

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

To fix it, this patch adds the following ppc64 machines into the error_whitelist for the vmcoreinfo device:

- pseries.*
- 40p
- bamboo
- g3beige
- mac99
- mpc8544ds
- powernv
- ppce500
- prep
- virtex-ml507

After this patch, the only ppc64 machine that reports error on the vmcoreinfo device is the 'none' type.

---
 scripts/device-crash-test | 12 ++++++++++++
 1 file changed, 12 insertions(+)
scripts/device-crash-test +1 -0
index 043b24a4aa..fb8a43d679 100755
@@ -163,6 +163,18 @@ ERROR_WHITELIST = [
     # "spapr-cpu-core needs a pseries machine"
     {'machine':'(?!pseries).*', 'device':'.*-spapr-cpu-core', 'expected':True},
 
+    # vmcoreinfo requires a fw_cfg device and will fail in these ppc64 machines

scripts/device-crash-test ERROR_WHITELIST = [ · line 176

Quoted 10 lines
scripts/device-crash-test +10 -0
+    {'machine':'pseries.*', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'40p', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'bamboo', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'g3beige', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mac99', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mpc8544ds', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'powernv', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'ppce500', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'prep', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'virtex-ml507', 'device':'vmcoreinfo', 'expected':True},

You could try to make it fit on one line with r"(pseries.*|40p|bamboo|...)". Declaring a ppc64_machines before would probably help too.

Quoted 1 line

Any idea for an alternative vmcoreinfo device approach on ppc64?

It's not only about ppc64 - this problem exists also on most other targets, e.g.:

$ m68k-softmmu/qemu-system-m68k -M none -device vmcoreinfo
qemu-system-m68k: -device vmcoreinfo: vmcoreinfo device requires fw_cfg
with DMA

So for the device-crash-test script, I think it would make more sense to add a generic, machine-independent entry for this.

Additionally, I think it's also a bad idea to blindly add this vmcoreinfo device to all targets! We should only add it to the targets that actually feature the fw_cfg device with DMA, so we need a proper CONFIG_xxx switch for this. Marc-André or Daniel, do you have time to work on such a patch? Otherwise, I can have a look at this, too.

Thomas

#3 lore raw

Hi Thomas

Quoted 67 lines · Thomas Huth
Quoted 57 lines · Marc-André Lureau

Hi Daniel

Quoted 38 lines · Daniel Henrique Barboza

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

To fix it, this patch adds the following ppc64 machines into the error_whitelist for the vmcoreinfo device:

- pseries.*
- 40p
- bamboo
- g3beige
- mac99
- mpc8544ds
- powernv
- ppce500
- prep
- virtex-ml507

After this patch, the only ppc64 machine that reports error on the vmcoreinfo device is the 'none' type.

---
 scripts/device-crash-test | 12 ++++++++++++
 1 file changed, 12 insertions(+)
scripts/device-crash-test +1 -0
index 043b24a4aa..fb8a43d679 100755
@@ -163,6 +163,18 @@ ERROR_WHITELIST = [
     # "spapr-cpu-core needs a pseries machine"
     {'machine':'(?!pseries).*', 'device':'.*-spapr-cpu-core', 'expected':True},
 
+    # vmcoreinfo requires a fw_cfg device and will fail in these ppc64 machines

scripts/device-crash-test ERROR_WHITELIST = [ · line 176

Quoted 10 lines
scripts/device-crash-test +10 -0
+    {'machine':'pseries.*', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'40p', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'bamboo', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'g3beige', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mac99', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'mpc8544ds', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'powernv', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'ppce500', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'prep', 'device':'vmcoreinfo', 'expected':True},
+    {'machine':'virtex-ml507', 'device':'vmcoreinfo', 'expected':True},

You could try to make it fit on one line with r"(pseries.*|40p|bamboo|...)". Declaring a ppc64_machines before would probably help too.

Quoted 1 line

Any idea for an alternative vmcoreinfo device approach on ppc64?

It's not only about ppc64 - this problem exists also on most other targets, e.g.:

$ m68k-softmmu/qemu-system-m68k -M none -device vmcoreinfo
qemu-system-m68k: -device vmcoreinfo: vmcoreinfo device requires fw_cfg
with DMA
Quoted 8 lines

So for the device-crash-test script, I think it would make more sense to add a generic, machine-independent entry for this.

Additionally, I think it's also a bad idea to blindly add this vmcoreinfo device to all targets! We should only add it to the targets that actually feature the fw_cfg device with DMA, so we need a proper CONFIG_xxx switch for this. Marc-André or Daniel, do you have time to work on such a patch? Otherwise, I can have a look at this, too.

Ah the DMA interface is only available on x86 & arm virt apparently. I thought it would be more widely available.

I can add a CONFIG_FW_CFG_DMA, set by x86)64-softmuu & arm-softmmu, and make vmcoreinfo depend on it. Would that be good enough?

Signature · 1 line
Marc-André Lureau
#4 lore raw
Quoted 14 lines · Marc-André Lureau

Hi Thomas

Quoted 11 lines · Thomas Huth
Quoted 10 lines · Marc-André Lureau

Hi Daniel

Quoted 6 lines · Daniel Henrique Barboza

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

[...]

Quoted 16 lines
Quoted 7 lines

It's not only about ppc64 - this problem exists also on most other targets, e.g.:

$ m68k-softmmu/qemu-system-m68k -M none -device vmcoreinfo
qemu-system-m68k: -device vmcoreinfo: vmcoreinfo device requires fw_cfg
with DMA
Quoted 8 lines

So for the device-crash-test script, I think it would make more sense to add a generic, machine-independent entry for this.

Additionally, I think it's also a bad idea to blindly add this vmcoreinfo device to all targets! We should only add it to the targets that actually feature the fw_cfg device with DMA, so we need a proper CONFIG_xxx switch for this. Marc-André or Daniel, do you have time to work on such a patch? Otherwise, I can have a look at this, too.

Quoted 5 lines

Ah the DMA interface is only available on x86 & arm virt apparently. I thought it would be more widely available.

I can add a CONFIG_FW_CFG_DMA, set by x86)64-softmuu & arm-softmmu, and make vmcoreinfo depend on it. Would that be good enough?

Yes, that sounds good to me!

Thanks,
Thomas

#5 lore raw
Quoted 31 lines · Thomas Huth
Quoted 14 lines · Marc-André Lureau

Hi Thomas

Quoted 11 lines · Thomas Huth
Quoted 10 lines · Marc-André Lureau

Hi Daniel

Quoted 6 lines · Daniel Henrique Barboza

The device vmcoreinfo depends on the fw_cfg device to work, a device that isn't available in most ppc64 machines. This makes device-crash-test spams the following error when running with qemu-system-ppc64:

"INFO: log: qemu-system-ppc64: -device vmcoreinfo: vmcoreinfo device requires fw_cfg with DMA"

[...]

Quoted 15 lines
Quoted 15 lines

It's not only about ppc64 - this problem exists also on most other targets, e.g.:

$ m68k-softmmu/qemu-system-m68k -M none -device vmcoreinfo
qemu-system-m68k: -device vmcoreinfo: vmcoreinfo device requires fw_cfg
with DMA

So for the device-crash-test script, I think it would make more sense to add a generic, machine-independent entry for this.

Additionally, I think it's also a bad idea to blindly add this vmcoreinfo device to all targets! We should only add it to the targets that actually feature the fw_cfg device with DMA, so we need a proper CONFIG_xxx switch for this. Marc-André or Daniel, do you have time to work on such a patch? Otherwise, I can have a look at this, too.

Quoted 5 lines
Quoted 5 lines

Ah the DMA interface is only available on x86 & arm virt apparently. I thought it would be more widely available.

I can add a CONFIG_FW_CFG_DMA, set by x86)64-softmuu & arm-softmmu, and make vmcoreinfo depend on it. Would that be good enough?

There are some ppc64-softmmu machines that have support for the -fw_cfg device, although I am not sure if in those cases the device has a DMA interface:

-machine 40p
-machine g3beige
-machine mac99

Just a FYI.

Thanks,

Daniel

Quoted 5 lines

Yes, that sounds good to me!

Thanks,
Thomas