Преглед на файлове

drm/nouveau/fifo/nv04: avoid ramht race against cookie insertion

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: stable@vger.kernel.org
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Ilia Mirkin преди 9 години
родител
ревизия
666ca3d8f1
променени са 1 файла, в които са добавени 3 реда и са изтрити 0 реда
  1. 3 0
      drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c

+ 3 - 0
drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c

@@ -37,7 +37,10 @@ nv04_fifo_dma_object_dtor(struct nvkm_fifo_chan *base, int cookie)
 {
 {
 	struct nv04_fifo_chan *chan = nv04_fifo_chan(base);
 	struct nv04_fifo_chan *chan = nv04_fifo_chan(base);
 	struct nvkm_instmem *imem = chan->fifo->base.engine.subdev.device->imem;
 	struct nvkm_instmem *imem = chan->fifo->base.engine.subdev.device->imem;
+
+	mutex_lock(&chan->fifo->base.engine.subdev.mutex);
 	nvkm_ramht_remove(imem->ramht, cookie);
 	nvkm_ramht_remove(imem->ramht, cookie);
+	mutex_unlock(&chan->fifo->base.engine.subdev.mutex);
 }
 }
 
 
 static int
 static int