drmCommandWrite / drmCommandWriteRead already loop on EAGAIN.
---
 nouveau/nouveau.c |    8 ++------
 nouveau/pushbuf.c |    7 ++-----
 2 files changed, 4 insertions(+), 11 deletions(-)

diff --git a/nouveau/nouveau.c b/nouveau/nouveau.c
index 699b9b7..f0bc2c3 100644
--- a/nouveau/nouveau.c
+++ b/nouveau/nouveau.c
@@ -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;
diff --git a/nouveau/pushbuf.c b/nouveau/pushbuf.c
index 103737e..7b9dbaa 100644
--- a/nouveau/pushbuf.c
+++ b/nouveau/pushbuf.c
@@ -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;
-- 
1.7.8.5

_______________________________________________
Nouveau mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to