Re: [PATCH v2 17/20] smbios: clear smbios_type4_count before building tables

2024-03-06 Thread Igor Mammedov
On Wed, 6 Mar 2024 13:17:39 +0530
Ani Sinha  wrote:

> > On 05-Mar-2024, at 21:27, Igor Mammedov  wrote:
> > 
> > it will help to keep type 4 tables accounting correct in case
> > SMBIOS tables are built multiple times.  
> 
> 
> I suggest you arrange this before patch 15 where you are actually calling 
> smbios_get_tables_ep() multiple times. That way there is no window where 
> things can break between patches.

it doesn't break in patch by patch test, because auto is not in use yet.
It could be moved but, I'd rather not respin series for the sake of reordering.

Michael can you reorder it before 15/20 when applying?

> > Signed-off-by: Igor Mammedov 
> > Tested-by: Fiona Ebner 
> > ---
> > hw/smbios/smbios.c | 1 +
> > 1 file changed, 1 insertion(+)
> > 
> > diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
> > index bf5c7a8885..b64d3bc227 100644
> > --- a/hw/smbios/smbios.c
> > +++ b/hw/smbios/smbios.c
> > @@ -981,6 +981,7 @@ static bool smbios_get_tables_ep(MachineState *ms,
> >ep_type == SMBIOS_ENTRY_POINT_TYPE_64);
> > 
> > g_free(smbios_tables);
> > +smbios_type4_count = 0;  
> 
> Nit: Can you put this before g_free() because gfree(smbios_tables) and 
> smbios_tables = memdup2() etc are related. This is kind of coming in between.
cleanup is not related to memdup, the later works fine without cleanup.
I'd prefer to keep it as is.

> 
> > smbios_tables = g_memdup2(usr_blobs, usr_blobs_len);
> > smbios_tables_len = usr_blobs_len;
> > smbios_table_max = usr_table_max;
> > -- 
> > 2.39.3
> >   
> 




Re: [PATCH v2 17/20] smbios: clear smbios_type4_count before building tables

2024-03-05 Thread Ani Sinha



> On 05-Mar-2024, at 21:27, Igor Mammedov  wrote:
> 
> it will help to keep type 4 tables accounting correct in case
> SMBIOS tables are built multiple times.


I suggest you arrange this before patch 15 where you are actually calling 
smbios_get_tables_ep() multiple times. That way there is no window where things 
can break between patches.

> 
> Signed-off-by: Igor Mammedov 
> Tested-by: Fiona Ebner 
> ---
> hw/smbios/smbios.c | 1 +
> 1 file changed, 1 insertion(+)
> 
> diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
> index bf5c7a8885..b64d3bc227 100644
> --- a/hw/smbios/smbios.c
> +++ b/hw/smbios/smbios.c
> @@ -981,6 +981,7 @@ static bool smbios_get_tables_ep(MachineState *ms,
>ep_type == SMBIOS_ENTRY_POINT_TYPE_64);
> 
> g_free(smbios_tables);
> +smbios_type4_count = 0;

Nit: Can you put this before g_free() because gfree(smbios_tables) and 
smbios_tables = memdup2() etc are related. This is kind of coming in between.

> smbios_tables = g_memdup2(usr_blobs, usr_blobs_len);
> smbios_tables_len = usr_blobs_len;
> smbios_table_max = usr_table_max;
> -- 
> 2.39.3
> 




[PATCH v2 17/20] smbios: clear smbios_type4_count before building tables

2024-03-05 Thread Igor Mammedov
it will help to keep type 4 tables accounting correct in case
SMBIOS tables are built multiple times.

Signed-off-by: Igor Mammedov 
Tested-by: Fiona Ebner 
---
 hw/smbios/smbios.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
index bf5c7a8885..b64d3bc227 100644
--- a/hw/smbios/smbios.c
+++ b/hw/smbios/smbios.c
@@ -981,6 +981,7 @@ static bool smbios_get_tables_ep(MachineState *ms,
ep_type == SMBIOS_ENTRY_POINT_TYPE_64);
 
 g_free(smbios_tables);
+smbios_type4_count = 0;
 smbios_tables = g_memdup2(usr_blobs, usr_blobs_len);
 smbios_tables_len = usr_blobs_len;
 smbios_table_max = usr_table_max;
-- 
2.39.3