Hi Am 15.10.21 um 01:28 schrieb bugzilla-daemon@xxxxxxxxxxxxxxxxxxx:
https://bugzilla.kernel.org/show_bug.cgi?id=214725 Bug ID: 214725 Summary: simpledrm and i915 both active after boot Product: Drivers Version: 2.5 Kernel Version: 5.14.11 Hardware: All OS: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: Video(DRI - non Intel) Assignee: drivers_video-dri@xxxxxxxxxxxxxxxxxxxx Reporter: dennis.lissov@xxxxxxxxx Regression: No Gentoo Linux, custom kernel build, 5.14.11 with CONFIG_DRM_SIMPLEDRM=y CONFIG_DRM_I915=y Plasma (wayland) sees two monitors: the laptop screen and an unknown one. The only monitor physically present is the laptop screen. This did not happen a few months ago (possibly started with 5.14 upgrade). $ ls /sys/class/drm/ card0 card0-eDP-1 card1 card1-Unknown-1 card2 card2-DP-1 card2-DP-2 card2-DP-3 renderD128 renderD129 version $ readlink /sys/class/drm/card0 # Intel GPU ../../devices/pci0000:00/0000:00:02.0/drm/card0 $ readlink /sys/class/drm/card1 # Simple DRM ../../devices/platform/simple-framebuffer.0/drm/card1 $ readlink /sys/class/drm/card2 # Nouveau (not used at the moment) ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card2 $ dmesg | egrep '(simple|i915)' [ 0.000000] Command line: BOOT_IMAGE=/kernel-5.14.11 root=[...] ro acpi_backlight=video resume=[...] i915.enable_gvt=1 quiet [ 0.060342] Kernel command line: BOOT_IMAGE=/kernel-5.14.11 root=[...] ro acpi_backlight=video resume=[...] i915.enable_gvt=1 quiet [ 1.076957] i915 0000:00:02.0: [drm] VT-d active for gfx access [ 1.076961] i915 0000:00:02.0: vgaarb: deactivate vga console [ 1.387359] i915 0000:00:02.0: Direct firmware load for i915/gvt/vid_0x8086_did_0x191b_rid_0x06.golden_hw_state failed with error -2 [ 1.404418] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem [ 1.404525] i915 0000:00:02.0: [drm] Disabling framebuffer compression (FBC) to prevent screen flicker with VT-d enabled [ 1.404931] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27) [ 1.422128] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0 [ 1.425127] [drm] Initialized simpledrm 1.0.0 20200625 for simple-framebuffer.0 on minor 1 [ 1.437859] simple-framebuffer simple-framebuffer.0: [drm] fb0: simpledrm frame buffer device [ 1.438058] fbcon: i915 (fb1) is primary device [ 2.579133] i915 0000:00:02.0: [drm] fb1: i915 frame buffer device [ 22.162612] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops) [ 52.106084] simple-framebuffer simple-framebuffer.0: swiotlb buffer is full (sz: 8388608 bytes), total 32768 (slots), used 0 (slots) Looks like the hand-over mechanism does not correctly handle this combination, possibly due to i915 loading before simpledrm.
Interesting. There are two workarounds: * build every driver except simpledrm as module, or * don't build simpledrm on yur system (it's Gentoo)I don't think that linking all driver into the kernel worked before simpledrm. Before simpledrm there would be simplefb, efifb or vesafb. Those drivers use a similar handover scheme, which would have failed in a similar way.
Best regards Thomas -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Ivo Totev
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature