mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 09:11:26 +03:00
DCE-KMD: FSM: Don't acquire locks during init/de..
Dont't acquire locks during init/deinit.
- FSM init/deinit is expected to be called during init/deinit phase
when everything else and FSM itself is inactive.
- FSM mutex is just initialized/deinit in the same functions where
we're trying to acquire lock/release.
- While it is techically ok in general but not requried.
- Also HVRTOS restriction prevents to acquire mutexes in
initialization phase.
- Deinit can be called in Initization context to deinit
if init fails.
JIRA TDS-16052
Change-Id: I19e10bb890a4ab6d011df4380ab3a6d5fe92c696
Signed-off-by: anupamg <anupamg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3178697
Reviewed-by: Arun Swain <arswain@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Mahesh Kumar <mahkumar@nvidia.com>
This commit is contained in:
@@ -504,10 +504,8 @@ int dce_fsm_init(struct tegra_dce *d)
|
||||
return ret;
|
||||
}
|
||||
|
||||
dce_mutex_lock(&fsm->lock);
|
||||
fsm->d = d;
|
||||
fsm->initialized = true;
|
||||
dce_mutex_unlock(&fsm->lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -523,9 +521,7 @@ void dce_fsm_deinit(struct tegra_dce *d)
|
||||
{
|
||||
struct dce_fsm_info *fsm = &d->fsm_info;
|
||||
|
||||
dce_mutex_lock(&fsm->lock);
|
||||
fsm->initialized = false;
|
||||
dce_mutex_unlock(&fsm->lock);
|
||||
|
||||
dce_mutex_destroy(&fsm->lock);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user