Hacker News new | ask | show | jobs
by adonig 1219 days ago
Hey @trynewideas! I already tried the i195.enable_psr=0 kernel boot parameter a month ago but it didn't prevent the freezes. Thanks to your input with the i915_edp_psr_status I now found out that the parameter doesn't have any effect on my system. It just doesn't disable PSR. So I tried to regenerate initramfs with dracut, but still got no effect. I then tried to disable PSR via debugfs as root, but for some reason, I can't write to the file:

    [root@fwk ~]# ls -alF /sys/kernel/debug/dri/1/i915_edp_psr_debug
    -rw-r--r--. 1 root root 0 Feb 15 09:09 /sys/kernel/debug/dri/1/i915_edp_psr_debug

    [root@fwk ~]# echo 1 > /sys/kernel/debug/dri/1/i915_edp_psr_debug
    -bash: /sys/kernel/debug/dri/1/i915_edp_psr_debug: Operation not permitted
I'm not sure why I'm unable to write. Do you have to mount debugfs differently to do writes or something like that?

EDIT: debugfs is mounted rw and I tried to disable SELinux temporarily with setenforce 0 but I still can't write.

    [root@fwk ~]# mount | grep  debugfs
    debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime,seclabel)

    [root@fwk ~]# setenforce 0
    [root@fwk ~]# sestatus | grep Current
    Current mode:                   permissive
    [root@fwk ~]# echo 1 > /sys/kernel/debug/dri/1/i915_edp_psr_debug
    -bash: /sys/kernel/debug/dri/1/i915_edp_psr_debug: Operation not permitted
I also got a kernel update today (6.1.11). According to [the changelog](https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.1...) there are a lot of changes regarding the i915 driver but it still freezes on my system.

    Feb 15 09:12:53 fwk kernel: Asynchronous wait on fence 0000:00:02.0:gnome-shell[2332]:1252 timed out (hint:intel_atomic_commit_ready [i915])
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] GPU HANG: ecode 12:0:00000000
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] Resetting chip for stopped heartbeat on rcs0
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] GuC firmware i915/adlp_guc_70.bin version 70.5.1
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] HuC firmware i915/tgl_huc.bin version 7.9.3
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] HuC authenticated
    Feb 15 09:12:57 fwk kernel: i915 0000:00:02.0: [drm] GuC submission enabled
1 comments

You can try setting `i915.enable_psr=0` at boot (the "add i915.enable_psr=0 into your kernel boot parameters" part of the comment I linked to and posted) or set the enable_psr parameter on the i915 kernel module.

The Fedora docs cover setting module parameters.[1] This is how setting the kernel module parameter manifests on my system:

    $ sudo grep -iR i915.enable_psr /etc/modprobe.d
    /etc/modprobe.d/i915.conf:options i915 enable_psr=0

    $ sudo cat /etc/modprobe.d/i915.conf 
    options i915 enable_psr=0
Assuming you use the default GRUB 2 boot loader, the Fedora docs also cover setting the kernel boot parameters.[2]

1: https://docs.fedoraproject.org/en-US/fedora/latest/system-ad...

2: https://docs.fedoraproject.org/en-US/fedora/latest/system-ad...

I'm not sure why it doesn't have an effect on my system. When I add the i915.conf to /etc/modprobe.d/ and reboot my system the PSR is still active:

    [root@fwk ~]# cat /etc/modprobe.d/i915.conf
    options i915 enable_psr=0
    [root@fwk ~]# cat /sys/kernel/debug/dri/1/i915_edp_psr_status
    Sink support: yes [0x03]
    PSR mode: PSR2 enabled
    Source PSR ctl: enabled [0x80000226]
    Source PSR status: SLEEP [0x30000114]
    Busy frontbuffer bits: 0x00000000
    Frame: PSR2 SU blocks:
    0 0
    1 0
    2 0
    3 0
    4 0
    5 0
    6 0
    7 0
It also has no effect when I append i915.enable_psr=0 to GRUB_CMDLINE_LINUX in /etc/default/grub and reboot.
Mine's confirmed disabled, so I'm stumped:

    $ sudo cat /sys/kernel/debug/dri/1/i915_edp_psr_status
    Sink support: yes [0x03]
    PSR mode: disabled
    PSR sink not reliable: no
I'd raise a proper support request[1] with Framework then, who are generally more responsive and thorough with these kinds of problems than most laptop tech support (they put me down this path to start with).

1: https://framework.kustomer.help/contact/support-request-ryon...

May I ask you what security features you have enabled? Mine looks like this:

    [root@fwk ~]# fwupdmgr security
    Host Security ID: HSI:3 (v1.8.10)

    HSI-1
     CSME manufacturing mode:       Locked
     CSME override:                 Locked
     CSME v0:16.0.15.1810:          Valid
     MEI key manifest:              Valid
     Platform debugging:            Disabled
     SPI BIOS region:               Locked
     SPI lock:                      Enabled
     SPI write:                     Disabled
     Supported CPU:                 Valid
     TPM empty PCRs:                Valid
     TPM v2.0:                      Found
     UEFI platform key:             Valid
     UEFI secure boot:              Enabled

    HSI-2
     IOMMU:                         Enabled
     Intel BootGuard:               Enabled
     Intel BootGuard ACM protected: Valid
     Intel BootGuard OTP fuse:      Valid
     Intel BootGuard verified boot: Valid
     Platform debugging:            Locked
     TPM PCR0 reconstruction:       Valid

    HSI-3
     Intel BootGuard error policy:  Valid
     Intel CET Enabled:             Enabled
     Pre-boot DMA protection:       Enabled
     Suspend-to-idle:               Enabled
     Suspend-to-ram:                Disabled

    HSI-4
     Intel SMAP:                    Enabled
     Encrypted RAM:                 Disabled

    Runtime Suffix -!
     Intel CET Active:              Supported
     Linux kernel:                  Untainted
     Linux kernel lockdown:         Enabled
     Linux swap:                    Encrypted
     fwupd plugins:                 Untainted
I was wondering whether maybe one of those (maybe the kernel lockdown) prevents me from switching the PSR mode?