1. 11 6月, 2019 3 次提交
  2. 21 5月, 2019 1 次提交
  3. 20 5月, 2019 2 次提交
  4. 15 5月, 2019 1 次提交
    • J
      mm/mmu_notifier: convert user range->blockable to helper function · dfcd6660
      Jérôme Glisse 提交于
      Use the mmu_notifier_range_blockable() helper function instead of directly
      dereferencing the range->blockable field.  This is done to make it easier
      to change the mmu_notifier range field.
      
      This patch is the outcome of the following coccinelle patch:
      
      %<-------------------------------------------------------------------
      @@
      identifier I1, FN;
      @@
      FN(..., struct mmu_notifier_range *I1, ...) {
      <...
      -I1->blockable
      +mmu_notifier_range_blockable(I1)
      ...>
      }
      ------------------------------------------------------------------->%
      
      spatch --in-place --sp-file blockable.spatch --dir .
      
      Link: http://lkml.kernel.org/r/20190326164747.24405-3-jglisse@redhat.comSigned-off-by: NJérôme Glisse <jglisse@redhat.com>
      Reviewed-by: NRalph Campbell <rcampbell@nvidia.com>
      Reviewed-by: NIra Weiny <ira.weiny@intel.com>
      Cc: Christian König <christian.koenig@amd.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Peter Xu <peterx@redhat.com>
      Cc: Felix Kuehling <Felix.Kuehling@amd.com>
      Cc: Jason Gunthorpe <jgg@mellanox.com>
      Cc: Ross Zwisler <zwisler@kernel.org>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Cc: Radim Krcmar <rkrcmar@redhat.com>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: Christian Koenig <christian.koenig@amd.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      dfcd6660
  5. 10 5月, 2019 1 次提交
  6. 24 4月, 2019 1 次提交
  7. 27 3月, 2019 1 次提交
  8. 26 3月, 2019 1 次提交
    • D
      drm/fbdev: Make skip_vt_switch the default · 8782c647
      Daniel Vetter 提交于
      KMS drivers really should all be able to restore their display state
      on resume without fbcon helping out. So make this the default.
      
      Since I'm not entirely foolish, make it only a default, which drivers
      can still override. That way when the inevitable regression report
      happens I can fix things up with a one-liner plus FIXME comment that
      someone should fix up the suspend/resume code in that driver.
      
      But at least all new drivers won't be broken by accident as soon as
      you turn off fbcon because "suspend/resume worked when I tested it".
      
      v2: Keep this for radeon because of
      
      commit 18c437ca
      Author: Alex Deucher <alexander.deucher@amd.com>
      Date:   Tue Nov 14 17:19:29 2017 -0500
      
          Revert "drm/radeon: dont switch vt on suspend"
      
      Thanks to Michel Dänzer for pointing this one out.
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Cc: Michel Dänzer <michel@daenzer.net>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Maxime Ripard <maxime.ripard@bootlin.com>
      Cc: Sean Paul <sean@poorly.run>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Sandy Huang <hjc@rock-chips.com>
      Cc: "Heiko Stübner" <heiko@sntech.de>
      Cc: Alex Deucher <alexander.deucher@amd.com>
      Cc: "Christian König" <christian.koenig@amd.com>
      Cc: Samuel Li <Samuel.Li@amd.com>
      Cc: "Michel Dänzer" <michel.daenzer@amd.com>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Junwei Zhang <Jerry.Zhang@amd.com>
      Cc: Huang Rui <ray.huang@amd.com>
      Cc: Shirish S <shirish.s@amd.com>
      Cc: Daniel Stone <daniels@collabora.com>
      Cc: "Noralf Trønnes" <noralf@tronnes.org>
      Cc: intel-gfx@lists.freedesktop.org
      Cc: nouveau@lists.freedesktop.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-rockchip@lists.infradead.org
      Reviewed-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Acked-by: NHeiko Stuebner <heiko@sntech.de>
      Tested-by: NHeiko Stuebner <heiko@sntech.de>
      Reviewed-by: NSamuel Li <samuel.li@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20181127173424.301-1-daniel.vetter@ffwll.ch
      8782c647
  9. 21 3月, 2019 1 次提交
    • Y
      drm/ttm: remove set but not used variable 'rdev' · 5bbfcebb
      YueHaibing 提交于
      Fixes gcc '-Wunused-but-set-variable' warning:
      
      drivers/gpu/drm/radeon/radeon_ttm.c: In function 'radeon_move_vram_ram':
      drivers/gpu/drm/radeon/radeon_ttm.c:254:24: warning:
       variable 'rdev' set but not used [-Wunused-but-set-variable]
      
      drivers/gpu/drm/radeon/radeon_ttm.c: In function 'radeon_move_ram_vram':
      drivers/gpu/drm/radeon/radeon_ttm.c:301:24: warning:
       variable 'rdev' set but not used [-Wunused-but-set-variable]
      
      It's not used since a987fcaa ("ttm: Make parts of a struct ttm_bo_device
      global.")
      Signed-off-by: NYueHaibing <yuehaibing@huawei.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      5bbfcebb
  10. 20 3月, 2019 3 次提交
  11. 20 2月, 2019 3 次提交
    • M
      drm: change func to better detect wether swiotlb is needed · 913b2cb7
      Michael D Labriola 提交于
      This commit fixes DRM failures on Xen PV systems that were introduced in
      v4.17 by the following commits:
      
      82626363 drm: add func to get max iomem address v2
      fd5fd480 drm/amdgpu: only enable swiotlb alloc when need v2
      1bc3d3cc drm/radeon: only enable swiotlb path when need v2
      
      The introduction of ->need_swiotlb to the ttm_dma_populate() conditionals
      in the radeon and amdgpu device drivers causes Gnome to immediately crash
      on Xen PV systems, returning the user to the login screen.  The following
      kernel errors get logged:
      
      [   28.554259] radeon_dp_aux_transfer_native: 200 callbacks suppressed
      [   31.219821] radeon 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
      [   31.220030] [drm:radeon_gem_object_create [radeon]] *ERROR* Failed to allocate GEM object (16384000, 2, 4096, -14)
      [   31.226109] radeon 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
      [   31.226300] [drm:radeon_gem_object_create [radeon]] *ERROR* Failed to allocate GEM object (16384000, 2, 4096, -14)
      [   31.300734] gnome-shell[1935]: segfault at 88 ip 00007f39151cd904 sp 00007ffc97611ad8 error 4 in libmutter-cogl.so[7f3915178000+aa000]
      [   31.300745] Code: 5f c3 0f 1f 40 00 48 8b 47 78 48 8b 40 40 ff e0 66 0f 1f 44 00 00 48 8b 47 78 48 8b 40 48 ff e0 66 0f 1f 44 00 00 48 8b 47 78 <48> 8b 80 88 00 00 00 ff e0 0f 1f 00 48 8b 47 78 48 8b 40 68 ff e0
      [   38.193302] radeon_dp_aux_transfer_native: 116 callbacks suppressed
      [   40.009317] radeon 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
      [   40.009488] [drm:radeon_gem_object_create [radeon]] *ERROR* Failed to allocate GEM object (16384000, 2, 4096, -14)
      [   40.015114] radeon 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
      [   40.015297] [drm:radeon_gem_object_create [radeon]] *ERROR* Failed to allocate GEM object (16384000, 2, 4096, -14)
      [   40.028302] gnome-shell[2431]: segfault at 2dadf40 ip 0000000002dadf40 sp 00007ffcd24ea5f8 error 15
      [   40.028306] Code: 20 6e 31 00 00 00 00 00 00 00 00 37 e3 3d 2d 7f 00 00 80 f4 e6 3d 2d 7f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 <00> 00 00 00 00 00 00 00 c1 00 00 00 00 00 00 00 80 e1 d2 03 00 00
      
      This commit renames drm_get_max_iomem() to drm_need_swiotlb(), adds a
      xen_pv_domain() check to it, and moves the bit shifting comparison that
      always follows its usage into the function (simplifying the drm driver
      code).
      Signed-off-by: NMichael D Labriola <michael.d.labriola@gmail.com>
      Reviewed-by: NChristian König <christian.koenig@amd.com>
      Signed-off-by: NChristian König <christian.koenig@amd.com>
      Link: https://patchwork.freedesktop.org/patch/286987/
      913b2cb7
    • G
      drm/radeon/evergreen_cs: fix missing break in switch statement · cc5034a5
      Gustavo A. R. Silva 提交于
      Add missing break statement in order to prevent the code from falling
      through to case CB_TARGET_MASK.
      
      This bug was found thanks to the ongoing efforts to enable
      -Wimplicit-fallthrough.
      
      Fixes: dd220a00 ("drm/radeon/kms: add support for streamout v7")
      Cc: stable@vger.kernel.org
      Signed-off-by: NGustavo A. R. Silva <gustavo@embeddedor.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      cc5034a5
    • R
      gpu: drm: radeon: Set DPM_FLAG_NEVER_SKIP when enabling PM-runtime · 450d007d
      Rafael J. Wysocki 提交于
      On HP ProBook 4540s, if PM-runtime is enabled in the radeon driver
      and the direct-complete optimization is used for the radeon device
      during system-wide suspend, the system doesn't resume.
      
      Preventing direct-complete from being used with the radeon device by
      setting the DPM_FLAG_NEVER_SKIP driver flag for it makes the problem
      go away, which indicates that direct-complete is not safe for the
      radeon driver in general and should not be used with it (at least
      for now).
      
      This fixes a regression introduced by commit c62ec461
      ("PM / core: Fix direct_complete handling for devices with no
      callbacks") which allowed direct-complete to be applied to
      devices without PM callbacks (again) which in turn unlocked
      direct-complete for radeon on HP ProBook 4540s.
      
      Fixes: c62ec461 ("PM / core: Fix direct_complete handling for devices with no callbacks")
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=201519Reported-by: NЯрослав Семченко <ukrkyi@gmail.com>
      Tested-by: NЯрослав Семченко <ukrkyi@gmail.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      450d007d
  12. 19 2月, 2019 2 次提交
  13. 29 1月, 2019 3 次提交
  14. 26 1月, 2019 1 次提交
  15. 24 1月, 2019 1 次提交
  16. 14 1月, 2019 1 次提交
    • S
      drm: move drm_can_sleep() to drm_util.h · e9eafcb5
      Sam Ravnborg 提交于
      Move drm_can_sleep() out of drmP.h to allow users
      to get rid of the drmP.h include.
      
      There was no header file that was a good match for this helper function.
      So add this to drm_util with the relevant includes.
      
      Add include of drm_util.h to all users.
      
      v2:
      - Update comments to use kernel-doc style (Daniel)
      - Add FIXME to drm_can_sleep and add note that this
        function should not be used in new code (Daniel)
      
      v3:
      - Fix kernel-doc syntax (Daniel)
      - Plug drm_util.h into drm-internels.rst (Daniel)
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Maxime Ripard <maxime.ripard@bootlin.com>
      Cc: Sean Paul <sean@poorly.run>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Alex Deucher <alexander.deucher@amd.com>
      Cc: "Christian König" <christian.koenig@amd.com>
      Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com>
      Cc: Gerd Hoffmann <kraxel@redhat.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Eric Anholt <eric@anholt.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190112193251.20450-2-sam@ravnborg.org
      e9eafcb5
  17. 12 1月, 2019 1 次提交
  18. 11 1月, 2019 3 次提交
  19. 29 12月, 2018 1 次提交
    • J
      mm/mmu_notifier: use structure for invalidate_range_start/end callback · 5d6527a7
      Jérôme Glisse 提交于
      Patch series "mmu notifier contextual informations", v2.
      
      This patchset adds contextual information, why an invalidation is
      happening, to mmu notifier callback.  This is necessary for user of mmu
      notifier that wish to maintains their own data structure without having to
      add new fields to struct vm_area_struct (vma).
      
      For instance device can have they own page table that mirror the process
      address space.  When a vma is unmap (munmap() syscall) the device driver
      can free the device page table for the range.
      
      Today we do not have any information on why a mmu notifier call back is
      happening and thus device driver have to assume that it is always an
      munmap().  This is inefficient at it means that it needs to re-allocate
      device page table on next page fault and rebuild the whole device driver
      data structure for the range.
      
      Other use case beside munmap() also exist, for instance it is pointless
      for device driver to invalidate the device page table when the
      invalidation is for the soft dirtyness tracking.  Or device driver can
      optimize away mprotect() that change the page table permission access for
      the range.
      
      This patchset enables all this optimizations for device drivers.  I do not
      include any of those in this series but another patchset I am posting will
      leverage this.
      
      The patchset is pretty simple from a code point of view.  The first two
      patches consolidate all mmu notifier arguments into a struct so that it is
      easier to add/change arguments.  The last patch adds the contextual
      information (munmap, protection, soft dirty, clear, ...).
      
      This patch (of 3):
      
      To avoid having to change many callback definition everytime we want to
      add a parameter use a structure to group all parameters for the
      mmu_notifier invalidate_range_start/end callback.  No functional changes
      with this patch.
      
      [akpm@linux-foundation.org: fix drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c kerneldoc]
      Link: http://lkml.kernel.org/r/20181205053628.3210-2-jglisse@redhat.comSigned-off-by: NJérôme Glisse <jglisse@redhat.com>
      Acked-by: NJan Kara <jack@suse.cz>
      Acked-by: Jason Gunthorpe <jgg@mellanox.com>	[infiniband]
      Cc: Matthew Wilcox <mawilcox@microsoft.com>
      Cc: Ross Zwisler <zwisler@kernel.org>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Cc: Radim Krcmar <rkrcmar@redhat.com>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: Christian Koenig <christian.koenig@amd.com>
      Cc: Felix Kuehling <felix.kuehling@amd.com>
      Cc: Ralph Campbell <rcampbell@nvidia.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5d6527a7
  20. 10 12月, 2018 1 次提交
  21. 08 12月, 2018 1 次提交
  22. 29 11月, 2018 1 次提交
  23. 09 11月, 2018 1 次提交
  24. 06 11月, 2018 5 次提交