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] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 23 Jan 2008 14:39:42 -0500
From:	Len Brown <lenb@...nel.org>
To:	Andrew Patterson <andrew.patterson@...com>, robert.moore@...el.com
Cc:	linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org,
	gregkh@...e.de, matthew@....cx, tom.l.nguyen@...el.com,
	linux-acpi@...r.kernel.org
Subject: Re: [PATCH 3/4] ACPI: Check for any matching CID when walking namespace.

Right Greg, this is not only an ACPI patch, 
but a patch that touches the ACPICA core.
Lets get Bob to see if it applies to the latest upstream ACPICA code.

Andrew,
Do you give Intel permission to accept this patch under
both licenses on the top of the file, such that we can
re-distribute it in ACPICA to all the OSs that use ACPICA?

(hey, and check out the spiffy new acpica home page: http://acpica.org/ )

thanks,
-Len

On Tuesday 22 January 2008 19:18, Andrew Patterson wrote:
> From: Andrew Patterson <andrew.patterson@...com>
> 
> The callback function acpi_ns_get_device_callback called from
> acpi_get_devices() will check CID's if the HID does not match.  This code
> has a bug where it requires that all CIDs match the HID. Changed the code
> so that any CID match will do.
> 
> Signed-off-by: Andrew Patterson <andrew.patterson@...com>
> ---
> 
>  drivers/acpi/namespace/nsxfeval.c |   11 ++++++++---
>  1 files changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/acpi/namespace/nsxfeval.c b/drivers/acpi/namespace/nsxfeval.c
> index f39fbc6..e562b24 100644
> --- a/drivers/acpi/namespace/nsxfeval.c
> +++ b/drivers/acpi/namespace/nsxfeval.c
> @@ -443,6 +443,7 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
>  	struct acpica_device_id hid;
>  	struct acpi_compatible_id_list *cid;
>  	acpi_native_uint i;
> +	int found;
>  
>  	status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
>  	if (ACPI_FAILURE(status)) {
> @@ -496,16 +497,20 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
>  
>  			/* Walk the CID list */
>  
> +			found = 0;
>  			for (i = 0; i < cid->count; i++) {
>  				if (ACPI_STRNCMP(cid->id[i].value, info->hid,
>  						 sizeof(struct
> -							acpi_compatible_id)) !=
> +							acpi_compatible_id)) ==
>  				    0) {
> -					ACPI_FREE(cid);
> -					return (AE_OK);
> +					found = 1;
> +					break;
>  				}
>  			}
>  			ACPI_FREE(cid);
> +			if (!found) {
> +				return (AE_OK);
> +			}
>  		}
>  	}
>  
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ