1. 02 7月, 2016 3 次提交
    • S
      drm/vmwgfx: Add an option to change assumed FB bpp · 04319d89
      Sinclair Yeh 提交于
      Offer an option for advanced users who want larger modes at 16bpp.
      
      This becomes necessary after the fix: "Work around mode set
      failure in 2D VMs."  Without this patch, there would be no way
      for existing advanced users to get to a high res mode, and the
      regression is they will likely get a black screen after a software
      update on their current VM.
      Signed-off-by: NSinclair Yeh <syeh@vmware.com>
      Reviewed-by: NThomas Hellstrom <thellstrom@vmware.com>
      Cc: <stable@vger.kernel.org>
      04319d89
    • S
      drm/vmwgfx: Work around mode set failure in 2D VMs · 7c20d213
      Sinclair Yeh 提交于
      In a low-memory 2D VM, fbdev can take up a large percentage of
      available memory, making them unavailable for other DRM clients.
      
      Since we do not take fbdev into account when filtering modes,
      we end up claiming to support more modes than we actually do.
      
      As a result, users get a black screen when setting a mode too
      large for current available memory.  In a low-memory VM
      configuration, users can get a black screen for a mode as low
      as 1024x768.
      
      The current mode filtering mechanism keys off of
      SVGA_REG_SUGGESTED_GBOBJECT_MEM_SIZE_KB, i.e. the maximum amount
      of surface memory we have.  Since this value is a performance
      suggestion, not a hard limit, and since there should not be much
      of a performance impact for a 2D VM, rather than filtering out
      more modes, we will just allow ourselves to exceed the SVGA's
      performance suggestion.
      
      Also changed assumed bpp to 32 from 16 to make sure we can
      actually support all the modes listed.
      Signed-off-by: NSinclair Yeh <syeh@vmware.com>
      Reviewed-by: NThomas Hellstrom <thellstrom@vmware.com>
      Cc: <stable@vger.kernel.org>
      7c20d213
    • S
      drm/vmwgfx: Add a check to handle host message failure · a9cd9c04
      Sinclair Yeh 提交于
      Discovered by static code analysis tool.  If for some reason communication
      with the host fails more than preset number of retries, return an error
      instead of return garbage.
      Signed-off-by: NSinclair Yeh <syeh@vmware.com>
      Reviewed-by: NCharmaine Lee <charmainel@vmware.com>
      Reported-by: NDan Carpenter <dan.carpenter@oracle.com>
      a9cd9c04
  2. 24 6月, 2016 2 次提交
    • M
      drm/atomic: Make drm_atomic_legacy_backoff reset crtc->acquire_ctx · 81e257e9
      Maarten Lankhorst 提交于
      Atomic updates may acquire more state than initially locked through
      drm_modeset_lock_crtc, running with heavy stress can cause a
      WARN_ON(crtc->acquire_ctx) in drm_modeset_lock_crtc:
      
      [  601.491296] ------------[ cut here ]------------
      [  601.491366] WARNING: CPU: 0 PID: 2411 at
      drivers/gpu/drm/drm_modeset_lock.c:191 drm_modeset_lock_crtc+0xeb/0xf0 [drm]
      [  601.491369] Modules linked in: drm i915 drm_kms_helper
      [  601.491414] CPU: 0 PID: 2411 Comm: kms_cursor_lega Tainted: G     U 4.7.0-rc4-patser+ #4798
      [  601.491417] Hardware name: Intel Corporation Skylake Client
      [  601.491420]  0000000000000000 ffff88044d153c98 ffffffff812ead28 0000000000000000
      [  601.491425]  0000000000000000 ffff88044d153cd8 ffffffff810868e6 000000bf58058030
      [  601.491431]  ffff880088b415e8 ffff880458058030 ffff88008a271548 ffff88008a271568
      [  601.491436] Call Trace:
      [  601.491443]  [<ffffffff812ead28>] dump_stack+0x4d/0x65
      [  601.491447]  [<ffffffff810868e6>] __warn+0xc6/0xe0
      [  601.491452]  [<ffffffff81086968>] warn_slowpath_null+0x18/0x20
      [  601.491472]  [<ffffffffc00d4ffb>] drm_modeset_lock_crtc+0xeb/0xf0 [drm]
      [  601.491491]  [<ffffffffc00c5526>] drm_mode_cursor_common+0x66/0x180 [drm]
      [  601.491509]  [<ffffffffc00c91cc>] drm_mode_cursor_ioctl+0x3c/0x40 [drm]
      [  601.491524]  [<ffffffffc00bc94d>] drm_ioctl+0x14d/0x530 [drm]
      [  601.491540]  [<ffffffffc00c9190>] ? drm_mode_setcrtc+0x520/0x520 [drm]
      [  601.491545]  [<ffffffff81176aeb>] ? handle_mm_fault+0x106b/0x1430
      [  601.491550]  [<ffffffff81108441>] ? stop_one_cpu+0x61/0x70
      [  601.491556]  [<ffffffff811bb71d>] do_vfs_ioctl+0x8d/0x570
      [  601.491560]  [<ffffffff81290d7e>] ? security_file_ioctl+0x3e/0x60
      [  601.491565]  [<ffffffff811bbc74>] SyS_ioctl+0x74/0x80
      [  601.491571]  [<ffffffff810e321c>] ? posix_get_monotonic_raw+0xc/0x10
      [  601.491576]  [<ffffffff8175b11b>] entry_SYSCALL_64_fastpath+0x13/0x8f
      [  601.491581] ---[ end trace 56f3d3d85f000d00 ]---
      
      For good measure, test mode_config.acquire_ctx too, although this should
      never happen.
      
      Testcase: kms_cursor_legacy
      Signed-off-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Cc: stable@vger.kernel.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      81e257e9
    • D
      drm/nouveau: fix for disabled fbdev emulation · 52dfcc5c
      Dmitrii Tcvetkov 提交于
      Hello,
      
      after this commit:
      
      commit f045f459
      Author: Ben Skeggs <bskeggs@redhat.com>
      Date:   Thu Jun 2 12:23:31 2016 +1000
          drm/nouveau/fbcon: fix out-of-bounds memory accesses
      
      kernel started to oops when loading nouveau module when using GTX 780 Ti
      video adapter. This patch fixes the problem.
      
      Bug report: https://bugzilla.kernel.org/show_bug.cgi?id=120591Signed-off-by: NDmitrii Tcvetkov <demfloro@demfloro.ru>
      Suggested-by: NIlia Mirkin <imirkin@alum.mit.edu>
      Fixes: f045f459 ("nouveau_fbcon_init()")
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      52dfcc5c
  3. 22 6月, 2016 2 次提交
  4. 21 6月, 2016 16 次提交
  5. 19 6月, 2016 6 次提交
  6. 18 6月, 2016 10 次提交
  7. 17 6月, 2016 1 次提交