From: "Vudum, Lakshminarayana" <lakshminarayana.vudum@intel.com>
To: "De Marchi, Lucas" <lucas.demarchi@intel.com>,
"Roper, Matthew D" <matthew.d.roper@intel.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [PATCH] drm/i915/dg2: Do not explode on phy calibration error
Date: Mon, 11 Apr 2022 19:20:51 +0000 [thread overview]
Message-ID: <0fd1eac9dc104f61aaca8150c8f11cb6@intel.com> (raw)
In-Reply-To: <20220411181726.vdnqbo2p4iblxouh@ldmartin-desk2>
ICL issue is related to
https://gitlab.freedesktop.org/drm/intel/-/issues/4767
igt@kms_fbcon_fbt@fbc(-suspend)? - fail - Failed assertion: feature->wait_until_update(drm)
Thanks,
Lakshmi.
-----Original Message-----
From: De Marchi, Lucas <lucas.demarchi@intel.com>
Sent: Monday, April 11, 2022 11:17 AM
To: Roper, Matthew D <matthew.d.roper@intel.com>
Cc: intel-gfx@lists.freedesktop.org; Ville Syrjälä <ville.syrjala@linux.intel.com>; Jani Nikula <jani.nikula@linux.intel.com>; Vudum, Lakshminarayana <lakshminarayana.vudum@intel.com>
Subject: Re: [PATCH] drm/i915/dg2: Do not explode on phy calibration error
On Mon, Apr 11, 2022 at 08:34:35AM -0700, Matt Roper wrote:
>On Sat, Apr 09, 2022 at 11:15:36PM -0700, Lucas De Marchi wrote:
>> When the PHY fails on calibration we were previously skipping the ddi
>> initialization. However the driver is not really prepared for that,
>> ultimately leading to a NULL pointer dereference:
>>
>> [ 75.748348] i915 0000:03:00.0: [drm:intel_modeset_init_nogem [i915]] SNPS PHY A failed to calibrate; output will not be used.
>> ...
>> [ 75.750336] i915 0000:03:00.0: [drm:intel_modeset_setup_hw_state [i915]] [CRTC:80:pipe A] hw state readout: enabled
>> ...
>>
>> ( no DDI A/PHY A )
>> [ 75.753080] i915 0000:03:00.0: [drm:intel_modeset_setup_hw_state [i915]] [ENCODER:235:DDI B/PHY B] hw state readout: disabled, pipe A
>> [ 75.753164] i915 0000:03:00.0: [drm:intel_modeset_setup_hw_state [i915]] [ENCODER:245:DDI C/PHY C] hw state readout: disabled, pipe A
>> ...
>> [ 75.754425] i915 0000:03:00.0: [drm] *ERROR* crtc 80: Can't calculate constants, dotclock = 0!
>> [ 75.765558] i915 0000:03:00.0: drm_WARN_ON_ONCE(drm_drv_uses_atomic_modeset(dev))
>> [ 75.765569] WARNING: CPU: 5 PID: 1759 at drivers/gpu/drm/drm_vblank.c:728 drm_crtc_vblank_helper_get_vblank_timestamp_internal+0x347/0x360
>> ...
>> [ 75.781230] BUG: kernel NULL pointer dereference, address: 000000000000007c
>> [ 75.788198] #PF: supervisor read access in kernel mode
>> [ 75.793347] #PF: error_code(0x0000) - not-present page
>> [ 75.798480] PGD 0 P4D 0
>> [ 75.801019] Oops: 0000 [#1] PREEMPT SMP NOPTI
>> [ 75.805377] CPU: 5 PID: 1759 Comm: modprobe Tainted: G W 5.18.0-rc1-demarchi+ #199
>> [ 75.827613] RIP: 0010:icl_aux_power_well_disable+0x3b/0x200 [i915]
>> [ 75.833890] Code: 83 ec 30 65 48 8b 04 25 28 00 00 00 48 89 44 24 28 48 8b 06 0f b6 70 1c f6 40 20 04 8d 56 fa 0f 45 f2 e8 88 bd ff ff 48 89 ef <8b> 70 7c e8 ed 67 ff ff 48 89 ef 89 c6 e8 73 67 ff ff 84 c0 75 0a
>> [ 75.852629] RSP: 0018:ffffc90003a7fb30 EFLAGS: 00010246
>> [ 75.857852] RAX: 0000000000000000 RBX: ffff8881145e8f10 RCX: 0000000000000000
>> [ 75.864978] RDX: ffff888115220840 RSI: 0000000000000000 RDI: ffff888115220000
>> [ 75.872106] RBP: ffff888115220000 R08: ffff88888effffe8 R09: 00000000fffdffff
>> [ 75.879234] R10: ffff88888e200000 R11: ffff88888ed00000 R12: ffff8881145e8f10
>> [ 75.886363] R13: 0000000000000001 R14: ffff888115223240 R15: 0000000000000000
>> [ 75.893490] FS: 00007ff6e753a740(0000) GS:ffff88888f680000(0000) knlGS:0000000000000000
>> [ 75.901573] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
>> [ 75.907313] CR2: 000000000000007c CR3: 00000001216a6001 CR4: 0000000000770ee0
>> [ 75.914446] PKRU: 55555554
>> [ 75.917153] Call Trace:
>> [ 75.919603] <TASK>
>> [ 75.921709] intel_power_domains_sanitize_state+0x88/0xb0 [i915]
>> [ 75.927814] intel_modeset_init_nogem+0x317/0xef0 [i915]
>> [ 75.933205] i915_driver_probe+0x5f6/0xdf0 [i915]
>> [ 75.937976] i915_pci_probe+0x51/0x1d0 [i915]
>>
>> We skip the initialization of PHY A, but later we try to find out
>> what is the phy for that power well and dereference dig_port, which is NULL.
>>
>> Failing the PHY calibration could be left as a warning or error, like
>> it was before commit b4eb76d82a0e ("drm/i915/dg2: Skip output init on
>> PHY calibration failure"). However that often fails for outputs not
>> being used, which would make the warning/error appear on systems that
>> have no visible issues. Anyway, there is still a need to fix those
>> failures, but that is left for later.
>>
>> Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
>
>Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
The only CI failure is on ICL, that doesn't have snps phy. +Lakshmi
Applied to drm-intel-next. Thanks.
Lucas De Marchi
next prev parent reply other threads:[~2022-04-11 19:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-10 6:15 [Intel-gfx] [PATCH] drm/i915/dg2: Do not explode on phy calibration error Lucas De Marchi
2022-04-10 6:26 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2022-04-10 6:58 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-04-10 8:26 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2022-04-11 15:34 ` [Intel-gfx] [PATCH] " Matt Roper
2022-04-11 18:17 ` Lucas De Marchi
2022-04-11 19:20 ` Vudum, Lakshminarayana [this message]
2022-04-11 18:38 ` [Intel-gfx] ✓ Fi.CI.IGT: success for " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0fd1eac9dc104f61aaca8150c8f11cb6@intel.com \
--to=lakshminarayana.vudum@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=lucas.demarchi@intel.com \
--cc=matthew.d.roper@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox