Bug #7171

Test suite fails to start Xorg with cirrus graphics device on x86_64 arch

Added by anonym 2014-05-07 19:28:52 . Updated 2014-07-01 11:21:20 .

Status:
Rejected
Priority:
Normal
Assignee:
anonym
Category:
Test suite
Target version:
Start date:
2014-05-07
Due date:
% Done:

0%

Feature Branch:
Type of work:
Code
Blueprint:

Starter:
0
Affected tool:
Deliverable for:

Description

Trying this results in a fatal Xorg error, with a backtrace from /usr/bin/Xorg that seem to originate in /usr/lib/xorg/modules/libfb.so, and a bus error.

Using cirrus works fine with a devel build from 2014-04-25, but doesn’t work with a devel build from 2014-05-07. After a quick look at the diff of the .iso.packages files it seems the upgrade to Linux 3.14 may have caused this (no other upgraded packages are relevant).

It can easily be worked around by either:

1. switching to the QXL virtual graphics device

2. switch architecture from x86_64 to i686

but 2 doesn’t work for us since we need both architectures in some tests (e.g. memory_erasure.feature). Option 1 will be implemented in the branch test/6559-adapt-test-suite-for-Wheezy soon.


Subtasks


Related issues

Related to Tails - Bug #7478: Fails to start X in 64-bit QEMU with Cirrus video adapter Resolved 2014-07-01

History

#1 Updated by intrigeri 2014-05-07 23:32:36

It would be useful to know what version of libvirt and qemu is being used. IIRC, recent qemu / Linux have KMS support for Cirrus, so this may be relevant.

Also, can this be reproduced outside of the context of the test suite, with the same libvirt/qemu version? The answer to this question probably impacts the priority of this issue.

#2 Updated by intrigeri 2014-05-07 23:49:05

Possibly relevant:

#3 Updated by anonym 2014-05-08 12:59:48

intrigeri wrote:
> It would be useful to know what version of libvirt and qemu is being used.

All is from wheezy-backports:

  • qemu 2.0.0+dfsg-4~bpo70+1
  • libvirt* 1.2.1-1~bpo70+1

> IIRC, recent qemu / Linux have KMS support for Cirrus, so this may be relevant.

For the record, disabling KMS doesn’t workaround the issue.

> Also, can this be reproduced outside of the context of the test suite, with the same libvirt/qemu version?

Yes. In one of my own x86_64 VMs all I have to do is switching from my normal “qxl” to “cirrus” and the error appears. Then switching to i686 fixes it.

While re-testing, I found another workaround (i.e. so x86_64 works with cirrus) by adding:

  <cpu mode='custom' match='exact'>
    <model>SandyBridge</model>
    <vendor>Intel</vendor>
  </cpu>

so I guess the real issue is with some CPU feature missing.

> Possibly relevant:
>
> * http://linux-kernel.2935.n7.nabble.com/3-14-rc1-cirrus-driver-problem-qemu-td796638.html (not checkd if it was fixed in 3.14 final)

Perhaps, but I do not get a kernel trace, only a bus error and Xorg trace.

> * http://cgit.freedesktop.org/~agd5f/linux/commit/?h=drm-next-3.14-wip&id=99d4a8ae93ead27b5a88cdbd09dc556fe96ac3a8 (not checked if this commit eventually landed into 3.14 at all)

From the referenced bug it’s said that nomodeset is a workaround, but this doesn’t work for me.

#4 Updated by intrigeri 2014-05-08 14:19:18

Thanks for the info and additional research!

My current take on this is:

  • this ticket should be cloned to cover the test suite case on the one hand, and the normal usage OTOH
  • as far as the test suite is concerned, you have found two acceptable workarounds, so case (almost) closed
  • as far as broader usage of Tails is concerned, I think documenting the workarounds on the known issues page should be just enough.

#5 Updated by anonym 2014-05-08 20:49:33

intrigeri wrote:
> * this ticket should be cloned to cover the test suite case on the one hand, and the normal usage OTOH
> * as far as the test suite is concerned, you have found two acceptable workarounds, so case (almost) closed
> * as far as broader usage of Tails is concerned, I think documenting the workarounds on the known issues page should be just enough.

Luckily virt-manager defaults (at least in Wheezy’s version) to qxl when creating new VMs, so maybe we can just completely drop this without bloating the known issues page furher?

#6 Updated by intrigeri 2014-05-08 20:55:11

> Luckily virt-manager defaults (at least in Wheezy’s version) to qxl when creating new
> VMs, so maybe we can just completely drop this without bloating the known issues
> page furher?

Agreed.

#7 Updated by anonym 2014-05-08 21:11:25

  • Status changed from In Progress to Rejected

Closed for now then. Hopefully qemu/libvirt/kvm/linux’ cirrus driver will be fixed before we hear about this again.

#8 Updated by intrigeri 2014-07-01 11:21:20

Added to known issues, so that regular users know about the workarounds too.

#9 Updated by BitingBird 2014-07-01 12:16:10

  • has duplicate Bug #7478: Fails to start X in 64-bit QEMU with Cirrus video adapter added

#10 Updated by intrigeri 2014-07-01 12:58:59

  • is duplicate of deleted (Bug #7478: Fails to start X in 64-bit QEMU with Cirrus video adapter)

#11 Updated by intrigeri 2014-07-01 12:59:08

  • related to Bug #7478: Fails to start X in 64-bit QEMU with Cirrus video adapter added