| From 595d373f1e9c9ce0fc946457fdb488e8a58972cd Mon Sep 17 00:00:00 2001 |
| From: Ben Skeggs <bskeggs@redhat.com> |
| Date: Mon, 8 Sep 2014 10:33:32 +1000 |
| Subject: drm/nouveau/bios: memset dcb struct to zero before parsing |
| |
| From: Ben Skeggs <bskeggs@redhat.com> |
| |
| commit 595d373f1e9c9ce0fc946457fdb488e8a58972cd upstream. |
| |
| Fixes type/mask calculation being based on uninitialised data for VGA |
| outputs. |
| |
| Signed-off-by: Ben Skeggs <bskeggs@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/gpu/drm/nouveau/core/subdev/bios/dcb.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/gpu/drm/nouveau/core/subdev/bios/dcb.c |
| +++ b/drivers/gpu/drm/nouveau/core/subdev/bios/dcb.c |
| @@ -124,6 +124,7 @@ dcb_outp_parse(struct nouveau_bios *bios |
| struct dcb_output *outp) |
| { |
| u16 dcb = dcb_outp(bios, idx, ver, len); |
| + memset(outp, 0x00, sizeof(*outp)); |
| if (dcb) { |
| if (*ver >= 0x20) { |
| u32 conn = nv_ro32(bios, dcb + 0x00); |