2023-04-26 10:01:40

by Song Shuai

[permalink] [raw]
Subject: [PATCH -fixes V2] riscv: mm: remove redundant parameter of create_fdt_early_page_table

create_fdt_early_page_table() explicitly uses early_pg_dir for
32-bit fdt mapping and the pgdir parameter is redundant here.
So remove it and its caller.

Reviewed-by: Alexandre Ghiti <[email protected]>
Signed-off-by: Song Shuai <[email protected]>
---
Changes in V1:
https://lore.kernel.org/linux-riscv/[email protected]/T/#t
- fix the typo
---
arch/riscv/mm/init.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
index 0f14f4a8d179..6ebb75a9a6b9 100644
--- a/arch/riscv/mm/init.c
+++ b/arch/riscv/mm/init.c
@@ -843,8 +843,7 @@ static void __init create_kernel_page_table(pgd_t *pgdir, bool early)
* this means 2 PMD entries whereas for 32-bit kernel, this is only 1 PGDIR
* entry.
*/
-static void __init create_fdt_early_page_table(pgd_t *pgdir,
- uintptr_t fix_fdt_va,
+static void __init create_fdt_early_page_table(uintptr_t fix_fdt_va,
uintptr_t dtb_pa)
{
uintptr_t pa = dtb_pa & ~(PMD_SIZE - 1);
@@ -1034,8 +1033,7 @@ asmlinkage void __init setup_vm(uintptr_t dtb_pa)
create_kernel_page_table(early_pg_dir, true);

/* Setup early mapping for FDT early scan */
- create_fdt_early_page_table(early_pg_dir,
- __fix_to_virt(FIX_FDT), dtb_pa);
+ create_fdt_early_page_table(__fix_to_virt(FIX_FDT), dtb_pa);

/*
* Bootime fixmap only can handle PMD_SIZE mapping. Thus, boot-ioremap
--
2.20.1


2023-04-27 10:21:00

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH -fixes V2] riscv: mm: remove redundant parameter of create_fdt_early_page_table

On Wed, Apr 26, 2023 at 06:00:09PM +0800, Song Shuai wrote:
> create_fdt_early_page_table() explicitly uses early_pg_dir for
> 32-bit fdt mapping and the pgdir parameter is redundant here.
> So remove it and its caller.
>
> Reviewed-by: Alexandre Ghiti <[email protected]>
> Signed-off-by: Song Shuai <[email protected]>

Whoops, I missed the v2, so copy-pasting:

"and its caller" sounds like you're removing the caller itself when
that's not what you're doing!
I am certainly not suggesting that you resubmit because of that though.

Reviewed-by: Conor Dooley <[email protected]>

Automation failed to apply this which is a bit weird. What was the
base-commit?

Cheers,
Conor.

> ---
> Changes in V1:
> https://lore.kernel.org/linux-riscv/[email protected]/T/#t
> - fix the typo
> ---
> arch/riscv/mm/init.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
> index 0f14f4a8d179..6ebb75a9a6b9 100644
> --- a/arch/riscv/mm/init.c
> +++ b/arch/riscv/mm/init.c
> @@ -843,8 +843,7 @@ static void __init create_kernel_page_table(pgd_t *pgdir, bool early)
> * this means 2 PMD entries whereas for 32-bit kernel, this is only 1 PGDIR
> * entry.
> */
> -static void __init create_fdt_early_page_table(pgd_t *pgdir,
> - uintptr_t fix_fdt_va,
> +static void __init create_fdt_early_page_table(uintptr_t fix_fdt_va,
> uintptr_t dtb_pa)
> {
> uintptr_t pa = dtb_pa & ~(PMD_SIZE - 1);
> @@ -1034,8 +1033,7 @@ asmlinkage void __init setup_vm(uintptr_t dtb_pa)
> create_kernel_page_table(early_pg_dir, true);
>
> /* Setup early mapping for FDT early scan */
> - create_fdt_early_page_table(early_pg_dir,
> - __fix_to_virt(FIX_FDT), dtb_pa);
> + create_fdt_early_page_table(__fix_to_virt(FIX_FDT), dtb_pa);
>
> /*
> * Bootime fixmap only can handle PMD_SIZE mapping. Thus, boot-ioremap
> --
> 2.20.1
>


Attachments:
(No filename) (1.97 kB)
signature.asc (235.00 B)
Download all attachments

2023-04-27 10:24:32

by Song Shuai

[permalink] [raw]
Subject: Re: [PATCH -fixes V2] riscv: mm: remove redundant parameter of create_fdt_early_page_table

Conor Dooley <[email protected]> 于2023年4月27日周四 10:15写道:
>
> On Wed, Apr 26, 2023 at 06:00:09PM +0800, Song Shuai wrote:
> > create_fdt_early_page_table() explicitly uses early_pg_dir for
> > 32-bit fdt mapping and the pgdir parameter is redundant here.
> > So remove it and its caller.
> >
> > Reviewed-by: Alexandre Ghiti <[email protected]>
> > Signed-off-by: Song Shuai <[email protected]>
>
> Whoops, I missed the v2, so copy-pasting:
>
> "and its caller" sounds like you're removing the caller itself when
> that's not what you're doing!
> I am certainly not suggesting that you resubmit because of that though.
>
> Reviewed-by: Conor Dooley <[email protected]>
>
> Automation failed to apply this which is a bit weird. What was the
> base-commit?
commit 1b50f956c8fe `riscv: No need to relocate the dtb as it lies in
the fixmap region` in riscv/linux fixes branch.
>
> Cheers,
> Conor.
>
> > ---
> > Changes in V1:
> > https://lore.kernel.org/linux-riscv/[email protected]/T/#t
> > - fix the typo
> > ---
> > arch/riscv/mm/init.c | 6 ++----
> > 1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
> > index 0f14f4a8d179..6ebb75a9a6b9 100644
> > --- a/arch/riscv/mm/init.c
> > +++ b/arch/riscv/mm/init.c
> > @@ -843,8 +843,7 @@ static void __init create_kernel_page_table(pgd_t *pgdir, bool early)
> > * this means 2 PMD entries whereas for 32-bit kernel, this is only 1 PGDIR
> > * entry.
> > */
> > -static void __init create_fdt_early_page_table(pgd_t *pgdir,
> > - uintptr_t fix_fdt_va,
> > +static void __init create_fdt_early_page_table(uintptr_t fix_fdt_va,
> > uintptr_t dtb_pa)
> > {
> > uintptr_t pa = dtb_pa & ~(PMD_SIZE - 1);
> > @@ -1034,8 +1033,7 @@ asmlinkage void __init setup_vm(uintptr_t dtb_pa)
> > create_kernel_page_table(early_pg_dir, true);
> >
> > /* Setup early mapping for FDT early scan */
> > - create_fdt_early_page_table(early_pg_dir,
> > - __fix_to_virt(FIX_FDT), dtb_pa);
> > + create_fdt_early_page_table(__fix_to_virt(FIX_FDT), dtb_pa);
> >
> > /*
> > * Bootime fixmap only can handle PMD_SIZE mapping. Thus, boot-ioremap
> > --
> > 2.20.1
> >



--
Thanks,
Song

2023-05-01 22:47:09

by Palmer Dabbelt

[permalink] [raw]
Subject: Re: [PATCH -fixes V2] riscv: mm: remove redundant parameter of create_fdt_early_page_table


On Wed, 26 Apr 2023 18:00:09 +0800, Song Shuai wrote:
> create_fdt_early_page_table() explicitly uses early_pg_dir for
> 32-bit fdt mapping and the pgdir parameter is redundant here.
> So remove it and its caller.
>
>

Applied, thanks!

[1/1] riscv: mm: remove redundant parameter of create_fdt_early_page_table
https://git.kernel.org/palmer/c/e4ef93edd4e0

Best regards,
--
Palmer Dabbelt <[email protected]>