This is a note to let you know that I have just added a patch titled
Subject: [PATCH 2/2] drm/radeon/kms: Fix retrying ttm_bo_init() after it
failed once.
to the drm-next branch of the 2.6.32+drm33-longterm tree which can be found at
http://git.kernel.org/?p=linux/kernel/git/smb/linux-2.6.32.y-drm33.z.git;a=shortlog;h=refs/heads/drm-next
If you, or anyone else, feels it should not be added to the drm33-longterm tree,
please reply to this email not later than 8 days after this email was sent.
Thanks.
-Stefan
------
>From 85ee7b145fff78b47c3f70348dc4af0634c3421e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
Date: Wed, 2 Mar 2011 17:55:07 +0000
Subject: [PATCH 2/2] drm/radeon/kms: Fix retrying ttm_bo_init() after it failed
once.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If ttm_bo_init() returns failure, it already destroyed the BO, so we need to
retry from scratch.
Signed-off-by: Michel Dänzer <[email protected]>
Tested-by: Markus Trippelsdorf <[email protected]>
Cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
BugLink: http://bugs.launchpad.net/bugs/652934
(cherry picked from commit 2b66b50b12cabc05f05543e792d4c9c2465d5702)
Signed-off-by: Andy Whitcroft <[email protected]>
Signed-off-by: Stefan Bader <[email protected]>
---
drivers/gpu/drm/radeon/radeon_object.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/radeon/radeon_object.c
b/drivers/gpu/drm/radeon/radeon_object.c
index f23a199..d856a59 100644
--- a/drivers/gpu/drm/radeon/radeon_object.c
+++ b/drivers/gpu/drm/radeon/radeon_object.c
@@ -101,6 +101,8 @@ int radeon_bo_create(struct radeon_device *rdev, struct
drm_gem_object *gobj,
type = ttm_bo_type_device;
}
*bo_ptr = NULL;
+
+retry:
bo = kzalloc(sizeof(struct radeon_bo), GFP_KERNEL);
if (bo == NULL)
return -ENOMEM;
@@ -108,8 +110,6 @@ int radeon_bo_create(struct radeon_device *rdev, struct
drm_gem_object *gobj,
bo->gobj = gobj;
bo->surface_reg = -1;
INIT_LIST_HEAD(&bo->list);
-
-retry:
radeon_ttm_placement_from_domain(bo, domain);
/* Kernel allocation are uninterruptible */
r = ttm_bo_init(&rdev->mman.bdev, &bo->tbo, size, type,
--
1.7.0.4
_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable