diff mbox

ACPI: index off by one?

Message ID 49A0B055.5060600@gmail.com (mailing list archive)
State Rejected, archived
Headers show

Commit Message

Roel Kluin Feb. 22, 2009, 1:54 a.m. UTC
Should maybe this be applied? please review.
--------------------------->8-------------8<------------------------------
When index equals ACPI_NAME_SIZE, that is still one too large.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
---
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Moore, Robert Feb. 23, 2009, 3:36 p.m. UTC | #1
No, the original code is correct.

Index must be at least as long as (ACPI_NAME_SIZE + 1) in order to account for the path separator. In other words, each segment in the pathname is not of length ACPI_NAME_SIZE, it is of length (ACPI_NAME_SIZE + 1).

Bob


>-----Original Message-----
>From: linux-acpi-owner@vger.kernel.org [mailto:linux-acpi-
>owner@vger.kernel.org] On Behalf Of Roel Kluin
>Sent: Saturday, February 21, 2009 5:54 PM
>To: lenb@kernel.org
>Cc: linux-acpi@vger.kernel.org; Andrew Morton
>Subject: [PATCH] ACPI: index off by one?
>
>Should maybe this be applied? please review.
>--------------------------->8-------------8<------------------------------
>When index equals ACPI_NAME_SIZE, that is still one too large.
>
>Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
>---
>diff --git a/drivers/acpi/acpica/nsnames.c b/drivers/acpi/acpica/nsnames.c
>index ae3dc10..232c80c 100644
>--- a/drivers/acpi/acpica/nsnames.c
>+++ b/drivers/acpi/acpica/nsnames.c
>@@ -87,7 +87,7 @@ acpi_ns_build_external_path(struct acpi_namespace_node
>*node,
> 	parent_node = node;
> 	name_buffer[index] = 0;
>
>-	while ((index > ACPI_NAME_SIZE) && (parent_node !=
>acpi_gbl_root_node)) {
>+	while ((index >= ACPI_NAME_SIZE) && (parent_node !=
>acpi_gbl_root_node)) {
> 		index -= ACPI_NAME_SIZE;
>
> 		/* Put the name into the buffer */
>--
>To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/acpi/acpica/nsnames.c b/drivers/acpi/acpica/nsnames.c
index ae3dc10..232c80c 100644
--- a/drivers/acpi/acpica/nsnames.c
+++ b/drivers/acpi/acpica/nsnames.c
@@ -87,7 +87,7 @@  acpi_ns_build_external_path(struct acpi_namespace_node *node,
 	parent_node = node;
 	name_buffer[index] = 0;
 
-	while ((index > ACPI_NAME_SIZE) && (parent_node != acpi_gbl_root_node)) {
+	while ((index >= ACPI_NAME_SIZE) && (parent_node != acpi_gbl_root_node)) {
 		index -= ACPI_NAME_SIZE;
 
 		/* Put the name into the buffer */