mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 10:33:41 +02:00
wifi: iwlwifi: tests: allow same config for different MACs
For different MACs we maintain the configs in different files, and while it's a small waste of space, this is a worthwhile trade-off for maintenance and simplicity. So allow different MAC types to have the same config. This could allow the same config for two MACs in the same MAC family, but that's not hugely important. Also simplify the test to not build a config list, there's no good reason to do that. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250504132447.27f5d570eb32.I1649309a0e54a1d446a38c5b2124a582de9f6d61@changeid
This commit is contained in:
parent
3193282ae0
commit
21085ad779
|
|
@ -60,41 +60,27 @@ static void devinfo_names(struct kunit *test)
|
|||
|
||||
static void devinfo_no_cfg_dups(struct kunit *test)
|
||||
{
|
||||
/* allocate iwl_dev_info_table_size as upper bound */
|
||||
const struct iwl_cfg **cfgs = kunit_kcalloc(test,
|
||||
iwl_dev_info_table_size,
|
||||
sizeof(*cfgs), GFP_KERNEL);
|
||||
int p = 0;
|
||||
|
||||
KUNIT_ASSERT_NOT_NULL(test, cfgs);
|
||||
|
||||
/* build a list of unique (by pointer) configs first */
|
||||
for (int i = 0; i < iwl_dev_info_table_size; i++) {
|
||||
bool found = false;
|
||||
|
||||
for (int j = 0; j < p; j++) {
|
||||
if (cfgs[j] == iwl_dev_info_table[i].cfg) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
cfgs[p] = iwl_dev_info_table[i].cfg;
|
||||
p++;
|
||||
}
|
||||
}
|
||||
|
||||
/* check that they're really all different */
|
||||
for (int i = 0; i < p; i++) {
|
||||
struct iwl_cfg cfg_i = *cfgs[i];
|
||||
const struct iwl_cfg *cfg_i = iwl_dev_info_table[i].cfg;
|
||||
|
||||
for (int j = 0; j < i; j++) {
|
||||
struct iwl_cfg cfg_j = *cfgs[j];
|
||||
const struct iwl_cfg *cfg_j = iwl_dev_info_table[j].cfg;
|
||||
|
||||
KUNIT_EXPECT_NE_MSG(test, memcmp(&cfg_i, &cfg_j,
|
||||
sizeof(cfg_i)), 0,
|
||||
if (cfg_i == cfg_j)
|
||||
continue;
|
||||
|
||||
/*
|
||||
* allow different MAC type to have the same config
|
||||
* for better maintenance / file split
|
||||
*/
|
||||
if (iwl_dev_info_table[i].mac_type !=
|
||||
iwl_dev_info_table[j].mac_type)
|
||||
continue;
|
||||
|
||||
KUNIT_EXPECT_NE_MSG(test, memcmp(cfg_i, cfg_j,
|
||||
sizeof(*cfg_i)), 0,
|
||||
"identical configs: %ps and %ps\n",
|
||||
cfgs[i], cfgs[j]);
|
||||
cfg_i, cfg_j);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user