diff options
author | Christian König <christian.koenig@amd.com> | 2020-07-13 17:50:04 +0300 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2020-07-21 17:13:29 +0300 |
commit | 4b8edc39a45f51eb304acb081020ec4f063d53a5 (patch) | |
tree | 98457738c0bda25dc1cd5797acb3d6b92c6a5df5 /drivers | |
parent | e69acf18d08d7b5e9416fa6afb3a8dd6dd3439ce (diff) | |
download | linux-4b8edc39a45f51eb304acb081020ec4f063d53a5.tar.xz |
drm/ttm: cleanup io_mem interface with nouveau
Nouveau is the only user of this functionality and evicting io space
on -EAGAIN is really a misuse of the return code.
Instead switch to using -ENOSPC here which makes much more sense and
simplifies the code.
This could unbreak something as we now cleanly return EAGAIN, but the
chance for this are rather low.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/378237/
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_bo.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_bo_util.c | 4 |
2 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c index 61355cfb7335..a48652826f67 100644 --- a/drivers/gpu/drm/nouveau/nouveau_bo.c +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c @@ -1505,8 +1505,6 @@ nouveau_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *reg) if (ret != 1) { if (WARN_ON(ret == 0)) return -EINVAL; - if (ret == -ENOSPC) - return -EAGAIN; return ret; } diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c index 5e0f3a9caedc..7d2c50fef456 100644 --- a/drivers/gpu/drm/ttm/ttm_bo_util.c +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c @@ -116,7 +116,7 @@ static int ttm_mem_io_evict(struct ttm_mem_type_manager *man) struct ttm_buffer_object *bo; if (!man->use_io_reserve_lru || list_empty(&man->io_reserve_lru)) - return -EAGAIN; + return -ENOSPC; bo = list_first_entry(&man->io_reserve_lru, struct ttm_buffer_object, @@ -143,7 +143,7 @@ int ttm_mem_io_reserve(struct ttm_bo_device *bdev, mem->bus.io_reserved_count++ == 0) { retry: ret = bdev->driver->io_mem_reserve(bdev, mem); - if (ret == -EAGAIN) { + if (ret == -ENOSPC) { ret = ttm_mem_io_evict(man); if (ret == 0) goto retry; |