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] [day] [month] [year] [list]
Date:   Wed, 8 Feb 2017 14:32:00 +0100
From:   Daniel Vetter <daniel@...ll.ch>
To:     "Tahvanainen, Jari" <jari.tahvanainen@...el.com>
Cc:     "tomeu.vizoso@...labora.com" <tomeu.vizoso@...labora.com>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "Sarvela, Tomi P" <tomi.p.sarvela@...el.com>,
        David Airlie <airlied@...ux.ie>,
        "intel-gfx@...ts.freedesktop.org" <intel-gfx@...ts.freedesktop.org>,
        "dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
        "Vetter, Daniel" <daniel.vetter@...el.com>
Subject: Re: [Intel-gfx] drm/edid: Don't print an error if the checksum of a
 CEA block is wrong

On Wed, Feb 08, 2017 at 01:19:23PM +0000, Tahvanainen, Jari wrote:
> I applied this change on the couple-days old drm-tip, and was not able to get any "EDID checksum is invalid" messages with it on my SKL. Without this patch I could generate the ERROR quite easily by switching the outputs and displays manually.
> I don't know if this hides something that it should not but it seem to work for the problem related the noise on Patchwork CI execution caused by these EDID checksum is invalid messages.
> 
> Tested-by: Jari Tahvanainen <jari.tahvanainen@...el.com>
> 
> -----Original Message-----
> From: Tomeu Vizoso [mailto:tomeu.vizoso@...labora.com] 
> Sent: Thursday, December 8, 2016 3:12 PM
> To: linux-kernel@...r.kernel.org
> Cc: Tomeu Vizoso <tomeu.vizoso@...labora.com>; Tomi Sarvela <tomi.p.sarvela@...el.com>; intel-gfx@...ts.freedesktop.org; David Airlie <airlied@...ux.ie>; dri-devel@...ts.freedesktop.org; Daniel Vetter <daniel.vetter@...el.com>
> Subject: drm/edid: Don't print an error if the checksum of a CEA block is wrong
> 
> It's common to share screens within CI labs, and it's also common for KVM switches to alter the contents of the CEA block but leave the checksum outdated.
> 
> So in this case, print a debug message instead of an error.
> 
> References: https://bugs.freedesktop.org/show_bug.cgi?id=98228
> Cc: Chris Wilson <chris@...is-wilson.co.uk>
> Cc: Tomi Sarvela <tomi.p.sarvela@...el.com>
> Cc: intel-gfx@...ts.freedesktop.org
> Signed-off-by: Tomeu Vizoso <tomeu.vizoso@...labora.com>

Applied to drm-misc, thanks.
-Daniel

> ---
>  drivers/gpu/drm/drm_edid.c | 13 ++++++++-----
>  1 file changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index 6798c3ad9d53..db79bc949216 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -1128,16 +1128,19 @@ bool drm_edid_block_valid(u8 *raw_edid, int block, bool print_bad_edid,
>  
>  	csum = drm_edid_block_checksum(raw_edid);
>  	if (csum) {
> -		if (print_bad_edid) {
> -			DRM_ERROR("EDID checksum is invalid, remainder is %d\n", csum);
> -		}
> -
>  		if (edid_corrupt)
>  			*edid_corrupt = true;
>  
>  		/* allow CEA to slide through, switches mangle this */
> -		if (raw_edid[0] != 0x02)
> +		if (raw_edid[0] == CEA_EXT) {
> +			DRM_DEBUG("EDID checksum is invalid, remainder is %d\n", csum);
> +			DRM_DEBUG("Assuming a KVM switch modified the CEA block but left the original checksum\n");
> +		} else {
> +			if (print_bad_edid)
> +				DRM_ERROR("EDID checksum is invalid, remainder is %d\n", csum);
> +
>  			goto bad;
> +		}
>  	}
>  
>  	/* per-block-type checks */
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@...ts.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ