Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i7-8665U: Linux often freezes at beginning of start when on battery #48

Open
paulmenzel opened this issue Nov 24, 2020 · 17 comments
Open

Comments

@paulmenzel
Copy link

(No idea, if related to #35, so I split it out.)

On a Dell Precision 3540/0M14W7, BIOS 1.9.1 07/06/2020, being on battery (power cable not plugged in) Linux often freezes when loaded from GRUB. GRUB’s loading initrd status message is the last thing visible. The LUKS passphrase dialog does not appear.

In our case, plugging in the power cable or starting with maxcpus=1 fixes the issue. But starting with maxcpus=1, and bringing CPUs online in GNU/Linux still sometimes causes freezes after one or two CPUs.

$ lscpu
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   39 bits physical, 48 bits virtual
CPU(s):                          8
On-line CPU(s) list:             0-7
Thread(s) per core:              2
Core(s) per socket:              4
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       GenuineIntel
CPU family:                      6
Model:                           142
Model name:                      Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz
Stepping:                        12
CPU MHz:                         998.859
CPU max MHz:                     4800.0000
CPU min MHz:                     400.0000
BogoMIPS:                        4199.88
Virtualization:                  VT-x
L1d cache:                       128 KiB
L1i cache:                       128 KiB
L2 cache:                        1 MiB
L3 cache:                        8 MiB
NUMA node0 CPU(s):               0-7
Vulnerability Itlb multihit:     KVM: Mitigation: VMX disabled
Vulnerability L1tf:              Not affected
Vulnerability Mds:               Not affected
Vulnerability Meltdown:          Not affected
Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:        Mitigation; Enhanced IBRS, IBPB conditional, RSB filling
Vulnerability Srbds:             Mitigation; TSX disabled
Vulnerability Tsx async abort:   Mitigation; TSX disabled
Flags:                           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm p
                                 be syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aper
                                 fmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic mo
                                 vbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd
                                  ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 e
                                 rms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_no
                                 tify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities

Unforutnately, no new microcode updates are shipped in the latest Intel release, intel-microcode 3.20201110.1, so it’d be great if after several months this was looked at.

@paulmenzel
Copy link
Author

This happens with microcode: sig=0x806ec, pf=0x80, revision=0xd6 and revision 0xde (already applied in firmware).

@whpenner
Copy link

whpenner commented Jun 9, 2021

Is this still an issue?

@AnotherSoul
Copy link

AnotherSoul commented Aug 18, 2021

Hello I am in the same situation and this is still an issue. It sometimes even hangs the same way when plugged, but it's systematic on battery.
Dell Latitude 7400 for me, with i7-8665U CPU, on Arch, with microcode package version 20210608-1.

Architecture :                              x86_64
  Mode(s) opératoire(s) des processeurs :   32-bit, 64-bit
  Tailles des adresses:                     39 bits physical, 48 bits virtual
  Boutisme :                                Little Endian
Processeur(s) :                             8
  Liste de processeur(s) en ligne :         0-7
Identifiant constructeur :                  GenuineIntel
  Nom de modèle :                           Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz
    Famille de processeur :                 6
    Modèle :                                142
    Thread(s) par cœur :                    2
    Cœur(s) par socket :                    4
    Socket(s) :                             1
    Révision :                              12
    Vitesse maximale du processeur en MHz : 4800,0000
    Vitesse minimale du processeur en MHz : 400,0000
    BogoMIPS :                              4201.88
    Drapeaux :                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp 
                                            lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2
                                             ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid
                                            _fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 
                                            erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp 
                                            md_clear flush_l1d arch_capabilities
Fonctionnalités de virtualisation :         
  Virtualisation :                          VT-x
Caches (somme de toutes) :                  
  L1d :                                     128 KiB (4 instances)
  L1i :                                     128 KiB (4 instances)
  L2 :                                      1 MiB (4 instances)
  L3 :                                      8 MiB (1 instance)
NUMA :                                      
  Nœud(s) NUMA :                            1
  Nœud NUMA 0 de processeur(s) :            0-7
Vulnérabilités :                            
  Itlb multihit :                           KVM: Mitigation: VMX disabled
  L1tf :                                    Not affected
  Mds :                                     Not affected
  Meltdown :                                Not affected
  Spec store bypass :                       Mitigation; Speculative Store Bypass disabled via prctl and seccomp
  Spectre v1 :                              Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  Spectre v2 :                              Mitigation; Enhanced IBRS, IBPB conditional, RSB filling
  Srbds :                                   Mitigation; TSX disabled
  Tsx async abort :                         Mitigation; TSX disabled

Regards

@paulmenzel
Copy link
Author

Hello I am in the same situation and this is still an issue. It sometimes even hangs the same way when plugged, but it's systematic on battery.

Hmm, if it freezes, while being plugged to the power grid, it might be a different issue.

Dell Latitude 7400 for me, with i7-8665U CPU, on Arch, with microcode package version 20210608-1.

For completeness, please tell us your firmware version (sudo dmesg | grep DMI:).

@AnotherSoul
Copy link

AnotherSoul commented Aug 18, 2021

Here's the result:
[ 0.000000] DMI: Dell Inc. Latitude 7400/07WDVW, BIOS 1.7.4 05/11/2020

(I also added lscpu on my previous post)

There are three different situations:

  • Unplugged: always freeze until I remove the ucode img from Grub or start in fallback
  • Plugged with regular cord: regularly freezes, especially on first boot (usually boots after hard off-on)
  • Plugged through Dell dock: freezes when it was not on the base before; boots well if I keep it on the base from one boot to another
    (Those are only empirical observations, they might not be accurate, what's sure is that it hangs at boot all the time when on battery, and sometimes when plugged in)

I've had this laptop for almost one year now, running on Arch, and as long as I remember the issue was always there.

@AnotherSoul
Copy link

AnotherSoul commented Aug 18, 2021

I see there's a way more recent BIOS for the laptop, I'll try upgrading - it's just almost impossible on Linux, Windows is needed x_x

@BachoSeven
Copy link

@LeBlondTenebreux I mean, you usually can just easily flash updated BIOS versions from an USB drive through an interface contained in the BIOS

@AnotherSoul
Copy link

@LeBlondTenebreux I mean, you usually can just easily flash updated BIOS versions from an USB drive through an interface contained in the BIOS

Yes, I just discovered that the UEFI BIOS updater is able to deal with .exe :) It's on its way :)

@paulmenzel
Copy link
Author

LVFS with fwupd is well supported for Dell devices.

$ fwupdmgr refresh
$ fwupdmgr update

@paulmenzel
Copy link
Author

(Or use the software application in your desktop environment like GNOME Software.)

@AnotherSoul
Copy link

Well upgrading BIOS seems to have solved my issue. Thank you very much (ans sorry for taking so much time).

@paulmenzel
Copy link
Author

For posterity, please tell us what version you updated to.

@AnotherSoul
Copy link

Sure!
Version 1.13.0 (30/07/2021)

@hmh
Copy link

hmh commented Aug 19, 2021

And which version is the ucode in that BIOS? "journalctl -kb | head" should tell you if Linux updated the microcode or not (it would be in the first line), and "cat /proc/cpuinfo | grep microcode" would tell you the current microcode.

@AnotherSoul
Copy link

Here's journalctl -kb | head

-- Journal begins at Tue 2020-09-15 12:24:51 CEST, ends at Mon 2021-08-23 08:50:22 CEST. --
août 23 08:43:28 info-dev-portable kernel: Linux version 5.13.10-arch1-1 (linux@archlinux) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 SMP PREEMPT Thu, 12 Aug 2021 21:59:14 +0000
août 23 08:43:28 info-dev-portable kernel: Command line: BOOT_IMAGE=/EFI/arch/vmlinuz-linux root=UUID=59e2eade-c94e-44fc-848d-68ecde0312ce rw loglevel=3 quiet
août 23 08:43:28 info-dev-portable kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
août 23 08:43:28 info-dev-portable kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
août 23 08:43:28 info-dev-portable kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
août 23 08:43:28 info-dev-portable kernel: x86/fpu: Supporting XSAVE feature 0x008: 'MPX bounds registers'
août 23 08:43:28 info-dev-portable kernel: x86/fpu: Supporting XSAVE feature 0x010: 'MPX CSR'
août 23 08:43:28 info-dev-portable kernel: x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
août 23 08:43:28 info-dev-portable kernel: x86/fpu: xstate_offset[3]:  832, xstate_sizes[3]:   64

and cat /proc/cpuinfo | grep microcode

microcode	: 0xea
microcode	: 0xea
microcode	: 0xea
microcode	: 0xea
microcode	: 0xea
microcode	: 0xea
microcode	: 0xea
microcode	: 0xea

@AnotherSoul
Copy link

I assume journalctl -k --grep=microcode will also give pertinent information :

-- Journal begins at Tue 2020-09-15 12:24:51 CEST, ends at Mon 2021-08-23 14:21:46 CEST. --
août 23 08:43:28 info-dev-portable kernel: microcode: sig=0x806ec, pf=0x80, revision=0xea
août 23 08:43:28 info-dev-portable kernel: microcode: Microcode Update Driver: v2.2.

@hmh
Copy link

hmh commented Aug 23, 2021

@LeBlondTenebreux Yeah, it does. Your new firmware has the lastest microcode, so it basically sidesteps the whole issue since no Linux-provided microcode update takes place...

Thank you for the report!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants