lkml.org 
[lkml]   [2012]   [May]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[34-longterm 170/179] drm/ttm: fix ttm_bo_add_ttm(user) failure path
    Date
    From: Marcin Slusarz <marcin.slusarz@gmail.com>

    -------------------
    This is a commit scheduled for the next v2.6.34 longterm release.
    http://git.kernel.org/?p=linux/kernel/git/paulg/longterm-queue-2.6.34.git
    If you see a problem with using this for longterm, please comment.
    -------------------

    commit 7c4c3960dff109bc5db4c35da481c212dadb5eb5 upstream.

    ttm_tt_destroy kfrees passed object, so we need to nullify
    a reference to it.

    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
    ---
    drivers/gpu/drm/ttm/ttm_bo.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
    index 0e3754a3..778fa1a 100644
    --- a/drivers/gpu/drm/ttm/ttm_bo.c
    +++ b/drivers/gpu/drm/ttm/ttm_bo.c
    @@ -343,8 +343,10 @@ static int ttm_bo_add_ttm(struct ttm_buffer_object *bo, bool zero_alloc)

    ret = ttm_tt_set_user(bo->ttm, current,
    bo->buffer_start, bo->num_pages);
    - if (unlikely(ret != 0))
    + if (unlikely(ret != 0)) {
    ttm_tt_destroy(bo->ttm);
    + bo->ttm = NULL;
    + }
    break;
    default:
    printk(KERN_ERR TTM_PFX "Illegal buffer object type\n");
    --
    1.7.9.6


    \
     
     \ /
      Last update: 2012-05-15 06:03    [W:4.373 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site