Skip to contentSkip to conversation

nouveau: remove unnecessary EAGAIN loops

PATCH New Marcin Slusarz 1 participant 1 message Apr 22, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 nouveau: remove unnecessary EAGAIN loops

drmCommandWrite / drmCommandWriteRead already loop on EAGAIN.

---
 nouveau/nouveau.c |    8 ++------
 nouveau/pushbuf.c |    7 ++-----
 2 files changed, 4 insertions(+), 11 deletions(-)
nouveau/nouveau.c +2 -6
index 699b9b7..f0bc2c3 100644
@@ -461,12 +461,8 @@ nouveau_bo_wait(struct nouveau_bo *bo, uint32_t access,
 	if (access & NOUVEAU_BO_NOBLOCK)
 		req.flags |= NOUVEAU_GEM_CPU_PREP_NOWAIT;
 
-	do {
-		ret = drmCommandWrite(bo->device->fd,
-				      DRM_NOUVEAU_GEM_CPU_PREP,
-				      &req, sizeof(req));
-	} while (ret == -EAGAIN);
-
+	ret = drmCommandWrite(bo->device->fd, DRM_NOUVEAU_GEM_CPU_PREP,
+			      &req, sizeof(req));
 	if (ret == 0)
 		nvbo->access = 0;
 	return ret;
nouveau/pushbuf.c +2 -5
index 103737e..7b9dbaa 100644
@@ -341,11 +341,8 @@ pushbuf_submit(struct nouveau_pushbuf *push, struct nouveau_object *chan)
 			pushbuf_dump(krec, krec_id++, fifo->channel);
 
 #ifndef SIMULATE
-		do {
-			ret = drmCommandWriteRead(dev->fd,
-						  DRM_NOUVEAU_GEM_PUSHBUF,
-						  &req, sizeof(req));
-		} while (ret == -EAGAIN);
+		ret = drmCommandWriteRead(dev->fd, DRM_NOUVEAU_GEM_PUSHBUF,
+					  &req, sizeof(req));
 		nvpb->suffix0 = req.suffix0;
 		nvpb->suffix1 = req.suffix1;
 		dev->vram_limit = (req.vram_available * 80) / 100;
Signature · 1 line
1.7.8.5