Is PREEMPT_DYNAMIC causing Ubuntu to freeze?

My Ubuntu is freezing (not responding, nothing including mouse/keyboard and desktop shows old time). It happens once/twice a week. The computer is not subjected to heavy load. Instead it is freezing with just a text editor open as well. I have not figured out the actual culprit, though but the logs contain the following error messages:

  • Kernel Log
    $ dmesg -T
    ...
    ...
    ...
    [Fri May 19 13:50:42 2023] ACPI Error: Aborting method \_SB.PC00.PEG1.PEGP._DSM due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
    [Fri May 19 13:50:42 2023] ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.PEG1.PEGP._DSM.USRG], AE_ALREADY_EXISTS (20220331/dsfield-184)
    [Fri May 19 13:50:42 2023] ACPI Error: AE_ALREADY_EXISTS, CreateBufferField failure (20220331/dswload2-477)
    
    [Fri May 19 13:50:42 2023] No Local Variables are initialized for Method [_DSM]
    
    [Fri May 19 13:50:42 2023] Initialized Arguments for Method [_DSM]:  (4 arguments defined for method invocation)
    [Fri May 19 13:50:42 2023]   Arg0:   00000000ed5b63f3 <Obj>           Buffer(16) 75 0B A5 D4 C7 65 F7 46
    [Fri May 19 13:50:42 2023]   Arg1:   000000009f563d37 <Obj>           Integer 0000000000000102
    [Fri May 19 13:50:42 2023]   Arg2:   00000000aa83d0d2 <Obj>           Integer 0000000000000010
    [Fri May 19 13:50:42 2023]   Arg3:   00000000e5707ac8 <Obj>           Buffer(4) 00 00 50 4F
    ...
    ...
    ...
    
  • Sys Log
    $ grep -i error /var/log//syslog.1 
    Jun 18 01:48:49 asus google-chrome.desktop[5778]: [5771:5802:0618/014849.027835:ERROR:connection_factory_impl.cc(471)] ConnectionHandler failed with net error: -2
    Jun 18 02:26:57 asus systemd[1]: Starting Process error reports when automatic reporting is enabled...
    Jun 18 02:26:57 asus whoopsie-upload-all[199055]: ERROR: whoopsie.path is not enabled
    Jun 18 02:26:57 asus systemd[1]: Failed to start Process error reports when automatic reporting is enabled.
    Jun 18 05:27:03 asus systemd[1]: Starting Process error reports when automatic reporting is enabled...
    Jun 18 17:27:56 asus systemd[1]: Failed to start Process error reports when automatic reporting is enabled.
    Jun 18 18:51:30 asus gnome-shell[2414]: JS ERROR: Failed to initialize fprintd service: Gio.IOErrorEnum: GDBus.Error:net.reactivated.Fprint.Error.NoSuchDevice: No devices available#012asyncCallback@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:114:23
    Jun 18 19:24:04 asus google-chrome.desktop[5778]: [5817:5824:0618/192404.953353:ERROR:ssl_client_socket_impl.cc(978)] handshake failed; returned -1, SSL error code 1, net_error -200
    Jun 18 19:24:14 asus google-chrome.desktop[5778]: [5817:5824:0618/192414.020800:ERROR:ssl_client_socket_impl.cc(978)] handshake failed; returned -1, SSL error code 1, net_error -200
    Jun 18 19:24:22 asus google-chrome.desktop[5778]: [5771:5797:0618/192422.543421:ERROR:cert_issuer_source_aia.cc(34)] Error parsing cert retrieved from AIA (as DER):
    Jun 18 19:24:22 asus google-chrome.desktop[5778]: ERROR: Couldn't read tbsCertificate as SEQUENCE
    Jun 18 19:24:22 asus google-chrome.desktop[5778]: ERROR: Failed parsing Certificate
    ...
    Jun 18 22:18:21 asus systemd[1]: Stopped Process error reports when automatic reporting is enabled (timer based).
    Jun 19 09:13:16 asus systemd[1]: Started Process error reports when automatic reporting is enabled (timer based).
    Jun 19 09:13:16 asus kernel: [    0.683569] RAS: Correctable Errors collector initialized.
    Jun 19 09:13:16 asus systemd[1]: Starting Process error reports when automatic reporting is enabled...
    Jun 19 09:13:16 asus whoopsie-upload-all[1192]: ERROR: whoopsie.path is not enabled
    Jun 19 09:13:16 asus systemd[1]: Failed to start Process error reports when automatic reporting is enabled.
    Jun 19 09:13:16 asus systemd-xdg-autostart-generator[1353]: Not generating service for XDG autostart app-xiccd@autostart.service, error parsing Exec= line: No such file or directory
    Jun 19 09:13:16 asus /usr/libexec/gdm-x-session[1380]: #011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    Jun 19 09:13:16 asus kernel: [    3.916389] ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.PEG1.PEGP._DSM.USRG], AE_ALREADY_EXISTS (20220331/dsfield-184)
    Jun 19 09:13:16 asus kernel: [    3.916394] ACPI Error: AE_ALREADY_EXISTS, CreateBufferField failure (20220331/dswload2-477)
    Jun 19 09:13:16 asus kernel: [    3.916408] ACPI Error: Aborting method \_SB.PC00.PEG1.PEGP._DSM due to previous error (AE_ALREADY_EXISTS) (20220331/psparse-529)
    Jun 19 09:13:16 asus kernel: [    3.916522] ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.PEG1.PEGP._DSM.USRG], AE_ALREADY_EXISTS (20220331/dsfield-184)
    Jun 19 09:13:16 asus kernel: [    3.916524] ACPI Error: AE_ALREADY_EXISTS, CreateBufferField failure (20220331/dswload2-477)
    

Based on the Google search, the AE_ALREADY_EXISTS error is reported in the case of an old graphics driver. However, I am using new drivers in my Ubuntu. Please see below:

  • NVIDIA utility

    $ nvidia-smi 
    Wed Jun 28 21:32:12 2023       
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  NVIDIA GeForce ...  On   | 00000000:01:00.0  On |                  N/A |
    |  0%   44C    P8    28W / 350W |   1098MiB / 24576MiB |     10%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
                                                                                   
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A      2128      G   /usr/lib/xorg/Xorg                322MiB |
    |    0   N/A  N/A      2262      G   /usr/bin/gnome-shell              105MiB |
    |    0   N/A  N/A      3795    C+G   ...014929417265448424,262144      620MiB |
    |    0   N/A  N/A      6567      G   ...RendererForSitePerProcess       46MiB |
    +-----------------------------------------------------------------------------+
    
  • Cuda compiler

    $ nvcc --version
    nvcc: NVIDIA (R) Cuda compiler driver
    Copyright (c) 2005-2022 NVIDIA Corporation
    Built on Wed_Jun__8_16:49:14_PDT_2022
    Cuda compilation tools, release 11.7, V11.7.99
    Build cuda_11.7.r11.7/compiler.31442593_0
    
  • GPU name

    $ nvidia-smi --query-gpu=name --format=csv,noheader
    NVIDIA GeForce RTX 3090
    

Surprisingly, the OS is using PREEMPT_DYNAMIC instead of SMP . However, I did not perform any kernel customization. Thus I expect it to be the default in Ubuntu, i.e., SMP . See below, please:

  • Kernel info

    $ uname -a
    Linux asus 5.19.0-45-generic #46~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Jun 7 15:06:04 UTC 20 x86_64 x86_64 x86_64 GNU/Linux
    
  • OS info

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID:	Ubuntu
    Description:	Ubuntu 22.04.2 LTS
    Release:	22.04
    Codename:	jammy
    
  • GCC info

    $ gcc --version
    gcc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0
    Copyright (C) 2021 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    

I am looking for suggestions to prevent my Ubuntu from freezing. I am wondering if the PREEMPT_DYNAMIC setting could be the cause of the issue. The question is cross-posted at askubuntu.com. My apologies for the inconvenience.

@amrits

Sorry for the trouble. But do you have any advice to debug this issue? I made it dual boot and Windows is working fine. I guess it is the driver issue (maybe NVidia) in Ubuntu. I would like to hear you suggestions, please.

I am also dueling with this problem on popOS. Same style of freeze. Seems the problem is related to this thread:

In this thread some people mention “Just to follow up my previous post I have been running the older problematic driver 460.39 with 5.10 kernel compiled with preemption disabled and not had the crash once with almost 7 days uptime, doing the same activity as was causing crash every day.”

I haven’t tried doing this yet but I hope it helps you. I’ll be following this thread in case someone answers. I can also provide debug info.

@dan.fujita

Thank you so much for shring the link. I am looking into it.

Thank you again.

1 Like