Re: [PATCH] ACPI / watchdog: Fix init failure with overlapping register regions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Saturday, July 15, 2017 05:48:18 PM Ryan Kennedy wrote:
> Partially overlapping regions cause platform device creation
> to fail. The latter of two overlapping resources will fail to be
> reserved. Fix this by merging overlapping resource ranges while
> enumerating WDAT table entries.
> 
> Signed-off-by: Ryan Kennedy <ryan5544@xxxxxxxxx>
> ---
>  drivers/acpi/acpi_watchdog.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/acpi/acpi_watchdog.c b/drivers/acpi/acpi_watchdog.c
> index 8c4e0a1..bf22c29 100644
> --- a/drivers/acpi/acpi_watchdog.c
> +++ b/drivers/acpi/acpi_watchdog.c
> @@ -86,7 +86,12 @@ void __init acpi_watchdog_init(void)
>  
>  		found = false;
>  		resource_list_for_each_entry(rentry, &resource_list) {
> -			if (resource_contains(rentry->res, &res)) {
> +			if (rentry->res->flags == res.flags &&
> +			    resource_overlaps(rentry->res, &res)) {
> +				if (res.start < rentry->res->start)
> +					rentry->res->start = res.start;
> +				if (res.end > rentry->res->end)
> +					rentry->res->end = res.end;
>  				found = true;
>  				break;
>  			}
> 

Mika, can you have a look at this, please?

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux