unmapping of persistent grants in qemu

Bug #1394327 reported by Xing Lin
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
qemu (Debian)
Fix Released
Unknown
qemu (Ubuntu)
Fix Released
Medium
Stefan Bader
Trusty
Fix Released
Medium
Stefan Bader
Utopic
Fix Released
Medium
Stefan Bader

Bug Description

A patch was discussed in xen-devel mailing list, to deal with unmapping of persistent grants in qemu for Xen on 12 Nov 2014. This patch is not included in any stable qemu release (including 2.0.2, 2.1.2 and 2.2.0-rc2 ) yet. The patch is available here.
http://lists.xenproject.org/archives/html/xen-devel/2014-11/msg01112.html

Without this patch, when creating a xen guest from OpenStack, using the Xen+libvirt approach, it will result in dom0 kernel crashes, with dmesg as following.

[ 9443.130600] blkfront: xvda: flush diskcache: enabled; persistent grants: enabled; indirect descriptors: disabled;
[ 9443.132818] xvda: xvda1
[ 9444.604489] xen:grant_table: WARNING: g.e. 0x30 still in use!
[ 9444.604496] deferring g.e. 0x30 (pfn 0xffffffffffffffff)
[ 9444.604499] xen:grant_table: WARNING: g.e. 0x31 still in use!
[ 9444.604502] deferring g.e. 0x31 (pfn 0xffffffffffffffff)
[ 9444.604505] xen:grant_table: WARNING: g.e. 0x32 still in use!
[ 9444.604508] deferring g.e. 0x32 (pfn 0xffffffffffffffff)
  ==== lots of them====
[ 9444.604719] xen:grant_table: WARNING: g.e. 0xe still in use!
[ 9444.604721] deferring g.e. 0xe (pfn 0xffffffffffffffff)
[ 9444.604723] xen:grant_table: WARNING: g.e. 0xd still in use!
[ 9444.604725] deferring g.e. 0xd (pfn 0xffffffffffffffff)
[ 9448.325408] ------------[ cut here ]------------
[ 9448.325421] WARNING: CPU: 5 PID: 19902 at /build/buildd/linux-3.13.0/arch/x86/xen/multicalls.c:129 xen_mc_flush+0x
1a9/0x1b0()
[ 9448.325492] CPU: 5 PID: 19902 Comm: sudo Tainted: GF O 3.13.0-33-generic #58-Ubuntu
[ 9448.325494] Hardware name: Dell Inc. PowerEdge R710/00W9X3, BIOS 2.1.15 09/02/2010
[ 9448.325497] 0000000000000009 ffff8802d13d9aa8 ffffffff8171bd04 0000000000000000
[ 9448.325501] ffff8802d13d9ae0 ffffffff810676cd 0000000000000000 0000000000000001
[ 9448.325505] ffff88030418ffe0 ffff88031d6ab180 0000000000000010 ffff8802d13d9af0
[ 9448.325509] Call Trace:
[ 9448.325518] [<ffffffff8171bd04>] dump_stack+0x45/0x56
[ 9448.325523] [<ffffffff810676cd>] warn_slowpath_common+0x7d/0xa0
[ 9448.325526] [<ffffffff810677aa>] warn_slowpath_null+0x1a/0x20
[ 9448.325530] [<ffffffff81004e99>] xen_mc_flush+0x1a9/0x1b0
[ 9448.325534] [<ffffffff81006b99>] xen_set_pud_hyper+0x109/0x110
[ 9448.325538] [<ffffffff81006c3b>] xen_set_pud+0x9b/0xb0
[ 9448.325543] [<ffffffff81177f06>] __pmd_alloc+0xd6/0x110
[ 9448.325548] [<ffffffff81182218>] move_page_tables+0x678/0x720
[ 9448.325552] [<ffffffff8117ddb7>] ? vma_adjust+0x337/0x7d0
[ 9448.325557] [<ffffffff811c23fd>] shift_arg_pages+0xbd/0x1b0
[ 9448.325560] [<ffffffff81181671>] ? mprotect_fixup+0x151/0x290
[ 9448.325564] [<ffffffff811c26cb>] setup_arg_pages+0x1db/0x200
[ 9448.325570] [<ffffffff81213edc>] load_elf_binary+0x41c/0xd80
[ 9448.325576] [<ffffffff8131d503>] ? ima_get_action+0x23/0x30
[ 9448.325579] [<ffffffff8131c7e2>] ? process_measurement+0x82/0x2c0
[ 9448.325584] [<ffffffff811c2f7f>] search_binary_handler+0x8f/0x1b0
[ 9448.325587] [<ffffffff811c44f7>] do_execve_common.isra.22+0x5a7/0x7e0
[ 9448.325591] [<ffffffff811c49c6>] SyS_execve+0x36/0x50
[ 9448.325596] [<ffffffff8172cc99>] stub_execve+0x69/0xa0
[ 9448.325599] ---[ end trace 53ac16782e751c0a ]---
[ 9448.347994] ------------[ cut here ]------------
[ 9448.348004] WARNING: CPU: 1 PID: 19902 at /build/buildd/linux-3.13.0/mm/mmap.c:2736 exit_mmap+0x16b/0x170()

Xing Lin (linxingnku)
description: updated
Stefan Bader (smb)
Changed in qemu (Ubuntu):
assignee: nobody → Stefan Bader (smb)
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Stefan Bader (smb) wrote :

I have just uploaded a modified version of qemu to my testing PPA[1]. I assumed your primary environment is Trusty. As soon as that is build you can get the updated qemu by adding that PPA. If you need packages for a different release, let me know.

[1] https://launchpad.net/~smb/+archive/ubuntu/xen?field.series_filter=trusty

Changed in qemu (Ubuntu Trusty):
assignee: nobody → Stefan Bader (smb)
importance: Undecided → Medium
status: New → In Progress
Changed in qemu (Ubuntu Utopic):
assignee: nobody → Stefan Bader (smb)
importance: Undecided → Medium
status: New → Triaged
Changed in debian:
status: Unknown → New
Changed in debian:
status: New → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qemu - 2.1+dfsg-7ubuntu2

---------------
qemu (2.1+dfsg-7ubuntu2) vivid; urgency=low

  * d/p/upstream-xen_disk-fix-unmapping-of-persistent-grants.patch:
    Cherry-pick of qemu-upstream patch to fix issues with persistent
    grants and the PV backend (Qdisk) (LP: #1394327).
 -- Stefan Bader <email address hidden> Fri, 28 Nov 2014 13:14:37 +0100

Changed in qemu (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Stefan Bader (smb) wrote :

SRU justification:

Impact: As soon as dom0 starts qemu it will try to locally attach QCOW(2) images in case a PV guest is using those. This results in the described errors and sometimes the whole host is rendered unusable.

Fix: Cherry picking an upstream patch (which was done already for Vivid) resolves the issues.

Testcase: Prepare a PV guest that uses a QCOW2 image and try to start it. Depends on Xen starting dom0 (bug #1396068).

Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello Xing, or anyone else affected,

Accepted qemu into trusty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/qemu/2.0.0+dfsg-2ubuntu1.10 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in qemu (Ubuntu Trusty):
status: In Progress → Fix Committed
tags: added: verification-needed
Changed in qemu (Ubuntu Utopic):
status: Triaged → Fix Committed
Revision history for this message
Chris J Arges (arges) wrote :

Hello Xing, or anyone else affected,

Accepted qemu into utopic-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/qemu/2.1+dfsg-4ubuntu6.4 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Revision history for this message
Xing Lin (linxingnku) wrote : Re: [Bug 1394327] Please test proposed package
Download full text (5.2 KiB)

Hi,

I am pretty busy this week. I shall be able to do the test this weekend or
next week. Thanks,

-Xing

On Tue, Dec 16, 2014 at 7:18 AM, Chris J Arges <email address hidden>
wrote:

> Hello Xing, or anyone else affected,
>
> Accepted qemu into utopic-proposed. The package will build now and be
> available at http://launchpad.net/ubuntu/+source/qemu/2.1+dfsg-
> 4ubuntu6.4 in a few hours, and then in the -proposed repository.
>
> Please help us by testing this new package. See
> https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
> enable and use -proposed. Your feedback will aid us getting this update
> out to other Ubuntu users.
>
> If this package fixes the bug for you, please add a comment to this bug,
> mentioning the version of the package you tested, and change the tag
> from verification-needed to verification-done. If it does not fix the
> bug for you, please add a comment stating that, and change the tag to
> verification-failed. In either case, details of your testing will help
> us make a better decision.
>
> Further information regarding the verification process can be found at
> https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
> advance!
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1394327
>
> Title:
> unmapping of persistent grants in qemu
>
> Status in qemu package in Ubuntu:
> Fix Released
> Status in qemu source package in Trusty:
> Fix Committed
> Status in qemu source package in Utopic:
> Fix Committed
> Status in Debian GNU/Linux:
> Fix Released
>
> Bug description:
> A patch was discussed in xen-devel mailing list, to deal with unmapping
> of persistent grants in qemu for Xen on 12 Nov 2014. This patch is not
> included in any stable qemu release (including 2.0.2, 2.1.2 and 2.2.0-rc2 )
> yet. The patch is available here.
>
> http://lists.xenproject.org/archives/html/xen-devel/2014-11/msg01112.html
>
> Without this patch, when creating a xen guest from OpenStack, using
> the Xen+libvirt approach, it will result in dom0 kernel crashes, with
> dmesg as following.
>
>
> [ 9443.130600] blkfront: xvda: flush diskcache: enabled; persistent
> grants: enabled; indirect descriptors: disabled;
> [ 9443.132818] xvda: xvda1
> [ 9444.604489] xen:grant_table: WARNING: g.e. 0x30 still in use!
> [ 9444.604496] deferring g.e. 0x30 (pfn 0xffffffffffffffff)
> [ 9444.604499] xen:grant_table: WARNING: g.e. 0x31 still in use!
> [ 9444.604502] deferring g.e. 0x31 (pfn 0xffffffffffffffff)
> [ 9444.604505] xen:grant_table: WARNING: g.e. 0x32 still in use!
> [ 9444.604508] deferring g.e. 0x32 (pfn 0xffffffffffffffff)
> ==== lots of them====
> [ 9444.604719] xen:grant_table: WARNING: g.e. 0xe still in use!
> [ 9444.604721] deferring g.e. 0xe (pfn 0xffffffffffffffff)
> [ 9444.604723] xen:grant_table: WARNING: g.e. 0xd still in use!
> [ 9444.604725] deferring g.e. 0xd (pfn 0xffffffffffffffff)
> [ 9448.325408] ------------[ cut here ]------------
> [ 9448.325421] WARNING: CPU: 5 PID: 19902 at
> /build/buildd/linux-3.13.0/arch/x86/xen/multicalls.c:129 xen_mc_flush+0x
> ...

Read more...

Mathew Hodson (mhodson)
affects: debian → qemu (Debian)
Revision history for this message
Stefan Bader (smb) wrote :

Upgraded a Trusty and Utopic host with qemu from proposed (after also upgrading xen for bug #1396068). After that defined a PV guest using a qcow2 image and booted that. No errors in dmesg and both VMs started.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Xing Lin (linxingnku) wrote :

thanks for verifying it, Stefan!

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qemu - 2.0.0+dfsg-2ubuntu1.10

---------------
qemu (2.0.0+dfsg-2ubuntu1.10) trusty; urgency=low

  * Apply an upstream qemu patch to fix issues with persistent grants
    on qcow images accessed by dom0 (LP: #1394327).
 -- Stefan Bader <email address hidden> Mon, 15 Dec 2014 09:56:34 +0100

Changed in qemu (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for qemu has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qemu - 2.1+dfsg-4ubuntu6.4

---------------
qemu (2.1+dfsg-4ubuntu6.4) utopic; urgency=low

  * Apply an upstream qemu patch to fix issues with persistent grants
    on qcow images accessed by dom0 (LP: #1394327).
 -- Stefan Bader <email address hidden> Mon, 15 Dec 2014 09:49:17 +0100

Changed in qemu (Ubuntu Utopic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.