Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Description of problem:
Guest will hang there while set machine type pc-i440fx-rhel7.1.0/rhel7.2.0 , panic device in guest's xml and get guest crash with echo c >/proc/sysrq-trigger command
Version-Release number:
host packet info
qemu-kvm-rhev-2.3.0-1.el7.x86_64
kernel-3.10.0-252.el7.x86_64
libvirt-1.2.15-2.el7.x86_64
guest packet info
kernel-3.10.0-252.el7.x86_64
How reproducible:
100%
Steps to Reproduce:
1.Prepare a guest with panic enabled
#virsh dumpxml 7.2
--
<os>
<type arch='x86_64' machine='pc-i440fx-rhel7.2.0'>hvm</type>
<boot dev='hd'/>
</os>
--
<on_crash>coredump-restart</on_crash>
--
<panic>
<address type='isa' iobase='0x505'/>
</panic>
2.Start the guest
#virsh start 7.2
3.Login guest and crash the guest with the following command, the guest will hang there and won't generate the dump file
guest#systemctl stop kdump
guest#echo c >/proc/sysrq-trigger
4.Other on_crash events coredump-destroy,destroy,restart can also hit this issue
5.Crash the guest with the following command , the guest with the following command, the guest won't hang and will work as expect
#sync
#printf '%b' '\x01' | dd of=/dev/port seek=$((16#505)) bs=1 count=1
6.It works well with qemu-kvm-rhev-2.2.0-9.el7.x86_64 with machine type pc-i440fx-rhel7.1.0
Actual results:
Guest will hang there while set machine type pc-i440fx-rhel7.1.0/rhel7.2.0 , panic device in guest's xml and get guest crash with echo c >/proc/sysrq-trigger command
Expected results:
The guest shouldn't hang and the on_crash events should work as expect while crash guest with echo c >/proc/sysrq-trigger command
Sounds like an issue with the guest's kernel or panic device driver. Moving to qemu-kvm-rhev for further investigation and decision about the right component.
hi Hai
I try the command you gave me in rhel7.2 physical host, the host will hang there and print some call trace info in the screen after run the second command
#echo c >/proc/sysrq-trigger
[ 375.034957] SysRq : Trigger a crash
[ 375.038595] BUG unable to handle kernel NULL pointer dereference at (null)
[ 375.046749] IP: [<ffffffff81397486>] sysrq_handle_crash+0x16/0x20
Hi Hai
If I‘m not mistaken to remember it, there should have two ways to take a crash dump while guest get crash, one way, we could generate the crash dump by kdump service, another way, we could get the crash dump file by pvpanic device, both ways should be ok. In fact, we can always get the dump file while enable panic device in guest's xml, stop kdump service inside guest,then get guest crash. Only we met this issue while test it with qemu-kvm-rhev-2.3.0-1.el7.x86_64 and set guest machine type pc-i440fx-rhel7.2.0, so i doubt that did we change anyting about the pvpanic with the latest qemu packet, if it did, so can you explain it to us ? so that we can change this part in our testplan in time, thanks
qemu-2.3 doesn't generate an ACPI function that the kernel uses to query availability of the pvpanic device, so it doesn't get used.
(Like you noticed, it works fine when writing to its port manually.)
I've posted a patch upstream,
http://lists.nongnu.org/archive/html/qemu-devel/2015-05/msg05609.html
Thanks.
Comment 12Miroslav Rezanina
2015-06-24 08:36:47 UTC
with vm xml in https://bugzilla.redhat.com/show_bug.cgi?id=1221943#c0
on qemu-kvm-rhev-2.3.0-2.el7
vm kernel hang at panic
on qemu-kvm-rhev-2.3.0-7.el7
vm reboot after 'echo c > /proc/sysrq-trigger'
moving to VERIFIED.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://rhn.redhat.com/errata/RHBA-2015-2546.html
Description of problem: Guest will hang there while set machine type pc-i440fx-rhel7.1.0/rhel7.2.0 , panic device in guest's xml and get guest crash with echo c >/proc/sysrq-trigger command Version-Release number: host packet info qemu-kvm-rhev-2.3.0-1.el7.x86_64 kernel-3.10.0-252.el7.x86_64 libvirt-1.2.15-2.el7.x86_64 guest packet info kernel-3.10.0-252.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1.Prepare a guest with panic enabled #virsh dumpxml 7.2 -- <os> <type arch='x86_64' machine='pc-i440fx-rhel7.2.0'>hvm</type> <boot dev='hd'/> </os> -- <on_crash>coredump-restart</on_crash> -- <panic> <address type='isa' iobase='0x505'/> </panic> 2.Start the guest #virsh start 7.2 3.Login guest and crash the guest with the following command, the guest will hang there and won't generate the dump file guest#systemctl stop kdump guest#echo c >/proc/sysrq-trigger 4.Other on_crash events coredump-destroy,destroy,restart can also hit this issue 5.Crash the guest with the following command , the guest with the following command, the guest won't hang and will work as expect #sync #printf '%b' '\x01' | dd of=/dev/port seek=$((16#505)) bs=1 count=1 6.It works well with qemu-kvm-rhev-2.2.0-9.el7.x86_64 with machine type pc-i440fx-rhel7.1.0 Actual results: Guest will hang there while set machine type pc-i440fx-rhel7.1.0/rhel7.2.0 , panic device in guest's xml and get guest crash with echo c >/proc/sysrq-trigger command Expected results: The guest shouldn't hang and the on_crash events should work as expect while crash guest with echo c >/proc/sysrq-trigger command