+++ /dev/null
-From stable-bounces@linux.kernel.org Tue Jan 3 19:59:37 2006
-Date: Wed, 4 Jan 2006 04:55:09 +0100
-From: Karol Kozimor <sziwan@hell.org.pl>
-To: "Brown, Len" <len.brown@intel.com>, stable@kernel.org
-Message-ID: <20060104035509.GA4983@hell.org.pl>
-Cc: linux-acpi@vger.kernel.org, Greek0@gmx.net
-Subject: [PATCH] acpi: fix asus_acpi on Samsung P30/P35
-
-Work around asus_acpi driver oopses on Samsung P30s and the like due to the
-ACPI implicit return.
-
-The code used to rely on a certain method to return a NULL buffer, which
-is now hardly possible with the implicit return code on by default. This
-sort of fixes bugs #5067 and #5092 for now.
-
-Note: this patch makes the driver unusable on said machines (and on said
-machines only) iff acpi=strict is specified, but it seems noone really uses
-that.
-
-Signed-off-by: Karol Kozimor <sziwan@hell.org.pl>
-Signed-off-by: Chris Wright <chrisw@sous-sol.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
----
-
- drivers/acpi/asus_acpi.c | 27 ++++++++++++++++++---------
- 1 file changed, 18 insertions(+), 9 deletions(-)
-
-Index: linux-2.6.14.5/drivers/acpi/asus_acpi.c
-===================================================================
---- linux-2.6.14.5.orig/drivers/acpi/asus_acpi.c
-+++ linux-2.6.14.5/drivers/acpi/asus_acpi.c
-@@ -987,9 +987,21 @@ static int __init asus_hotk_get_info(voi
- printk(KERN_NOTICE " BSTS called, 0x%02x returned\n",
- bsts_result);
-
-- /* Samsung P30 has a device with a valid _HID whose INIT does not
-- * return anything. Catch this one and any similar here */
-- if (buffer.pointer == NULL) {
-+ /* This is unlikely with implicit return */
-+ if (buffer.pointer == NULL)
-+ return -EINVAL;
-+
-+ model = (union acpi_object *) buffer.pointer;
-+ /*
-+ * Samsung P30 has a device with a valid _HID whose INIT does not
-+ * return anything. It used to be possible to catch this exception,
-+ * but the implicit return code will now happily confuse the
-+ * driver. We assume that every ACPI_TYPE_STRING is a valid model
-+ * identifier but it's still possible to get completely bogus data.
-+ */
-+ if (model->type == ACPI_TYPE_STRING) {
-+ printk(KERN_NOTICE " %s model detected, ", model->string.pointer);
-+ } else {
- if (asus_info && /* Samsung P30 */
- strncmp(asus_info->oem_table_id, "ODEM", 4) == 0) {
- hotk->model = P30;
-@@ -1002,13 +1014,10 @@ static int __init asus_hotk_get_info(voi
- "the developers with your DSDT\n");
- }
- hotk->methods = &model_conf[hotk->model];
-- return AE_OK;
-- }
-+
-+ acpi_os_free(model);
-
-- model = (union acpi_object *)buffer.pointer;
-- if (model->type == ACPI_TYPE_STRING) {
-- printk(KERN_NOTICE " %s model detected, ",
-- model->string.pointer);
-+ return AE_OK;
- }
-
- hotk->model = END_MODEL;
insanity-avoidance-in-proc.patch
sysctl-don-t-overflow-the-user-supplied-buffer-with-0.patch
ufs-inode-i_sem-is-not-released-in-error-path.patch
-acpi-fix-asus_acpi-on-samsung-p30-p35.patch
+++ /dev/null
-From stable-bounces@linux.kernel.org Tue Jan 3 19:59:37 2006
-Date: Wed, 4 Jan 2006 04:55:09 +0100
-From: Karol Kozimor <sziwan@hell.org.pl>
-To: "Brown, Len" <len.brown@intel.com>, stable@kernel.org
-Message-ID: <20060104035509.GA4983@hell.org.pl>
-Cc: linux-acpi@vger.kernel.org, Greek0@gmx.net
-Subject: [PATCH] acpi: fix asus_acpi on Samsung P30/P35
-
-Work around asus_acpi driver oopses on Samsung P30s and the like due to the
-ACPI implicit return.
-
-The code used to rely on a certain method to return a NULL buffer, which
-is now hardly possible with the implicit return code on by default. This
-sort of fixes bugs #5067 and #5092 for now.
-
-Note: this patch makes the driver unusable on said machines (and on said
-machines only) iff acpi=strict is specified, but it seems noone really uses
-that.
-
-Signed-off-by: Karol Kozimor <sziwan@hell.org.pl>
-Signed-off-by: Chris Wright <chrisw@sous-sol.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
----
-
- drivers/acpi/asus_acpi.c | 27 ++++++++++++++++++---------
- 1 files changed, 18 insertions(+), 9 deletions(-)
-
-Index: linux-2.6.15.y/drivers/acpi/asus_acpi.c
-===================================================================
---- linux-2.6.15.y.orig/drivers/acpi/asus_acpi.c
-+++ linux-2.6.15.y/drivers/acpi/asus_acpi.c
-@@ -987,9 +987,21 @@ static int __init asus_hotk_get_info(voi
- printk(KERN_NOTICE " BSTS called, 0x%02x returned\n",
- bsts_result);
-
-- /* Samsung P30 has a device with a valid _HID whose INIT does not
-- * return anything. Catch this one and any similar here */
-- if (buffer.pointer == NULL) {
-+ /* This is unlikely with implicit return */
-+ if (buffer.pointer == NULL)
-+ return -EINVAL;
-+
-+ model = (union acpi_object *) buffer.pointer;
-+ /*
-+ * Samsung P30 has a device with a valid _HID whose INIT does not
-+ * return anything. It used to be possible to catch this exception,
-+ * but the implicit return code will now happily confuse the
-+ * driver. We assume that every ACPI_TYPE_STRING is a valid model
-+ * identifier but it's still possible to get completely bogus data.
-+ */
-+ if (model->type == ACPI_TYPE_STRING) {
-+ printk(KERN_NOTICE " %s model detected, ", model->string.pointer);
-+ } else {
- if (asus_info && /* Samsung P30 */
- strncmp(asus_info->oem_table_id, "ODEM", 4) == 0) {
- hotk->model = P30;
-@@ -1002,13 +1014,10 @@ static int __init asus_hotk_get_info(voi
- "the developers with your DSDT\n");
- }
- hotk->methods = &model_conf[hotk->model];
-- return AE_OK;
-- }
-+
-+ acpi_os_free(model);
-
-- model = (union acpi_object *)buffer.pointer;
-- if (model->type == ACPI_TYPE_STRING) {
-- printk(KERN_NOTICE " %s model detected, ",
-- model->string.pointer);
-+ return AE_OK;
- }
-
- hotk->model = END_MODEL;
bridge-fix-faulty-check-in-br_stp_recalculate_bridge_id.patch
ufs-inode-i_sem-is-not-released-in-error-path.patch
-acpi-fix-asus_acpi-on-samsung-p30-p35.patch
skge-handle-out-of-memory-on-ring-changes.patch