Bug 1391841 - Strange behaviour of Video test in dual processor machines
Summary: Strange behaviour of Video test in dual processor machines
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Red Hat Certification Program
Classification: Red Hat
Component: redhat-certification-hardware
Version: 1.0
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: brose
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-11-04 08:34 UTC by Rainer Koenig
Modified: 2020-07-16 08:59 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-01-03 14:57:00 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Rainer Koenig 2016-11-04 08:34:30 UTC
Description of problem:
Video test ends with FAIL because glxgears part reports "couldn't open display". 
The strange thing is that this happens only on machines with 2 physical CPU sockets. Same test on a single CPU machine performs without any problem. 

Version-Release number of selected component (if applicable):
redhat-certification-hardware-4.0-20161011.el7.noarch

How reproducible:
Always on the 2 CPU machines I have, never on the single CPU machines.

Steps to Reproduce:
1. Install RHEL7.2 GA plus RHCert Suite
2. Regsiter SUT in Web-UI
3. Perform video test

Actual results:
Video test fails in glxgears and log modules test.

Video test:

Running: xinit -- :2 
process 12805
glxgears -display :2
Error: couldn't open display :2

Error: glxgears failed, return code: 255
Killing xinit PID 12805

Log modules test:

Screen resolution: 1680x1050
      Color depth: 24
Checking /var/log/Xorg.0.log for loaded X modules -----------------------
Found /usr/lib64/xorg/modules/extensions/libglx.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/drivers/nouveau_drv.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/drivers/modesetting_drv.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/drivers/fbdev_drv.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/drivers/vesa_drv.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/libfbdevhw.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/libfb.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/libshadowfb.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/libexa.so by Red Hat, Inc.
Found /usr/lib64/xorg/modules/input/evdev_drv.so by Red Hat, Inc.
-------------------------------------------------


Driver Info from /var/log/Xorg.0.log:
-------------------------------------------------
[    47.205] (II) Loading /usr/lib64/xorg/modules/drivers/nouveau_drv.so
[    47.308] (II) Module nouveau: vendor="X.Org Foundation"
[    47.308] 	compiled for 1.17.2, module version = 1.0.11
[    47.308] 	Module class: X.Org Video Driver
[    47.308] 	ABI class: X.Org Video Driver, version 19.0

[    47.404] (II) Loading /usr/lib64/xorg/modules/drivers/modesetting_drv.so
[    47.891] (II) Module modesetting: vendor="X.Org Foundation"
[    47.891] 	compiled for 1.17.2, module version = 1.17.2
[    47.891] 	Module class: X.Org Video Driver
[    47.891] 	ABI class: X.Org Video Driver, version 19.0

[    47.891] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
[    47.902] (II) Module fbdev: vendor="X.Org Foundation"
[    47.902] 	compiled for 1.17.1, module version = 0.4.3
[    47.902] 	Module class: X.Org Video Driver
[    47.902] 	ABI class: X.Org Video Driver, version 19.0

[    47.902] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
[    47.902] (II) Module vesa: vendor="X.Org Foundation"
[    47.902] 	compiled for 1.17.1, module version = 2.3.2
[    47.902] 	Module class: X.Org Video Driver
[    47.902] 	ABI class: X.Org Video Driver, version 19.0

-------------------------------------------------

xvinfo ----------------------------------------

xdriinfo ----------------------------------------

glxinfo ----------------------------------------
Error: could not open /var/log/Xorg.2.log
Error: could not open /var/log/Xorg.2.log


Expected results:
Test should pass since the machine that is tested is a machine that is certified for RHEL7 already. So once upon a time in the past this test didn't show the problems that we are encountering now.

Additional info:

The problem looks like https://bugzilla.redhat.com/show_bug.cgi?id=1378388 but there the use ppc64 arch and my problem occurs on Intel x86_64. 

We did the follwoing steps to verify what is going on:

1. If I start the test from the command line on the SUT with "rhcert-backend run --test video" then it performs perfectly and I get a PASS.

2. Same is true if I start it from an SSH connection. 

3. If I start the test from the Web-UI it fails at glxgears with the "couldn't open display".

4. We found a strange workaround to make this test result in PASS:

a) execute "init 3" to switch to runlevel 3.
b) Start Video test from the Web-UI. This test now shows glxgears but will still FAIL because the video resolution detection fails since there is no GUI running. 
c) execute "init 5" from the text console to return to a GUI. Login as root.
d) Start Video test again from Web-UI. This time the test results as PASS.

Tried a shortcut with boot -> init 3 -> init 5 -> run the test, but this didn't PASS. Looks like we need one FAIL in runlevel 3 to make the test then PASS on runlevel 5. 

This is very bizarre, but reproducible on 2 machines with 2 phsyical CPU sockets. This is the obvious difference to machines where the test runs without any problems. 

Could it be a race condition somewhere?

Comment 1 brose 2016-11-04 20:44:07 UTC
This reads to me as either a kernel issue or an issue with the test harness itself, rather than the hardware test suite, as it is passing when called via command line directly.

Does anything jump out at you, Greg?

Comment 2 Rainer Koenig 2016-11-09 13:50:03 UTC
Update: I just performed the test with the new 4.1 version of Red Hat Certification. 

Both machines that showed the problem before on RHEL 7.2 now have no problem any more. Works with RHEL 7.2 and RHEL 7.3 as well.


Note You need to log in before you can comment on or make changes to this bug.