On Wed, Feb 19, 2025 at 07:53:15PM -0500, Johnny Epsom wrote: > Hi Team > > I am running current 7.6 on a Thinkpad T14 (Gen1 - Intel) and when I > connect the laptop to my Dell USB-C dock, I am getting a crash. The system > drop into ddb and I need to restart the machine. > > The issue seems to have started from around version update #540 (upgraded > current from v535) -- I believe there was a recent change in drm drivers > which may have caused this -- > > https://marc.info/?l=openbsd-cvs&m=173889719518405&w=2 > > I have another machine (X1C6) on an older snapshot - #505 - which is > working is fine. > > I don't have serial console to get the crash details -- I have captured the > error messages using my phone (show panic / trace /ps etc) -- links. > > dmesg on restart shows an drm failure. > https://i.postimg.cc/yxkrh5r7/Crash1.jpg > https://i.postimg.cc/zDcQDzVv/Crash2.jpg > https://i.postimg.cc/Hs8hVqy2/Crash-machddb1.jpg > https://i.postimg.cc/3NVftBPm/Crash-ps1.jpg > https://i.postimg.cc/3xMbptjH/Crash-ps2.jpg > https://i.postimg.cc/zGn2kTpH/Crash-ps3.jpg > Apologies if the above is not enough ...please let me know if there is > something else I can capture which may be of help in diagnosis. > > Thanks in advance.
Thanks for the report, please send them to bugs@ next time. Try a kernel with the below patch. from Crash1.jpg intel_dp_get_dsc_sink_cap+0x148 intel_dp_add_mst_connector+0xeb drm_dp_mst_port_add_connector+0x162 drm_dp_send_link_address+0x78f drm_dp_check_and_send_link_address+0x38 drm_dp_mst_link_probe_work+0x20d /sys/dev/pci/drm/i915/display/intel_dp.c line 3952 3927 void intel_dp_get_dsc_sink_cap(u8 dpcd_rev, struct intel_connector *connector) 3928 { 3929 struct drm_i915_private *i915 = to_i915(connector->base.dev); 3951 3952 drm_dbg_kms(&i915->drm, "FEC CAPABILITY: %x\n", 3953 connector->dp.fec_capability); 3954 } 'drm/i915/dp_mst: Fix connector initialization in intel_dp_add_mst_connector()' https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d58f65df2dcb59acd3965907507cfa608fe924b4 Index: sys/dev/pci/drm/i915/display/intel_dp_mst.c =================================================================== RCS file: /cvs/src/sys/dev/pci/drm/i915/display/intel_dp_mst.c,v diff -u -p -r1.13 intel_dp_mst.c --- sys/dev/pci/drm/i915/display/intel_dp_mst.c 7 Feb 2025 03:03:29 -0000 1.13 +++ sys/dev/pci/drm/i915/display/intel_dp_mst.c 20 Feb 2025 02:50:35 -0000 @@ -1719,6 +1719,16 @@ static struct drm_connector *intel_dp_ad intel_dp_init_modeset_retry_work(intel_connector); + /* + * TODO: The following drm_connector specific initialization belongs + * to DRM core, however it happens atm too late in + * drm_connector_init(). That function will also expose the connector + * to in-kernel users, so it can't be called until the connector is + * sufficiently initialized; init the device pointer used by the + * following DSC setup, until a fix moving this to DRM core. + */ + intel_connector->base.dev = mgr->dev; + intel_connector->dp.dsc_decompression_aux = drm_dp_mst_dsc_aux_for_port(port); intel_dp_mst_read_decompression_port_dsc_caps(intel_dp, intel_connector); intel_connector->dp.dsc_hblank_expansion_quirk =