lkml.org 
[lkml]   [2012]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 097/241] ttm: Clear the ttm page allocated from high memory zone correctly
    Date
    3.5.7.2 -stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Zhao Yakui <yakui.zhao@intel.com>

    commit ac207ed2471150e06af0afc76e4becc701fa2733 upstream.

    The TTM page can be allocated from high memory. In such case it is
    wrong to use the page_address(page) as the virtual address for the high memory
    page.

    bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=50241

    Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
    Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski@canonical.com>
    ---
    drivers/gpu/drm/ttm/ttm_page_alloc.c | 5 ++++-
    1 file changed, 4 insertions(+), 1 deletion(-)

    diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c
    index ebc6fac..578207e 100644
    --- a/drivers/gpu/drm/ttm/ttm_page_alloc.c
    +++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c
    @@ -749,7 +749,10 @@ static int ttm_get_pages(struct page **pages, unsigned npages, int flags,
    /* clear the pages coming from the pool if requested */
    if (flags & TTM_PAGE_FLAG_ZERO_ALLOC) {
    list_for_each_entry(p, &plist, lru) {
    - clear_page(page_address(p));
    + if (PageHighMem(p))
    + clear_highpage(p);
    + else
    + clear_page(page_address(p));
    }
    }

    --
    1.7.9.5


    \
     
     \ /
      Last update: 2012-12-13 15:21    [W:2.637 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site