[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <2032a48e.3206.1871230d3bb.Coremail.jhb_ee@163.com>
Date: Fri, 24 Mar 2023 13:56:42 +0800 (CST)
From: 电子 <jhb_ee@....com>
To: rppt@...nel.org
Cc: akpm@...ux-foundation.org, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re:[PATCH] memblock: Correct calculation method for overflowing
range @size
Sorry, the size here may be calculated according to this formula, cancel this patch
At 2023-03-24 13:23:51, "Hongbin Ji" <jhb_ee@....com> wrote:
>When memblock users to specify range where @base + @size overflows
>and automatically cap it at maximum, The new size should be
>PHYS_ADDR_MAX - @base + 1.
>
>Assuming that base is 0, PHYS_ADDR_MAX is 0xff, which is 255 in decimal,
>then @size should be 256 instead of 255
>
>Signed-off-by: Hongbin Ji <jhb_ee@....com>
>---
> mm/memblock.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/mm/memblock.c b/mm/memblock.c
>index 25fd0626a9e7..f1683d1dae65 100644
>--- a/mm/memblock.c
>+++ b/mm/memblock.c
>@@ -169,7 +169,7 @@ static enum memblock_flags __init_memblock choose_memblock_flags(void)
> /* adjust *@...e so that (@base + *@...e) doesn't overflow, return new size */
> static inline phys_addr_t memblock_cap_size(phys_addr_t base, phys_addr_t *size)
> {
>- return *size = min(*size, PHYS_ADDR_MAX - base);
>+ return *size = min(*size, PHYS_ADDR_MAX - base + 1);
> }
>
> /*
>--
>2.34.1
Powered by blists - more mailing lists