1. 22 9月, 2021 1 次提交
  2. 19 9月, 2021 1 次提交
    • L
      drm/i915: deduplicate frequency dump on debugfs · d0c56031
      Lucas De Marchi 提交于
      Although commit 9dd4b065 ("drm/i915/gt: Move pm debug files into a
      gt aware debugfs") says it was moving debug files to gt/, the
      i915_frequency_info file was left behind and its implementation copied
      into drivers/gpu/drm/i915/gt/debugfs_gt_pm.c. Over time we had several
      patches having to change both places to keep them in sync (and some
      patches failing to do so). The initial idea was to remove
      i915_frequency_info, but there are user space tools using it. From a
      quick code search there are other scripts and test tools besides igt, so
      it's not simply updating igt to get rid of the older file.
      
      Here we export a function using drm_printer as parameter and make
      both show() implementations to call this same function. Aside from a few
      variable name differences, for i915_frequency_info this brings a few
      lines that were not previously printed: RP UP EI, RP UP THRESHOLD, RP
      DOWN THRESHOLD and RP DOWN EI.  These came in as part of
      commit 9c878557 ("drm/i915/gt: Use the RPM config register to
      determine clk frequencies"), which didn't change both places.
      Signed-off-by: NLucas De Marchi <lucas.demarchi@intel.com>
      Acked-by: NJani Nikula <jani.nikula@intel.com>
      Reviewed-by: NMatt Roper <matthew.d.roper@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210918025754.1254705-4-lucas.demarchi@intel.com
      d0c56031
  3. 20 8月, 2021 1 次提交
  4. 13 8月, 2021 1 次提交
  5. 31 7月, 2021 1 次提交
  6. 08 7月, 2021 1 次提交
  7. 07 6月, 2021 1 次提交
  8. 25 5月, 2021 1 次提交
  9. 27 4月, 2021 1 次提交
  10. 30 3月, 2021 2 次提交
  11. 25 3月, 2021 1 次提交
  12. 02 2月, 2021 1 次提交
  13. 21 1月, 2021 1 次提交
  14. 19 1月, 2021 1 次提交
  15. 31 12月, 2020 1 次提交
  16. 24 12月, 2020 1 次提交
  17. 18 12月, 2020 1 次提交
  18. 04 12月, 2020 1 次提交
  19. 03 12月, 2020 1 次提交
  20. 01 12月, 2020 3 次提交
  21. 20 11月, 2020 2 次提交
  22. 09 11月, 2020 1 次提交
  23. 29 10月, 2020 1 次提交
  24. 01 10月, 2020 1 次提交
  25. 24 9月, 2020 1 次提交
  26. 14 7月, 2020 1 次提交
  27. 09 7月, 2020 5 次提交
  28. 07 7月, 2020 1 次提交
    • C
      drm/i915: Skip stale object handle for debugfs per-file-stats · 7dfbf8a0
      Chris Wilson 提交于
      As we close a handle GEM object, we update the drm_file's idr with an
      error^W NULL pointer to indicate the in-progress closure, and finally
      removing it. If we read the idr directly, we may then see an invalid
      object pointer, and in our debugfs per_file_stats() we therefore need
      to protect against the entry being invalid.
      
      [ 1016.651637] RIP: 0010:per_file_stats+0xe/0x16e
      [ 1016.651646] Code: d2 41 0f b6 8e 69 8c 00 00 48 89 df 48 c7 c6 7b 74 8c be 31 c0 e8 0c 89 cf ff eb d2 0f 1f 44 00 00 55 48 89 e5 41
      57 41 56 53 <8b> 06 85 c0 0f 84 4d 01 00 00 49 89 d6 48 89 f3 3d ff ff ff 7f 73
      [ 1016.651651] RSP: 0018:ffffad3a01337ba0 EFLAGS: 00010293
      [ 1016.651656] RAX: 0000000000000018 RBX: ffff96fe040d65e0 RCX: 0000000000000002
      [ 1016.651660] RDX: ffffad3a01337c50 RSI: 0000000000000000 RDI: 00000000000001e8
      [ 1016.651663] RBP: ffffad3a01337bb8 R08: 0000000000000000 R09: 00000000000001c0
      [ 1016.651667] R10: 0000000000000000 R11: ffffffffbdbe5fce R12: 0000000000000000
      [ 1016.651671] R13: ffffffffbdbe5fce R14: ffffad3a01337c50 R15: 0000000000000001
      [ 1016.651676] FS:  00007a597e2d7480(0000) GS:ffff96ff3bb00000(0000) knlGS:0000000000000000
      [ 1016.651680] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 1016.651683] CR2: 0000000000000000 CR3: 0000000171fc2001 CR4: 00000000003606e0
      [ 1016.651687] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [ 1016.651690] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
      [ 1016.651693] Call Trace:
      [ 1016.651693] Call Trace:
      [ 1016.651703]  idr_for_each+0x8a/0xe8
      [ 1016.651711]  i915_gem_object_info+0x2a3/0x3eb
      [ 1016.651720]  seq_read+0x162/0x3ca
      [ 1016.651727]  full_proxy_read+0x5b/0x8d
      [ 1016.651733]  __vfs_read+0x45/0x1bb
      [ 1016.651741]  vfs_read+0xc9/0x15e
      [ 1016.651746]  ksys_read+0x7e/0xde
      [ 1016.651752]  do_syscall_64+0x54/0x68
      [ 1016.651758]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
      Reported-by: NGuenter Roeck <linux@roeck-us.net>
      Fixes: a8c15954 ("drm/i915: Protect debugfs per_file_stats with RCU lock")
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Guenter Roeck <linux@roeck-us.net>
      Cc: stable@vger.kernel.org
      Reviewed-by: NMika Kuoppala <mika.kuoppala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200630152724.3734-1-chris@chris-wilson.co.uk
      (cherry picked from commit c1b9fd3d)
      Signed-off-by: NRodrigo Vivi <rodrigo.vivi@intel.com>
      7dfbf8a0
  29. 03 7月, 2020 1 次提交
  30. 01 7月, 2020 1 次提交
    • C
      drm/i915: Skip stale object handle for debugfs per-file-stats · c1b9fd3d
      Chris Wilson 提交于
      As we close a handle GEM object, we update the drm_file's idr with an
      error^W NULL pointer to indicate the in-progress closure, and finally
      removing it. If we read the idr directly, we may then see an invalid
      object pointer, and in our debugfs per_file_stats() we therefore need
      to protect against the entry being invalid.
      
      [ 1016.651637] RIP: 0010:per_file_stats+0xe/0x16e
      [ 1016.651646] Code: d2 41 0f b6 8e 69 8c 00 00 48 89 df 48 c7 c6 7b 74 8c be 31 c0 e8 0c 89 cf ff eb d2 0f 1f 44 00 00 55 48 89 e5 41
      57 41 56 53 <8b> 06 85 c0 0f 84 4d 01 00 00 49 89 d6 48 89 f3 3d ff ff ff 7f 73
      [ 1016.651651] RSP: 0018:ffffad3a01337ba0 EFLAGS: 00010293
      [ 1016.651656] RAX: 0000000000000018 RBX: ffff96fe040d65e0 RCX: 0000000000000002
      [ 1016.651660] RDX: ffffad3a01337c50 RSI: 0000000000000000 RDI: 00000000000001e8
      [ 1016.651663] RBP: ffffad3a01337bb8 R08: 0000000000000000 R09: 00000000000001c0
      [ 1016.651667] R10: 0000000000000000 R11: ffffffffbdbe5fce R12: 0000000000000000
      [ 1016.651671] R13: ffffffffbdbe5fce R14: ffffad3a01337c50 R15: 0000000000000001
      [ 1016.651676] FS:  00007a597e2d7480(0000) GS:ffff96ff3bb00000(0000) knlGS:0000000000000000
      [ 1016.651680] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 1016.651683] CR2: 0000000000000000 CR3: 0000000171fc2001 CR4: 00000000003606e0
      [ 1016.651687] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [ 1016.651690] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
      [ 1016.651693] Call Trace:
      [ 1016.651693] Call Trace:
      [ 1016.651703]  idr_for_each+0x8a/0xe8
      [ 1016.651711]  i915_gem_object_info+0x2a3/0x3eb
      [ 1016.651720]  seq_read+0x162/0x3ca
      [ 1016.651727]  full_proxy_read+0x5b/0x8d
      [ 1016.651733]  __vfs_read+0x45/0x1bb
      [ 1016.651741]  vfs_read+0xc9/0x15e
      [ 1016.651746]  ksys_read+0x7e/0xde
      [ 1016.651752]  do_syscall_64+0x54/0x68
      [ 1016.651758]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
      Reported-by: NGuenter Roeck <linux@roeck-us.net>
      Fixes: a8c15954 ("drm/i915: Protect debugfs per_file_stats with RCU lock")
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Guenter Roeck <linux@roeck-us.net>
      Cc: stable@vger.kernel.org
      Reviewed-by: NMika Kuoppala <mika.kuoppala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200630152724.3734-1-chris@chris-wilson.co.uk
      c1b9fd3d
  31. 23 6月, 2020 1 次提交
    • J
      drm/i915/params: switch to device specific parameters · 8a25c4be
      Jani Nikula 提交于
      Start using device specific parameters instead of module parameters for
      most things. The module parameters become the immutable initial values
      for i915 parameters. The device specific parameters in i915->params
      start life as a copy of i915_modparams. Any later changes are only
      reflected in the debugfs.
      
      The stragglers are:
      
      * i915.force_probe and i915.modeset. Needed before dev_priv is
        available. This is fine because the parameters are read-only and never
        modified.
      
      * i915.verbose_state_checks. Passing dev_priv to I915_STATE_WARN and
        I915_STATE_WARN_ON would result in massive and ugly churn. This is
        handled by not exposing the parameter via debugfs, and leaving the
        parameter writable in sysfs. This may be fixed up in follow-up work.
      
      * i915.inject_probe_failure. Only makes sense in terms of the module,
        not the device. This is handled by not exposing the parameter via
        debugfs.
      
      v2: Fix uc i915 lookup code (Michał Winiarski)
      
      Cc: Juha-Pekka Heikkilä <juha-pekka.heikkila@intel.com>
      Cc: Venkata Sandeep Dhanalakota <venkata.s.dhanalakota@intel.com>
      Cc: Michał Winiarski <michal.winiarski@intel.com>
      Reviewed-by: NRodrigo Vivi <rodrigo.vivi@intel.com>
      Acked-by: NMichał Winiarski <michal.winiarski@intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/20200618150402.14022-1-jani.nikula@intel.com
      8a25c4be
  32. 15 5月, 2020 1 次提交