Displaying 1 result from an estimated 1 matches for "nouveau_bo_nosync".
2009 Dec 24
1
[PATCH] nouveau: when nouveau_bo_map fails you expect it to not be mapped
...) {
ret = nouveau_bo_ualloc(nvbo);
if (ret)
- return ret;
+ goto out;
}
}
@@ -439,19 +445,22 @@ nouveau_bo_map_range(struct nouveau_bo *bo, uint32_t delta, uint32_t size,
} else {
ret = nouveau_bo_kmap(nvbo);
if (ret)
- return ret;
+ goto out;
if (!(flags & NOUVEAU_BO_NOSYNC)) {
ret = nouveau_bo_wait(bo, (flags & NOUVEAU_BO_WR),
(flags & NOUVEAU_BO_NOWAIT), 0);
if (ret)
- return ret;
+ goto out;
}
bo->map = (char *)nvbo->map + delta;
}
- return 0;
+out:
+ if (ret)
+ nouveau_bo_unmap(bo);
+ return ret;
}
void
--...