1. 02 Mar, 2023 1 commit
  2. 28 Feb, 2023 2 commits
  3. 22 Feb, 2023 3 commits
  4. 21 Feb, 2023 3 commits
  5. 20 Feb, 2023 1 commit
  6. 17 Feb, 2023 1 commit
  7. 16 Feb, 2023 27 commits
  8. 15 Feb, 2023 2 commits
    • Imre Deak's avatar
      drm/i915: Fix system suspend without fbdev being initialized · 8038510b
      Imre Deak authored
      If fbdev is not initialized for some reason - in practice on platforms
      without display - suspending fbdev should be skipped during system
      suspend, fix this up. While at it add an assert that suspending fbdev
      only happens with the display present.
      
      This fixes the following:
      
      [   91.227923] PM: suspend entry (s2idle)
      [   91.254598] Filesystems sync: 0.025 seconds
      [   91.270518] Freezing user space processes
      [   91.272266] Freezing user space processes completed (elapsed 0.001 seconds)
      [   91.272686] OOM killer disabled.
      [   91.272872] Freezing remaining freezable tasks
      [   91.274295] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
      [   91.659622] BUG: kernel NULL pointer dereference, address: 00000000000001c8
      [   91.659981] #PF: supervisor write access in kernel mode
      [   91.660252] #PF: error_code(0x0002) - not-present page
      [   91.660511] PGD 0 P4D 0
      [   91.660647] Oops: 0002 [#1] PREEMPT SMP NOPTI
      [   91.660875] CPU: 4 PID: 917 Comm: bash Not tainted 6.2.0-rc7+ #54
      [   91.661185] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS edk2-20221117gitfff6d81270b5-9.fc37 unknown
      [   91.661680] RIP: 0010:mutex_lock+0x19/0x30
      [   91.661914] Code: 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 0f 1f 44 00 00 53 48 89 fb e8 62 d3 ff ff 31 c0 65 48 8b 14 25 00 15 03 00 <f0> 48 0f b1 13 75 06 5b c3 cc cc cc cc 48 89 df 5b eb b4 0f 1f 40
      [   91.662840] RSP: 0018:ffffa1e8011ffc08 EFLAGS: 00010246
      [   91.663087] RAX: 0000000000000000 RBX: 00000000000001c8 RCX: 0000000000000000
      [   91.663440] RDX: ffff8be455eb0000 RSI: 0000000000000001 RDI: 00000000000001c8
      [   91.663802] RBP: ffff8be459440000 R08: ffff8be459441f08 R09: ffffffff8e1432c0
      [   91.664167] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
      [   91.664532] R13: 00000000000001c8 R14: 0000000000000000 R15: ffff8be442f4fb20
      [   91.664905] FS:  00007f28ffc16740(0000) GS:ffff8be4bb900000(0000) knlGS:0000000000000000
      [   91.665334] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   91.665626] CR2: 00000000000001c8 CR3: 0000000114926006 CR4: 0000000000770ee0
      [   91.665988] PKRU: 55555554
      [   91.666131] Call Trace:
      [   91.666265]  <TASK>
      [   91.666381]  intel_fbdev_set_suspend+0x97/0x1b0 [i915]
      [   91.666738]  i915_drm_suspend+0xb9/0x100 [i915]
      [   91.667029]  pci_pm_suspend+0x78/0x170
      [   91.667234]  ? __pfx_pci_pm_suspend+0x10/0x10
      [   91.667461]  dpm_run_callback+0x47/0x150
      [   91.667673]  __device_suspend+0x10a/0x4e0
      [   91.667880]  dpm_suspend+0x134/0x270
      [   91.668069]  dpm_suspend_start+0x79/0x80
      [   91.668272]  suspend_devices_and_enter+0x11b/0x890
      [   91.668526]  pm_suspend.cold+0x270/0x2fc
      [   91.668737]  state_store+0x46/0x90
      [   91.668916]  kernfs_fop_write_iter+0x11b/0x200
      [   91.669153]  vfs_write+0x1e1/0x3a0
      [   91.669336]  ksys_write+0x53/0xd0
      [   91.669510]  do_syscall_64+0x58/0xc0
      [   91.669699]  ? syscall_exit_to_user_mode_prepare+0x18e/0x1c0
      [   91.669980]  ? syscall_exit_to_user_mode_prepare+0x18e/0x1c0
      [   91.670278]  ? syscall_exit_to_user_mode+0x17/0x40
      [   91.670524]  ? do_syscall_64+0x67/0xc0
      [   91.670717]  ? __irq_exit_rcu+0x3d/0x140
      [   91.670931]  entry_SYSCALL_64_after_hwframe+0x72/0xdc
      [   91.671202] RIP: 0033:0x7f28ffd14284
      
      v2: CC stable. (Jani)
      
      Fixes: f8cc091e ("drm/i915/fbdev: suspend HPD before fbdev unregistration")
      References: https://gitlab.freedesktop.org/drm/intel/-/issues/8015Reported-and-tested-by: default avatariczero <iczero@hellomouse.net>
      Cc: Andrzej Hajda <andrzej.hajda@intel.com>
      Cc: iczero <iczero@hellomouse.net>
      Cc: <stable@vger.kernel.org> # v6.1+
      Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230208114300.3123934-2-imre.deak@intel.com
      (cherry picked from commit 9542d708)
      Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
      8038510b
    • Lucas De Marchi's avatar
      drm/i915: Fix GEN8_MISCCPCTL · 6a8b2e49
      Lucas De Marchi authored
      Register 0x9424 is not replicated on any platform, so it shouldn't be
      declared with REG_MCR(). Declaring it with _MMIO() is basically
      duplicate of the GEN7 version, so just remove the GEN8 and change all
      the callers to use the right functions.
      
      Old versions of the gen8 bspec page used to contain a table with MCR
      registers, apparently implying 0x9400 - 0x94ff registers were
      replicated. However that table went away and there is no information
      related to the ranges for gen8 anymore. Moreover the current behavior of
      the driver wouldn't do anything special for 0x9424 since there is no
      equivalent table in intel_gt_mcr.c: the driver would just fallback to
      intel_uncore_{read,write}(). Therefore, do not care about the possible
      special case for gen8 and just use the register as non-MCR for all the
      platforms.
      
      One place doing read + write is also converted to intel_uncore_rmw().
      
      v2: Reword commit message adding the justification wrt gen8
      
      Fixes: a9e69428 ("drm/i915: Define MCR registers explicitly")
      Cc: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Gustavo Sousa <gustavo.sousa@intel.com>
      Cc: Matt Atwood <matthew.s.atwood@intel.com>
      Cc: Ashutosh Dixit <ashutosh.dixit@intel.com>
      Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
      Reviewed-by: default avatarMatt Roper <matthew.d.roper@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230206165410.3056073-1-lucas.demarchi@intel.com
      (cherry picked from commit 869bace7)
      Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
      6a8b2e49