lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a8fe6a58-6a8e-ae35-d1f6-27d354c9503b@suse.cz>
Date:	Fri, 27 May 2016 13:06:24 +0200
From:	Jiri Slaby <jslaby@...e.cz>
To:	Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
	linux-kernel@...r.kernel.org
Cc:	stable@...r.kernel.org, Dave Airlie <airlied@...hat.com>
Subject: Re: [PATCH 3.14 42/79] drm/qxl: only report first monitor as
 connected if we have no state

On 10/18/2015, 04:05 AM, Greg Kroah-Hartman wrote:
> 3.14-stable review patch.  If anyone has any objections, please let me know.
> 
> ------------------
> 
> From: Dave Airlie <airlied@...hat.com>
> 
> commit 69e5d3f893e19613486f300fd6e631810338aa4b upstream.
> 
> If the server isn't new enough to give us state, report the first
> monitor as always connected, otherwise believe the server side.

Hi,

I've got a bug report, that this commit breaks 3.12-stable:
===============
While testing KDE5 packages which will be landing in Package Hub for
SP1, we found a issue with qxl drm driver in kernel.

When booting SLES (or SLED) 12 SP1, in a libvirt KVM environment, with
QXL as video driver, KDE5 plasma was not rendered on screen, you could
only see mouse cursor.

Booting with nomodeset=1 or qxl.modeset=0 fixes the issue.
===============

Does it make sense? Is 3.12 missing some prerequisite? Or should we just
revert the commit in 3.12? And what about 3.14, 4.1?

Thanks.

> Signed-off-by: Dave Airlie <airlied@...hat.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
> 
> ---
>  drivers/gpu/drm/qxl/qxl_display.c |   12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 
> --- a/drivers/gpu/drm/qxl/qxl_display.c
> +++ b/drivers/gpu/drm/qxl/qxl_display.c
> @@ -816,13 +816,15 @@ static enum drm_connector_status qxl_con
>  		drm_connector_to_qxl_output(connector);
>  	struct drm_device *ddev = connector->dev;
>  	struct qxl_device *qdev = ddev->dev_private;
> -	int connected;
> +	bool connected = false;
>  
>  	/* The first monitor is always connected */
> -	connected = (output->index == 0) ||
> -		    (qdev->client_monitors_config &&
> -		     qdev->client_monitors_config->count > output->index &&
> -		     qxl_head_enabled(&qdev->client_monitors_config->heads[output->index]));
> +	if (!qdev->client_monitors_config) {
> +		if (output->index == 0)
> +			connected = true;
> +	} else
> +		connected = qdev->client_monitors_config->count > output->index &&
> +		     qxl_head_enabled(&qdev->client_monitors_config->heads[output->index]);
>  
>  	DRM_DEBUG("#%d connected: %d\n", output->index, connected);
>  	if (!connected)



-- 
js
suse labs

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ