> -----Original Message----- > From: Dharmik Thakkar <dharmik.thak...@arm.com> > Sent: Friday, September 18, 2020 7:27 AM > To: Juraj Linkeš <juraj.lin...@pantheon.tech> > Cc: tho...@monjalon.net; dev@dpdk.org; nd <n...@arm.com> > Subject: Re: [dpdk-dev] [PATCH 1/2] config/arm: avoid variable reuse > > > > > On Sep 17, 2020, at 4:33 AM, Juraj Linkeš <juraj.lin...@pantheon.tech> > > wrote: > > > > > > > >> -----Original Message----- > >> From: dev <dev-boun...@dpdk.org> On Behalf Of Dharmik Thakkar > >> Sent: Tuesday, August 25, 2020 11:13 PM > >> To: Thomas Monjalon <tho...@monjalon.net> > >> Cc: dev@dpdk.org; n...@arm.com; Dharmik Thakkar > >> <dharmik.thak...@arm.com> > >> Subject: [dpdk-dev] [PATCH 1/2] config/arm: avoid variable reuse > >> > >> Rename 'machine' to 'machine_properties' in config/arm/meson.build > >> since 'machine' is previously being used in config/meson.build > >> > > > > Wasn't the same variable name used by design? That is update the variable > according to what's in config/arm/meson.build so that the new updated variable > would be used in config/meson.build after that? > > > > The variable ‘machine’ within config/arm/meson.build is essentially machine + > properties, so I think it makes sense to use a different variable name. > Also, since, ‘machine’ is a configuration option, IMO it is incorrect to > update it. >
It is a configuration option defined by us and only used in the config folder, so I guess the original author didn't think much of overwriting. It is actually used in the same manner in both config/meson.build and config/arm/meson.build and that is to set RTE_MACHINE, so I'd say it makes sense to use the same variable name from this point of view. Also, I see that it's being overwritten in the code (although only for a special case): if machine == 'default' if host_machine.cpu_family().startswith('x86') # matches the old pre-meson build systems default machine = 'corei7' But it is only being overwritten in this special case and I think there is value in preserving the original configuration value. That leads me to the conclusion that using the same name was not a deliberate design choice (which was my original question). So, +1 from me. > >> Signed-off-by: Dharmik Thakkar <dharmik.thak...@arm.com> > >> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com> > >> --- > >> config/arm/meson.build | 18 +++++++++--------- > >> 1 file changed, 9 insertions(+), 9 deletions(-) > >> > >> diff --git a/config/arm/meson.build b/config/arm/meson.build index > >> 8728051d5e38..e89ecdc4ccd2 100644 > >> --- a/config/arm/meson.build > >> +++ b/config/arm/meson.build > >> @@ -141,12 +141,12 @@ else > >> dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128) > >> dpdk_conf.set('RTE_ARCH_ARM64', 1) > >> > >> - machine = [] > >> + machine_properties = [] > >> cmd_generic = ['generic', '', '', 'default', ''] > >> cmd_output = cmd_generic # Set generic by default > >> machine_args = [] # Clear previous machine args > >> if arm_force_default_march and not meson.is_cross_build() > >> - machine = impl_generic > >> + machine_properties = impl_generic > >> impl_pn = 'default' > >> elif not meson.is_cross_build() > >> # The script returns ['Implementer', 'Variant', 'Architecture', > >> @@ > >> -158,9 +158,9 @@ else > >> cmd_output = cmd.stdout().to_lower().strip().split(' ') > >> endif > >> # Set to generic if variable is not found > >> - machine = get_variable('impl_' + cmd_output[0], ['generic']) > >> - if machine[0] == 'generic' > >> - machine = impl_generic > >> + machine_properties = get_variable('impl_' + cmd_output[0], > >> ['generic']) > >> + if machine_properties[0] == 'generic' > >> + machine_properties = impl_generic > >> cmd_output = cmd_generic > >> endif > >> impl_pn = cmd_output[3] > >> @@ -170,7 +170,7 @@ else > >> else > >> impl_id = meson.get_cross_property('implementor_id', > >> 'generic') > >> impl_pn = meson.get_cross_property('implementor_pn', > >> 'default') > >> - machine = get_variable('impl_' + impl_id) > >> + machine_properties = get_variable('impl_' + impl_id) > >> endif > >> > >> # Apply Common Defaults. These settings may be overwritten by > >> machine @@ -181,14 +181,14 @@ else > >> endif > >> endforeach > >> > >> - message('Implementer : ' + machine[0]) > >> - foreach flag: machine[1] > >> + message('Implementer : ' + machine_properties[0]) > >> + foreach flag: machine_properties[1] > >> if flag.length() > 0 > >> dpdk_conf.set(flag[0], flag[1]) > >> endif > >> endforeach > >> > >> - foreach marg: machine[2] > >> + foreach marg: machine_properties[2] > >> if marg[0] == impl_pn > >> foreach flag: marg[1] > >> if cc.has_argument(flag) > >> -- > >> 2.17.1 > >> > > > > Reviewed-by: Juraj Linkeš <juraj.lin...@pantheon.tech>