diff options
author | Dave Airlie <airlied@redhat.com> | 2017-01-31 17:40:13 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2017-01-31 17:40:13 -0500 |
commit | b75e16959c9410b4eea1fb94e49835d40a671d0f (patch) | |
tree | 3ecc8cc8318fed861f796959cbf90b0a9afd1961 | |
parent | 29a73d906bd386839015602c4bd35ef2e3531abc (diff) | |
parent | 5d25fde23b3176c7f94d2a992cb9762707d7c2a0 (diff) |
Merge branch 'drm-vmwgfx-next' of git://people.freedesktop.org/~syeh/repos_linux into drm-next
This is to address what we've discussed, moving some of the minor changes
into a drm-next request.
* 'drm-vmwgfx-next' of git://people.freedesktop.org/~syeh/repos_linux:
drm/vmwgfx: Use kmemdup instead of kmalloc and memcpy
drm/vmwgfx: Fix depth input into drm_mode_legacy_fb_format
drm/vmwgfx: Fix a potential integer overflow
drm/vmwgfx: Clear an uninitialized struct member
drm/vmwgfx: Annotate ignored return values
drm/vmwgfx: Clear uninitialized fields of a parameter
-rw-r--r-- | drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 4 |
7 files changed, 12 insertions, 12 deletions
diff --git a/drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h b/drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h index 531d22025fec..babe7cb84fc2 100644 --- a/drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h +++ b/drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h | |||
@@ -980,6 +980,8 @@ svga3dsurface_get_mip_size(surf_size_struct base_level, u32 mip_level) | |||
980 | size.width = max_t(u32, base_level.width >> mip_level, 1); | 980 | size.width = max_t(u32, base_level.width >> mip_level, 1); |
981 | size.height = max_t(u32, base_level.height >> mip_level, 1); | 981 | size.height = max_t(u32, base_level.height >> mip_level, 1); |
982 | size.depth = max_t(u32, base_level.depth >> mip_level, 1); | 982 | size.depth = max_t(u32, base_level.depth >> mip_level, 1); |
983 | size.pad64 = 0; | ||
984 | |||
983 | return size; | 985 | return size; |
984 | } | 986 | } |
985 | 987 | ||
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c index 1de96693f2a7..4c7f24a67a2e 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | |||
@@ -840,7 +840,7 @@ static void vmw_move_notify(struct ttm_buffer_object *bo, | |||
840 | */ | 840 | */ |
841 | static void vmw_swap_notify(struct ttm_buffer_object *bo) | 841 | static void vmw_swap_notify(struct ttm_buffer_object *bo) |
842 | { | 842 | { |
843 | ttm_bo_wait(bo, false, false); | 843 | (void) ttm_bo_wait(bo, false, false); |
844 | } | 844 | } |
845 | 845 | ||
846 | 846 | ||
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c index be35385bb26c..541a5887dd6c 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | |||
@@ -1293,7 +1293,7 @@ static void __vmw_svga_enable(struct vmw_private *dev_priv) | |||
1293 | */ | 1293 | */ |
1294 | void vmw_svga_enable(struct vmw_private *dev_priv) | 1294 | void vmw_svga_enable(struct vmw_private *dev_priv) |
1295 | { | 1295 | { |
1296 | ttm_read_lock(&dev_priv->reservation_sem, false); | 1296 | (void) ttm_read_lock(&dev_priv->reservation_sem, false); |
1297 | __vmw_svga_enable(dev_priv); | 1297 | __vmw_svga_enable(dev_priv); |
1298 | ttm_read_unlock(&dev_priv->reservation_sem); | 1298 | ttm_read_unlock(&dev_priv->reservation_sem); |
1299 | } | 1299 | } |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c index 867a8442220c..e9005b9a5e8c 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | |||
@@ -482,8 +482,7 @@ static int vmw_fb_kms_framebuffer(struct fb_info *info) | |||
482 | mode_cmd.height = var->yres; | 482 | mode_cmd.height = var->yres; |
483 | mode_cmd.pitches[0] = ((var->bits_per_pixel + 7) / 8) * mode_cmd.width; | 483 | mode_cmd.pitches[0] = ((var->bits_per_pixel + 7) / 8) * mode_cmd.width; |
484 | mode_cmd.pixel_format = | 484 | mode_cmd.pixel_format = |
485 | drm_mode_legacy_fb_format(var->bits_per_pixel, | 485 | drm_mode_legacy_fb_format(var->bits_per_pixel, depth); |
486 | ((var->bits_per_pixel + 7) / 8) * mode_cmd.width); | ||
487 | 486 | ||
488 | cur_fb = par->set_fb; | 487 | cur_fb = par->set_fb; |
489 | if (cur_fb && cur_fb->width == mode_cmd.width && | 488 | if (cur_fb && cur_fb->width == mode_cmd.width && |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c index cf22110e9eee..d492d57d5309 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | |||
@@ -757,7 +757,7 @@ static int vmw_create_dmabuf_proxy(struct drm_device *dev, | |||
757 | struct vmw_surface **srf_out) | 757 | struct vmw_surface **srf_out) |
758 | { | 758 | { |
759 | uint32_t format; | 759 | uint32_t format; |
760 | struct drm_vmw_size content_base_size; | 760 | struct drm_vmw_size content_base_size = {0}; |
761 | struct vmw_resource *res; | 761 | struct vmw_resource *res; |
762 | unsigned int bytes_pp; | 762 | unsigned int bytes_pp; |
763 | struct drm_format_name_buf format_name; | 763 | struct drm_format_name_buf format_name; |
@@ -1671,7 +1671,7 @@ int vmw_kms_update_layout_ioctl(struct drm_device *dev, void *data, | |||
1671 | * 1. Bounding box (assuming 32bpp) must be < prim_bb_mem | 1671 | * 1. Bounding box (assuming 32bpp) must be < prim_bb_mem |
1672 | * 2. Total pixels (assuming 32bpp) must be < prim_bb_mem | 1672 | * 2. Total pixels (assuming 32bpp) must be < prim_bb_mem |
1673 | */ | 1673 | */ |
1674 | u64 bb_mem = bounding_box.w * bounding_box.h * 4; | 1674 | u64 bb_mem = (u64) bounding_box.w * bounding_box.h * 4; |
1675 | u64 pixel_mem = total_pixels * 4; | 1675 | u64 pixel_mem = total_pixels * 4; |
1676 | 1676 | ||
1677 | if (bb_mem > dev_priv->prim_bb_mem) { | 1677 | if (bb_mem > dev_priv->prim_bb_mem) { |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c b/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c index b6126a5f1269..941bcfd131ff 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | |||
@@ -319,18 +319,17 @@ int vmw_otables_setup(struct vmw_private *dev_priv) | |||
319 | int ret; | 319 | int ret; |
320 | 320 | ||
321 | if (dev_priv->has_dx) { | 321 | if (dev_priv->has_dx) { |
322 | *otables = kmalloc(sizeof(dx_tables), GFP_KERNEL); | 322 | *otables = kmemdup(dx_tables, sizeof(dx_tables), GFP_KERNEL); |
323 | if (*otables == NULL) | 323 | if (*otables == NULL) |
324 | return -ENOMEM; | 324 | return -ENOMEM; |
325 | 325 | ||
326 | memcpy(*otables, dx_tables, sizeof(dx_tables)); | ||
327 | dev_priv->otable_batch.num_otables = ARRAY_SIZE(dx_tables); | 326 | dev_priv->otable_batch.num_otables = ARRAY_SIZE(dx_tables); |
328 | } else { | 327 | } else { |
329 | *otables = kmalloc(sizeof(pre_dx_tables), GFP_KERNEL); | 328 | *otables = kmemdup(pre_dx_tables, sizeof(pre_dx_tables), |
329 | GFP_KERNEL); | ||
330 | if (*otables == NULL) | 330 | if (*otables == NULL) |
331 | return -ENOMEM; | 331 | return -ENOMEM; |
332 | 332 | ||
333 | memcpy(*otables, pre_dx_tables, sizeof(pre_dx_tables)); | ||
334 | dev_priv->otable_batch.num_otables = ARRAY_SIZE(pre_dx_tables); | 333 | dev_priv->otable_batch.num_otables = ARRAY_SIZE(pre_dx_tables); |
335 | } | 334 | } |
336 | 335 | ||
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c index 8e86d6d4141b..65b3f0369636 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | |||
@@ -1760,7 +1760,7 @@ void vmw_resource_unpin(struct vmw_resource *res) | |||
1760 | struct vmw_private *dev_priv = res->dev_priv; | 1760 | struct vmw_private *dev_priv = res->dev_priv; |
1761 | int ret; | 1761 | int ret; |
1762 | 1762 | ||
1763 | ttm_read_lock(&dev_priv->reservation_sem, false); | 1763 | (void) ttm_read_lock(&dev_priv->reservation_sem, false); |
1764 | mutex_lock(&dev_priv->cmdbuf_mutex); | 1764 | mutex_lock(&dev_priv->cmdbuf_mutex); |
1765 | 1765 | ||
1766 | ret = vmw_resource_reserve(res, false, true); | 1766 | ret = vmw_resource_reserve(res, false, true); |
@@ -1770,7 +1770,7 @@ void vmw_resource_unpin(struct vmw_resource *res) | |||
1770 | if (--res->pin_count == 0 && res->backup) { | 1770 | if (--res->pin_count == 0 && res->backup) { |
1771 | struct vmw_dma_buffer *vbo = res->backup; | 1771 | struct vmw_dma_buffer *vbo = res->backup; |
1772 | 1772 | ||
1773 | ttm_bo_reserve(&vbo->base, false, false, NULL); | 1773 | (void) ttm_bo_reserve(&vbo->base, false, false, NULL); |
1774 | vmw_bo_pin_reserved(vbo, false); | 1774 | vmw_bo_pin_reserved(vbo, false); |
1775 | ttm_bo_unreserve(&vbo->base); | 1775 | ttm_bo_unreserve(&vbo->base); |
1776 | } | 1776 | } |