diff mbox series

mini-os: mm: don't have two large arrays of the same kind

Message ID 20240722150843.3947-1-jgross@suse.com (mailing list archive)
State New
Headers show
Series mini-os: mm: don't have two large arrays of the same kind | expand

Commit Message

Jürgen Groß July 22, 2024, 3:08 p.m. UTC
In the CONFIG_PARAVIRT case there are two identical static arrays of
more than 8kB size with function scope. As the two functions never
nest, a single array of file scope can replace the two existing
instances.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/mm.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Samuel Thibault July 22, 2024, 9:26 p.m. UTC | #1
Juergen Gross, le lun. 22 juil. 2024 17:08:43 +0200, a ecrit:
> In the CONFIG_PARAVIRT case there are two identical static arrays of
> more than 8kB size with function scope. As the two functions never
> nest, a single array of file scope can replace the two existing
> instances.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  arch/x86/mm.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/mm.c b/arch/x86/mm.c
> index be1cf0cf..7ddf16e4 100644
> --- a/arch/x86/mm.c
> +++ b/arch/x86/mm.c
> @@ -198,6 +198,10 @@ static void new_pt_frame(unsigned long *pt_pfn, unsigned long prev_l_mfn,
>      *pt_pfn += 1;
>  }
>  
> +#ifdef CONFIG_PARAVIRT
> +static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
> +#endif
> +
>  /*
>   * Build the initial pagetable.
>   */
> @@ -209,7 +213,6 @@ static void build_pagetable(unsigned long *start_pfn, unsigned long *max_pfn)
>      unsigned long pt_mfn = pfn_to_mfn(virt_to_pfn(pt_base));
>      unsigned long offset;
>  #ifdef CONFIG_PARAVIRT
> -    static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
>      int count = 0;
>      int rc;
>  #endif
> @@ -323,7 +326,6 @@ static void set_readonly(void *text, void *etext)
>      unsigned long offset;
>      unsigned long page_size = PAGE_SIZE;
>  #ifdef CONFIG_PARAVIRT
> -    static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
>      int count = 0;
>      int rc;
>  #endif
> -- 
> 2.43.0
>
diff mbox series

Patch

diff --git a/arch/x86/mm.c b/arch/x86/mm.c
index be1cf0cf..7ddf16e4 100644
--- a/arch/x86/mm.c
+++ b/arch/x86/mm.c
@@ -198,6 +198,10 @@  static void new_pt_frame(unsigned long *pt_pfn, unsigned long prev_l_mfn,
     *pt_pfn += 1;
 }
 
+#ifdef CONFIG_PARAVIRT
+static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
+#endif
+
 /*
  * Build the initial pagetable.
  */
@@ -209,7 +213,6 @@  static void build_pagetable(unsigned long *start_pfn, unsigned long *max_pfn)
     unsigned long pt_mfn = pfn_to_mfn(virt_to_pfn(pt_base));
     unsigned long offset;
 #ifdef CONFIG_PARAVIRT
-    static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
     int count = 0;
     int rc;
 #endif
@@ -323,7 +326,6 @@  static void set_readonly(void *text, void *etext)
     unsigned long offset;
     unsigned long page_size = PAGE_SIZE;
 #ifdef CONFIG_PARAVIRT
-    static mmu_update_t mmu_updates[L1_PAGETABLE_ENTRIES + 1];
     int count = 0;
     int rc;
 #endif