Bug 1542289

Summary: X server does not provide animated cursor images to XFixesGetCursorImage
Product: Red Hat Enterprise Linux 7 Reporter: Greg Hughes <greg.hughes>
Component: xorg-x11-serverAssignee: Adam Jackson <ajax>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: high    
Version: 7.4CC: ajax, greg.hughes, jeff.burrell, jkachuck, tpelka, tumeya
Target Milestone: rcKeywords: OtherQA, Regression, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: xorg-x11-server-1.19.5-5.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1545536 (view as bug list) Environment:
Last Closed: 2018-04-10 11:53:17 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1438583, 1462319, 1522983, 1545536    
Attachments:
Description Flags
Test program source and makefile none

Description Greg Hughes 2018-02-06 00:49:24 UTC
Created attachment 1391774 [details]
Test program source and makefile

The following commit seems to have broken XFixesGetCursorImage functionality for animated cursors:

https://cgit.freedesktop.org/xorg/xserver/commit/xfixes/cursor.c?id=aa6651f83c698e8cc40de61aad36c73ca7a6adcf


How reproducible:Always

Steps to Reproduce:

1. Build animated cursor generator demo (attached)

2. Start the program and click in the window to start the animation (it animates for 30 sec and changes the pointer back until you click again or exit).  This will spawn a thread that continuously calls XFixesGetCursorImage and prints the cursor width and height.  

3. In the terminal window where the application was launched, note the width and height of the cursor.


Actual results: Width and height are 1


Expected results: Width and height should be ~24 with valid image data.


Additional info:

Comment 3 Jeff Burrell 2018-02-07 18:05:11 UTC
Once this issue is root caused and the fix is determined, I'd like to request that the fix be put into a z-stream errata for 7.4, and depending on the timing, a 7.5 z-stream errata.

Any chance this issue also exists in 6.9?

Comment 4 Adam Jackson 2018-02-07 20:32:45 UTC
Think I know what's going on here, devel ack (and fine with doing this for 7.4.z too).

Comment 6 Adam Jackson 2018-02-12 15:28:59 UTC
I've uploaded a test xserver build here:

https://people.redhat.com/ajackson/1542289/

That's built against 7.5 but I believe it should also install and work on 7.4.

Comment 7 Greg Hughes 2018-02-13 00:34:42 UTC
I tested on two RHEL 7.4 systems with both the sample program and HP RGS and animated cursor images are now functioning as expected.  Looks great!

Comment 10 Joseph Kachuck 2018-02-13 21:22:30 UTC
Hello Jeff,
This was opened as a regression. From this I was guessing this was working in RHEL 7.4. Please confirm the last release this was working.

If this is not a regression from RHEL 7.4. Please confirm the last release this worked correctly.

If this is required for a Z stream. Please confirm what a client would see in the field. Please confirm what it would mean if this waited for RHEL 7.5.

Thank You
Joe Kachuck

Comment 11 Jeff Burrell 2018-02-14 15:46:49 UTC
Joe,

Yes, this is a regression from 7.4.  

The customer definitely wants a z-stream fix for this issue.  HP would like to see the fix added in 7.5.

Here's the comment from the customer who found this issue:

"We’ve reproduced this problem in AWS environment on g3 instances. We’re seeing a problem when the s/w uses system animated cursors.

The configuration we’re using is RH 7.4 with RGS 7.4. The current image is running the following version of Xorg server:
$ rpm -qa | grep x11-server
xorg-x11-server-utils-7.7-20.el7.x86_64
xorg-x11-server-common-1.19.3-11.el7.x86_64
xorg-x11-server-Xorg-1.19.3-11.el7.x86_64

There’s 1.19.3-11.el7_4.1 version available for upgrade using YUM.

For the fix, it would be preferable to have it in RH 7.4 branch because the configuration is rather complex and all the components are interdependent, so a change in OS version could be time consuming until we stabilize the environment. As we’re close to our release and we’ve done most of the cloud testing using RH 7.4 OS, it would be problematic if we switch to RH 7.5."

Comment 12 Adam Jackson 2018-02-14 22:13:50 UTC
(In reply to Jeff Burrell from comment #11)
> Joe,
> 
> Yes, this is a regression from 7.4.  

Strictly speaking this is a regression from 7.3. The offending patch was added in 1.19.3-7.el7, 7.4 contained 1.19.3-11.el7. It absolutely warrants fixing in 7.4.z.

Comment 15 Joseph Kachuck 2018-02-15 14:54:37 UTC
Hello,
This bug has been copied as 7.4 z-stream (EUS) bug #1545536

Thank You
Joe Kachuck

Comment 18 errata-xmlrpc 2018-04-10 11:53:17 UTC
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://access.redhat.com/errata/RHBA-2018:0736