mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
gpu: nvgpu: unit: fix mutex reacquire fail for l4t
Currently, setup_sw_s2 case of test_gv11b_mm_mmu_fault_setup_sw() in hal.mm.mmu_fault fails for L4T OS. setup_sw_s2 test case executes gv11b_mm_mmu_fault_info_mem_destroy() twice consecutively. This makes the test acquire hub_isr_mutex after being destroyed; leading to failure This patch removes setup_sw_s2 case to resolve this error. Local GCOV report shows that there is no change in coverage with this change. Jira NVGPU-4780 Change-Id: I7b9470180d8f3146ac09318ed34281f723cc7e1a Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2302212 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
Alex Waterman
parent
c383b631d7
commit
0220409d0f
@@ -1835,12 +1835,6 @@
|
||||
"unit": "mmu_fault_gv11b_fusa",
|
||||
"test_level": 0
|
||||
},
|
||||
{
|
||||
"test": "test_gv11b_mm_mmu_fault_setup_sw",
|
||||
"case": "setup_sw_s2",
|
||||
"unit": "mmu_fault_gv11b_fusa",
|
||||
"test_level": 0
|
||||
},
|
||||
{
|
||||
"test": "test_acr_bootstrap_hs_acr",
|
||||
"case": "acr_bootstrap_hs_acr",
|
||||
|
||||
@@ -215,12 +215,10 @@ int test_env_init_mm_mmu_fault_gv11b_fusa(struct unit_module *m,
|
||||
|
||||
#define F_MMU_FAULT_SETUP_SW_FAULT_BUF_ALLOC_FAIL 0
|
||||
#define F_MMU_FAULT_SETUP_SW_DEFAULT 1
|
||||
#define F_MMU_FAULT_SETUP_SW_2 2
|
||||
|
||||
static const char *f_mmu_fault_setup_sw[] = {
|
||||
"mmu_fault_setup_sw_alloc_fail",
|
||||
"mmu_fault_setup_sw_default",
|
||||
"mmu_fault_setup_sw_twice",
|
||||
};
|
||||
|
||||
int test_gv11b_mm_mmu_fault_setup_sw(struct unit_module *m, struct gk20a *g,
|
||||
@@ -237,11 +235,6 @@ int test_gv11b_mm_mmu_fault_setup_sw(struct unit_module *m, struct gk20a *g,
|
||||
branch == F_MMU_FAULT_SETUP_SW_FAULT_BUF_ALLOC_FAIL ?
|
||||
true : false, 0);
|
||||
|
||||
if (branch == F_MMU_FAULT_SETUP_SW_2) {
|
||||
err = gv11b_mm_mmu_fault_setup_sw(g);
|
||||
unit_assert(err == 0, goto done);
|
||||
}
|
||||
|
||||
err = gv11b_mm_mmu_fault_setup_sw(g);
|
||||
unit_assert(err == 0, goto done);
|
||||
|
||||
@@ -259,10 +252,6 @@ int test_gv11b_mm_mmu_fault_setup_sw(struct unit_module *m, struct gk20a *g,
|
||||
}
|
||||
gv11b_mm_mmu_fault_info_mem_destroy(g);
|
||||
|
||||
if (branch == F_MMU_FAULT_SETUP_SW_2) {
|
||||
gv11b_mm_mmu_fault_info_mem_destroy(g);
|
||||
}
|
||||
|
||||
unit_assert(g->mm.hw_fault_buf[NVGPU_MMU_FAULT_NONREPLAY_INDX].aperture
|
||||
== APERTURE_INVALID, goto done);
|
||||
|
||||
@@ -794,7 +783,6 @@ struct unit_module_test mm_mmu_fault_gv11b_fusa_tests[] = {
|
||||
UNIT_TEST(env_init, test_env_init_mm_mmu_fault_gv11b_fusa, NULL, 0),
|
||||
UNIT_TEST(setup_sw_s0, test_gv11b_mm_mmu_fault_setup_sw, (void *)F_MMU_FAULT_SETUP_SW_FAULT_BUF_ALLOC_FAIL, 0),
|
||||
UNIT_TEST(setup_sw_s1, test_gv11b_mm_mmu_fault_setup_sw, (void *)F_MMU_FAULT_SETUP_SW_DEFAULT, 0),
|
||||
UNIT_TEST(setup_sw_s2, test_gv11b_mm_mmu_fault_setup_sw, (void *)F_MMU_FAULT_SETUP_SW_2, 0),
|
||||
UNIT_TEST(setup_hw, test_gv11b_mm_mmu_fault_setup_hw, NULL, 0),
|
||||
UNIT_TEST(disable_hw_s0, test_gv11b_mm_mmu_fault_disable_hw, (void *)F_MMU_FAULT_DISABLE_HW_FALSE, 0),
|
||||
UNIT_TEST(disable_hw_s1, test_gv11b_mm_mmu_fault_disable_hw, (void *)F_MMU_FAULT_DISABLE_HW_TRUE, 0),
|
||||
|
||||
Reference in New Issue
Block a user