mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
gpu: nvgpu: vgpu: add tsg initialization
It fixed kernel dump when run CUDA L0 test. Bug 1594604 Change-Id: Ic986b34629052e915f4ccc5a5b6df198afaf2ff9 Signed-off-by: Richard Zhao <rizhao@nvidia.com> Reviewed-on: http://git-master/r/831391 (cherry picked from commit 43d4ba4d6ffc6043e8425dc40967975afe3a95f1) Reviewed-on: http://git-master/r/832416 GVS: Gerrit_Virtual_Submit Reviewed-by: Vladislav Buzov <vbuzov@nvidia.com>
This commit is contained in:
committed by
Vladislav Buzov
parent
f25f21c231
commit
5a24e95fe6
@@ -271,10 +271,12 @@ static int vgpu_init_fifo_setup_sw(struct gk20a *g)
|
||||
|
||||
f->channel = kzalloc(f->num_channels * sizeof(*f->channel),
|
||||
GFP_KERNEL);
|
||||
f->tsg = kzalloc(f->num_channels * sizeof(*f->tsg),
|
||||
GFP_KERNEL);
|
||||
f->engine_info = kzalloc(f->max_engines * sizeof(*f->engine_info),
|
||||
GFP_KERNEL);
|
||||
|
||||
if (!(f->channel && f->engine_info)) {
|
||||
if (!(f->channel && f->tsg && f->engine_info)) {
|
||||
err = -ENOMEM;
|
||||
goto clean_up;
|
||||
}
|
||||
@@ -296,7 +298,9 @@ static int vgpu_init_fifo_setup_sw(struct gk20a *g)
|
||||
f->userd.gpu_va + chid * f->userd_entry_size;
|
||||
|
||||
gk20a_init_channel_support(g, chid);
|
||||
gk20a_init_tsg_support(g, chid);
|
||||
}
|
||||
mutex_init(&f->tsg_inuse_mutex);
|
||||
|
||||
f->deferred_reset_pending = false;
|
||||
mutex_init(&f->deferred_reset_mutex);
|
||||
@@ -315,6 +319,8 @@ clean_up:
|
||||
|
||||
kfree(f->channel);
|
||||
f->channel = NULL;
|
||||
kfree(f->tsg);
|
||||
f->tsg = NULL;
|
||||
kfree(f->engine_info);
|
||||
f->engine_info = NULL;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user