Red Hat Bugzilla – Bug 1247893
qemu's i6300esb watchdog does not fire on time with large heartbeat like 2046
Last modified: 2015-12-04 11:52:47 EST
This is for the qemu's i6300esb watchdog does not fire on time with large heartbeat problem, the original one has been solved in bug 1203914.
Please don't use clone in this situation. Cloning bugs is for when the same bug affects multiple products / versions. Using a clone in this case means the initial bug report is filled with details about the wrong bug.
I have done some test on following sw versions:
host kernel: 3.10.0-300.el7.ppc64le
Guest kernel: 3.10.0-295.el7.ppc64/3.10.0-295.el7.ppc64le
There is following test data:
So the hearbeat of i6300esb watchdog must treat 256 as a count cycle unit.
The timer value is not correctly computed: the function computes the number of QEMU ticks to wait whereas the timer function uses nanoseconds. The value is generally the same (if we suppose QEMU clock is 1GHz), but it is easier (and avoid overflow) to multiply by 30 instead of by 1000000000/33000000. I've sent a patch upstream.
Since we have a fix ready to go, and we should be able to get it into qemu-kvm-rhev for the 7.2 timeframe, moving back to rhel 7.2.
Fix included in qemu-kvm-rhev-2.3.0-17.el7
Verified on qemu-kvm-rhev-2.3.0-17.el7.x86_64:
boot guest with "-device i6300esb,id=watchdog0 -watchdog-action pause
"modprobe i6300esb heartbeat=2045" in guest
cat /dev/watchdog in guest, after about 34 minutes guest got paused.
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.