aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas <noltari@gmail.com>2016-04-24 13:03:39 +0200
committerÁlvaro Fernández Rojas <noltari@gmail.com>2016-04-24 13:03:39 +0200
commit525b311bf869d7e252d744e501e227263a955c8e (patch)
tree4c644f534e5b577b9256d26b1e9a2e4a0453698e /target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch
parent0ab31bfced9666f3fb58acdb5833a93e4f4f5f7e (diff)
downloadupstream-525b311bf869d7e252d744e501e227263a955c8e.tar.gz
upstream-525b311bf869d7e252d744e501e227263a955c8e.tar.bz2
upstream-525b311bf869d7e252d744e501e227263a955c8e.zip
brcm2708: update linux 4.4 patches to latest version
As usual these patches were extracted from the raspberry pi repo: https://github.com/raspberrypi/linux/tree/rpi-4.4.y Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch')
-rw-r--r--target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch137
1 files changed, 0 insertions, 137 deletions
diff --git a/target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch b/target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch
deleted file mode 100644
index 9043036868..0000000000
--- a/target/linux/brcm2708/patches-4.4/0197-drm-vc4-Return-an-ERR_PTR-from-BO-creation-instead-o.patch
+++ /dev/null
@@ -1,137 +0,0 @@
-From d6211c47e6671faf74389dbcbe29454c5997defb Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Mon, 25 Jan 2016 14:13:12 -0800
-Subject: [PATCH 197/232] drm/vc4: Return an ERR_PTR from BO creation instead
- of NULL.
-
-Fixes igt vc4_create_bo/create-bo-0 by returning -EINVAL from the
-ioctl instead of -ENOMEM.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- drivers/gpu/drm/vc4/vc4_bo.c | 23 +++++++++++++----------
- drivers/gpu/drm/vc4/vc4_gem.c | 4 ++--
- drivers/gpu/drm/vc4/vc4_irq.c | 2 +-
- drivers/gpu/drm/vc4/vc4_render_cl.c | 4 ++--
- drivers/gpu/drm/vc4/vc4_validate.c | 4 ++--
- 5 files changed, 20 insertions(+), 17 deletions(-)
-
---- a/drivers/gpu/drm/vc4/vc4_bo.c
-+++ b/drivers/gpu/drm/vc4/vc4_bo.c
-@@ -213,10 +213,10 @@ struct vc4_bo *vc4_bo_create(struct drm_
- size_t size = roundup(unaligned_size, PAGE_SIZE);
- struct vc4_dev *vc4 = to_vc4_dev(dev);
- struct drm_gem_cma_object *cma_obj;
-- int pass;
-+ int pass, ret;
-
- if (size == 0)
-- return NULL;
-+ return ERR_PTR(-EINVAL);
-
- /* First, try to get a vc4_bo from the kernel BO cache. */
- if (from_cache) {
-@@ -247,14 +247,17 @@ struct vc4_bo *vc4_bo_create(struct drm_
- * unreferenced BOs to the cache, and then
- * free the cache.
- */
-- vc4_wait_for_seqno(dev, vc4->emit_seqno, ~0ull, true);
-+ ret = vc4_wait_for_seqno(dev, vc4->emit_seqno, ~0ull,
-+ true);
-+ if (ret)
-+ return ERR_PTR(ret);
- vc4_job_handle_completed(vc4);
- vc4_bo_cache_purge(dev);
- break;
- case 3:
- DRM_ERROR("Failed to allocate from CMA:\n");
- vc4_bo_stats_dump(vc4);
-- return NULL;
-+ return ERR_PTR(-ENOMEM);
- }
- }
-
-@@ -276,8 +279,8 @@ int vc4_dumb_create(struct drm_file *fil
- args->size = args->pitch * args->height;
-
- bo = vc4_bo_create(dev, args->size, false);
-- if (!bo)
-- return -ENOMEM;
-+ if (IS_ERR(bo))
-+ return PTR_ERR(bo);
-
- ret = drm_gem_handle_create(file_priv, &bo->base.base, &args->handle);
- drm_gem_object_unreference_unlocked(&bo->base.base);
-@@ -460,8 +463,8 @@ int vc4_create_bo_ioctl(struct drm_devic
- * get zeroed, and that might leak data between users.
- */
- bo = vc4_bo_create(dev, args->size, false);
-- if (!bo)
-- return -ENOMEM;
-+ if (IS_ERR(bo))
-+ return PTR_ERR(bo);
-
- ret = drm_gem_handle_create(file_priv, &bo->base.base, &args->handle);
- drm_gem_object_unreference_unlocked(&bo->base.base);
-@@ -513,8 +516,8 @@ vc4_create_shader_bo_ioctl(struct drm_de
- }
-
- bo = vc4_bo_create(dev, args->size, true);
-- if (!bo)
-- return -ENOMEM;
-+ if (IS_ERR(bo))
-+ return PTR_ERR(bo);
-
- ret = copy_from_user(bo->base.vaddr,
- (void __user *)(uintptr_t)args->data,
---- a/drivers/gpu/drm/vc4/vc4_gem.c
-+++ b/drivers/gpu/drm/vc4/vc4_gem.c
-@@ -593,9 +593,9 @@ vc4_get_bcl(struct drm_device *dev, stru
- }
-
- bo = vc4_bo_create(dev, exec_size, true);
-- if (!bo) {
-+ if (IS_ERR(bo)) {
- DRM_ERROR("Couldn't allocate BO for binning\n");
-- ret = PTR_ERR(exec->exec_bo);
-+ ret = PTR_ERR(bo);
- goto fail;
- }
- exec->exec_bo = &bo->base;
---- a/drivers/gpu/drm/vc4/vc4_irq.c
-+++ b/drivers/gpu/drm/vc4/vc4_irq.c
-@@ -57,7 +57,7 @@ vc4_overflow_mem_work(struct work_struct
- struct vc4_bo *bo;
-
- bo = vc4_bo_create(dev, 256 * 1024, true);
-- if (!bo) {
-+ if (IS_ERR(bo)) {
- DRM_ERROR("Couldn't allocate binner overflow mem\n");
- return;
- }
---- a/drivers/gpu/drm/vc4/vc4_render_cl.c
-+++ b/drivers/gpu/drm/vc4/vc4_render_cl.c
-@@ -316,8 +316,8 @@ static int vc4_create_rcl_bo(struct drm_
- size += xtiles * ytiles * loop_body_size;
-
- setup->rcl = &vc4_bo_create(dev, size, true)->base;
-- if (!setup->rcl)
-- return -ENOMEM;
-+ if (IS_ERR(setup->rcl))
-+ return PTR_ERR(setup->rcl);
- list_add_tail(&to_vc4_bo(&setup->rcl->base)->unref_head,
- &exec->unref_list);
-
---- a/drivers/gpu/drm/vc4/vc4_validate.c
-+++ b/drivers/gpu/drm/vc4/vc4_validate.c
-@@ -401,8 +401,8 @@ validate_tile_binning_config(VALIDATE_AR
- tile_bo = vc4_bo_create(dev, exec->tile_alloc_offset + tile_alloc_size,
- true);
- exec->tile_bo = &tile_bo->base;
-- if (!exec->tile_bo)
-- return -ENOMEM;
-+ if (IS_ERR(exec->tile_bo))
-+ return PTR_ERR(exec->tile_bo);
- list_add_tail(&tile_bo->unref_head, &exec->unref_list);
-
- /* tile alloc address. */