Tested the patch on OpenBSD 8.0-current with the Intel Arc A550M, and it
worked.

dmesg output confirms both devices attach successfully:
inteldrm0 at pci3 dev 0 function 0 "Intel Arc A550M" rev 0x08
drm1 at inteldrm0
inteldrm0: msi, DG2, gen 12
inteldrm1 at pci0 dev 2 function 0 "Intel Graphics" rev 0x0c
drm0 at inteldrm1
inteldrm1: msi, ALDERLAKE_P, gen 12
inteldrm1: 1920x1080, 32bpp

Thank you for the quick fix Jonathan!


> On Tue, Oct 20, 2026 at 01:01:55AM -0700, sushi wrote:
>> >Synopsis:
>> inteldrm page fault panic on boot with Intel Arc A550M
>>
>> >Category:   kernel
>> >Environment:
>>      System      : OpenBSD 8.0
>>      Details     : OpenBSD 8.0 (GENERIC.MP) #84: Tue Oct  6 23:13:49 MDT
>> 2026
>>                       
>> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>>
>>      Architecture: OpenBSD.amd64
>>      Machine     : amd64
>> >Description:
>> During an upgrade from OpenBSD 7.9 to 8.0, the system panics
>> consistently
>> during boot while initializing the inteldrm / i915 driver stack. The
>> crash
>> occurs specifically during backlight configuration.
>> >How-To-Repeat:
>> Attempt to boot OpenBSD 8.0 normally with 'inteldrm' enabled on a system
>> utilizing an Intel Arc A550M graphics card.
>> >Fix:
>> workaround:
>> boot> -c
>> UKC> disable inteldrm
>> UKC> quit
>>
>> [Crash Traceback Summary]
>> kernel: page fault trap, code=0
>> stopped at drm_connector_list_iter_next+0x70
>>   drm_connector_list_iter_next(...)
>>   inteldrm_native_backlight(...) at inteldrm_native_backlight
>>   inteldrm_init_backlight(...) at inteldrm_init_backlight
>>   i915_driver_probe(...) at i915_driver_probe
>>   inteldrm_attachhook(...) at inteldrm_attachhook
>>   config_process_deferred_mountroot()
>>   main() at main
>
> The connector state is not initialised when the device has no
> display controller.
>
> Try this:
>
> Index: sys/dev/pci/drm/i915/i915_driver.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/i915/i915_driver.c,v
> diff -u -p -r1.37 i915_driver.c
> --- sys/dev/pci/drm/i915/i915_driver.c        5 Oct 2026 08:20:26 -0000       
> 1.37
> +++ sys/dev/pci/drm/i915/i915_driver.c        21 Oct 2026 05:42:29 -0000
> @@ -2582,9 +2582,14 @@ void
>  inteldrm_native_backlight(struct drm_i915_private *dev_priv)
>  {
>       struct drm_device *dev = &dev_priv->drm;
> +     struct intel_display *display = dev_priv->display;
>       struct drm_connector_list_iter conn_iter;
>       struct drm_connector *connector;
>
> +     /* connector state not initialised with no crtc */
> +     if (!intel_display_device_present(display))
> +             return;
> +
>       drm_connector_list_iter_begin(dev, &conn_iter);
>       drm_for_each_connector_iter(connector, &conn_iter) {
>               struct intel_connector *intel_connector;
> @@ -2628,10 +2633,15 @@ inteldrm_firmware_backlight(struct drm_i
>      struct wsdisplay_param *dp)
>  {
>       struct drm_device *dev = &dev_priv->drm;
> +     struct intel_display *display = dev_priv->display;
>       struct drm_connector_list_iter conn_iter;
>       struct drm_connector *connector;
>       struct backlight_properties props;
>       struct backlight_device *bd;
> +
> +     /* connector state not initialised with no crtc */
> +     if (!intel_display_device_present(display))
> +             return;
>
>       memset(&props, 0, sizeof(props));
>       props.type = BACKLIGHT_FIRMWARE;
>


Reply via email to