[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2cde14cd-91da-aae4-70aa-656d629259e6@huawei.com>
Date: Fri, 18 Dec 2020 10:40:13 +0000
From: John Garry <john.garry@...wei.com>
To: Jiahui Cen <cenjiahui@...wei.com>, <linux-kernel@...r.kernel.org>
CC: Wei Xu <xuwei5@...ilicon.com>, Arnd Bergmann <arnd@...db.de>,
"Bjorn Helgaas" <bhelgaas@...gle.com>,
Andy Shevchenko <andy.shevchenko@...il.com>,
<xieyingtai@...wei.com>
Subject: Re: [PATCH] lib/logic_pio: Fix overlap check for pio registery
On 18/12/2020 06:23, Jiahui Cen wrote:
> Since the [start, end) is a half-open interval, a range with the end equal
> to the start of another range should not be considered as overlapped.
>
> Signed-off-by: Jiahui Cen <cenjiahui@...wei.com>
> ---
> lib/logic_pio.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/logic_pio.c b/lib/logic_pio.c
> index f32fe481b492..445d611f1dc1 100644
> --- a/lib/logic_pio.c
> +++ b/lib/logic_pio.c
> @@ -57,7 +57,7 @@ int logic_pio_register_range(struct logic_pio_hwaddr *new_range)
> new_range->flags == LOGIC_PIO_CPU_MMIO) {
> /* for MMIO ranges we need to check for overlap */
> if (start >= range->hw_start + range->size ||
> - end < range->hw_start) {
> + end <= range->hw_start) {
It looks like your change is correct, but should not really have an
impact in practice since:
a: BIOSes generally list ascending IO port CPU addresses
b. there is space between IO port CPU address regions
Have you seen a problem here?
Thanks,
John
Powered by blists - more mailing lists