mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
gpu: nvgpu: Fix TLB invalidate race
TLB invalidate can have a race if several contexts use the same address space. One thread starting an invalidate allows another thread to submit before invalidate is completed. Bug 1502332 Change-Id: I074ec493eac3b153c5f23d796a1dee1d8db24855 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/407578 Reviewed-by: Riham Haidar <rhaidar@nvidia.com> Tested-by: Riham Haidar <rhaidar@nvidia.com>
This commit is contained in:
committed by
Dan Willemsen
parent
4ac110cb8a
commit
c8a5d3f908
@@ -1575,13 +1575,6 @@ static int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
|
||||
incr_cmd->gp_put = c->gpfifo.put;
|
||||
}
|
||||
|
||||
/* Invalidate tlb if it's dirty... */
|
||||
/* TBD: this should be done in the cmd stream, not with PRIs. */
|
||||
/* We don't know what context is currently running... */
|
||||
/* Note also: there can be more than one context associated with the */
|
||||
/* address space (vm). */
|
||||
gk20a_mm_tlb_invalidate(c->vm);
|
||||
|
||||
trace_gk20a_channel_submitted_gpfifo(c->g->dev->name,
|
||||
c->hw_chid,
|
||||
num_entries,
|
||||
|
||||
Reference in New Issue
Block a user