svn commit: r284336 - head/sys/dev/acpi_support

Konstantin Belousov kostikbel at gmail.com
Sat Jun 13 07:37:54 UTC 2015


On Sat, Jun 13, 2015 at 05:55:26AM +0000, Allan Jude wrote:
> Author: allanjude (doc committer)
> Date: Sat Jun 13 05:55:26 2015
> New Revision: 284336
> URL: https://svnweb.freebsd.org/changeset/base/284336
> 
> Log:
>   acpi_ibm.ko panics if SMBIOS information is not available
>   
>   Add a check for NULL before strcmp on smbios information incase it is not populated
>   
>   Differential Revision:	https://reviews.freebsd.org/D2750
>   Reviewed by:	ngie, jhb
>   Approved by:	rpaulo
>   Sponsored by:	ScaleEngine Inc.
> 
> Modified:
>   head/sys/dev/acpi_support/acpi_ibm.c
> 
> Modified: head/sys/dev/acpi_support/acpi_ibm.c
> ==============================================================================
> --- head/sys/dev/acpi_support/acpi_ibm.c	Sat Jun 13 01:28:19 2015	(r284335)
> +++ head/sys/dev/acpi_support/acpi_ibm.c	Sat Jun 13 05:55:26 2015	(r284336)
> @@ -485,6 +485,9 @@ acpi_ibm_attach(device_t dev)
>  	/* Enable per-model events. */
>  	maker = kern_getenv("smbios.system.maker");
>  	product = kern_getenv("smbios.system.product");
> +	if (maker != NULL && product != NULL)
> +		goto nosmbios;
This looks reversed.  I would expect the condition to be
	if (maker == NULL || product == NULL)
		goto ...;

> +
>  	for (i = 0; i < nitems(acpi_ibm_models); i++) {
>  		if (strcmp(maker, acpi_ibm_models[i].maker) == 0 &&
>  		    strcmp(product, acpi_ibm_models[i].product) == 0) {
> @@ -494,6 +497,8 @@ acpi_ibm_attach(device_t dev)
>  			ACPI_SERIAL_END(ibm);
>  		}
>  	}
> +
> +nosmbios:
>  	freeenv(maker);
>  	freeenv(product);
>  


More information about the svn-src-head mailing list