Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758988AbXLLKPS (ORCPT ); Wed, 12 Dec 2007 05:15:18 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754019AbXLLKPG (ORCPT ); Wed, 12 Dec 2007 05:15:06 -0500 Received: from holomorphy.com ([66.93.40.71]:45416 "EHLO holomorphy.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755165AbXLLKPE (ORCPT ); Wed, 12 Dec 2007 05:15:04 -0500 Date: Wed, 12 Dec 2007 02:15:05 -0800 From: William Lee Irwin III To: lenb@kernel.org Cc: linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: acpi ->video_device_list corruption Message-ID: <20071212101505.GA18472@holomorphy.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="SkvwRMAIpAhPCcCJ" Content-Disposition: inline Organization: The Domain of Holomorphy User-Agent: Mutt/1.5.13 (2006-08-11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 21636 Lines: 328 --SkvwRMAIpAhPCcCJ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline The ->cap fields of struct acpi_video_device and struct acpi_video_bus are 1B each, not 4B. The oversized memset()'s corrupted the subsequent list_head fields. This resulted in silent corruption without CONFIG_DEBUG_LIST and BUG's with it. This patch uses sizeof() to pass the proper bounds to the memset() calls and thereby correct the bugs. Included as a MIME attachment is a compressed dmesg from an affected system. The patch was seen to resolve the issue on the affected system. vs. 2.6.24-rc5 Signed-off-by: William Irwin -- wli diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c index 44a0d9b..7895d57 100644 --- a/drivers/acpi/video.c +++ b/drivers/acpi/video.c @@ -577,7 +577,7 @@ static void acpi_video_device_find_cap(struct acpi_video_device *device) struct acpi_video_device_brightness *br = NULL; - memset(&device->cap, 0, 4); + memset(&device->cap, 0, sizeof(struct acpi_video_device_cap)); if (ACPI_SUCCESS(acpi_get_handle(device->dev->handle, "_ADR", &h_dummy1))) { device->cap._ADR = 1; @@ -697,7 +697,7 @@ static void acpi_video_bus_find_cap(struct acpi_video_bus *video) { acpi_handle h_dummy1; - memset(&video->cap, 0, 4); + memset(&video->cap, 0, sizeof(struct acpi_video_bus_cap)); if (ACPI_SUCCESS(acpi_get_handle(video->device->handle, "_DOS", &h_dummy1))) { video->cap._DOS = 1; } --SkvwRMAIpAhPCcCJ Content-Type: application/octet-stream Content-Description: dmesg.acpibug.gz Content-Disposition: attachment; filename="dmesg.acpibug.gz" Content-Transfer-Encoding: base64 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 J/4AAA== --SkvwRMAIpAhPCcCJ-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/