diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2011-09-13 16:08:06 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-09-14 08:34:51 -0400 |
commit | ff02b13f6867af72682d7a9bb9bd705f9af2bab0 (patch) | |
tree | 09ab99dd19a289a5c079f02c19e95991ffb0c2c8 /drivers/gpu/drm/ttm/ttm_bo.c | |
parent | 003f6c9df54970d8b19578d195b3e2b398cdbde2 (diff) |
drm/ttm: request zeroed system memory pages for new TT buffer objects
Fixes an information leak to userspace, we were handing out un-zeroed pages
for any newly created TTM_PL_TT buffer.
Reported-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Tested-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: stable@kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/ttm/ttm_bo.c')
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_bo.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c index a4d38d85909..ef06194c5aa 100644 --- a/drivers/gpu/drm/ttm/ttm_bo.c +++ b/drivers/gpu/drm/ttm/ttm_bo.c | |||
@@ -394,7 +394,8 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo, | |||
394 | 394 | ||
395 | if (!(new_man->flags & TTM_MEMTYPE_FLAG_FIXED)) { | 395 | if (!(new_man->flags & TTM_MEMTYPE_FLAG_FIXED)) { |
396 | if (bo->ttm == NULL) { | 396 | if (bo->ttm == NULL) { |
397 | ret = ttm_bo_add_ttm(bo, false); | 397 | bool zero = !(old_man->flags & TTM_MEMTYPE_FLAG_FIXED); |
398 | ret = ttm_bo_add_ttm(bo, zero); | ||
398 | if (ret) | 399 | if (ret) |
399 | goto out_err; | 400 | goto out_err; |
400 | } | 401 | } |