[PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache property

Alireza Sanaee via posted 7 patches 3 months, 3 weeks ago
There is a newer version of this series
[PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache property
Posted by Alireza Sanaee via 3 months, 3 weeks ago
This commit adds IsDefined flag to the object and this helps in avoiding
extra checks for every single layer of caches in both x86 and ARM.

There is already a discussion on mailing list to have this flag. A
patch that enables this flag will follow later.

Signed-off-by: Alireza Sanaee <alireza.sanaee@huawei.com>
---
 hw/core/machine-smp.c | 2 ++
 include/hw/boards.h   | 1 +
 2 files changed, 3 insertions(+)

diff --git a/hw/core/machine-smp.c b/hw/core/machine-smp.c
index 9a28194676..5a02bbf584 100644
--- a/hw/core/machine-smp.c
+++ b/hw/core/machine-smp.c
@@ -371,6 +371,8 @@ bool machine_parse_smp_cache(MachineState *ms,
         return false;
     }
 
+    ms->smp_cache.IsDefined = true;
+
     return true;
 }
 
diff --git a/include/hw/boards.h b/include/hw/boards.h
index db2aa2b706..2883a57084 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -373,6 +373,7 @@ typedef struct CpuTopology {
 
 typedef struct SmpCache {
     SmpCacheProperties props[CACHE_LEVEL_AND_TYPE__MAX];
+    bool IsDefined;
 } SmpCache;
 
 /**
-- 
2.34.1
Re: [PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache property
Posted by Jonathan Cameron via 3 months, 2 weeks ago
On Mon, 16 Dec 2024 17:54:08 +0000
Alireza Sanaee <alireza.sanaee@huawei.com> wrote:

> This commit adds IsDefined flag to the object and this helps in avoiding
> extra checks for every single layer of caches in both x86 and ARM.
> 
> There is already a discussion on mailing list to have this flag. A
> patch that enables this flag will follow later.
> 
> Signed-off-by: Alireza Sanaee <alireza.sanaee@huawei.com>
Makes sense.  Zhao Liu, is this something you plan to use in the x86
code?

Either way
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

> ---
>  hw/core/machine-smp.c | 2 ++
>  include/hw/boards.h   | 1 +
>  2 files changed, 3 insertions(+)
> 
> diff --git a/hw/core/machine-smp.c b/hw/core/machine-smp.c
> index 9a28194676..5a02bbf584 100644
> --- a/hw/core/machine-smp.c
> +++ b/hw/core/machine-smp.c
> @@ -371,6 +371,8 @@ bool machine_parse_smp_cache(MachineState *ms,
>          return false;
>      }
>  
> +    ms->smp_cache.IsDefined = true;
> +
>      return true;
>  }
>  
> diff --git a/include/hw/boards.h b/include/hw/boards.h
> index db2aa2b706..2883a57084 100644
> --- a/include/hw/boards.h
> +++ b/include/hw/boards.h
> @@ -373,6 +373,7 @@ typedef struct CpuTopology {
>  
>  typedef struct SmpCache {
>      SmpCacheProperties props[CACHE_LEVEL_AND_TYPE__MAX];
> +    bool IsDefined;
>  } SmpCache;
>  
>  /**
Re: [PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache property
Posted by Alireza Sanaee via 3 months, 2 weeks ago
On Mon, 23 Dec 2024 17:48:18 +0000
Jonathan Cameron <Jonathan.Cameron@huawei.com> wrote:

> On Mon, 16 Dec 2024 17:54:08 +0000
> Alireza Sanaee <alireza.sanaee@huawei.com> wrote:
> 
> > This commit adds IsDefined flag to the object and this helps in
> > avoiding extra checks for every single layer of caches in both x86
> > and ARM.
> > 
> > There is already a discussion on mailing list to have this flag. A
> > patch that enables this flag will follow later.
> > 
> > Signed-off-by: Alireza Sanaee <alireza.sanaee@huawei.com>  
> Makes sense.  Zhao Liu, is this something you plan to use in the x86
> code?

Hi Jonathan,

Yes this one comes from Zhao Liu's new patch-set, thanks to him. I will
have to send another version given that.
> 
> Either way
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> 
> > ---
> >  hw/core/machine-smp.c | 2 ++
> >  include/hw/boards.h   | 1 +
> >  2 files changed, 3 insertions(+)
> > 
> > diff --git a/hw/core/machine-smp.c b/hw/core/machine-smp.c
> > index 9a28194676..5a02bbf584 100644
> > --- a/hw/core/machine-smp.c
> > +++ b/hw/core/machine-smp.c
> > @@ -371,6 +371,8 @@ bool machine_parse_smp_cache(MachineState *ms,
> >          return false;
> >      }
> >  
> > +    ms->smp_cache.IsDefined = true;
> > +
> >      return true;
> >  }
> >  
> > diff --git a/include/hw/boards.h b/include/hw/boards.h
> > index db2aa2b706..2883a57084 100644
> > --- a/include/hw/boards.h
> > +++ b/include/hw/boards.h
> > @@ -373,6 +373,7 @@ typedef struct CpuTopology {
> >  
> >  typedef struct SmpCache {
> >      SmpCacheProperties props[CACHE_LEVEL_AND_TYPE__MAX];
> > +    bool IsDefined;
> >  } SmpCache;
> >  
> >  /**  
>
Re: [PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache property
Posted by Zhao Liu 3 months, 2 weeks ago
On Tue, Dec 24, 2024 at 08:41:27AM +0000, Alireza Sanaee wrote:
> Date: Tue, 24 Dec 2024 08:41:27 +0000
> From: Alireza Sanaee <alireza.sanaee@huawei.com>
> Subject: Re: [PATCH v4 1/7] i386/cpu: add IsDefined flag to smp-cache
>  property
> X-Mailer: Claws Mail 4.3.0 (GTK 3.24.42; x86_64-w64-mingw32)
> 
> On Mon, 23 Dec 2024 17:48:18 +0000
> Jonathan Cameron <Jonathan.Cameron@huawei.com> wrote:
> 
> > On Mon, 16 Dec 2024 17:54:08 +0000
> > Alireza Sanaee <alireza.sanaee@huawei.com> wrote:
> > 
> > > This commit adds IsDefined flag to the object and this helps in
> > > avoiding extra checks for every single layer of caches in both x86
> > > and ARM.
> > > 
> > > There is already a discussion on mailing list to have this flag. A
> > > patch that enables this flag will follow later.
> > > 
> > > Signed-off-by: Alireza Sanaee <alireza.sanaee@huawei.com>  
> > Makes sense.  Zhao Liu, is this something you plan to use in the x86
> > code?
> 
> Hi Jonathan,
> 
> Yes this one comes from Zhao Liu's new patch-set, thanks to him. I will
> have to send another version given that.

Welcome! You can rebase this series on my v6. This way, there won't be
any conflicts, and once v6 is merged, yours can also be naturally picked
by maintainer. :-)

Regards,
Zhao