FS#42509 - [linux] 3.17.1-1 rtc-efi module can freeze the system on faulty EFIs

Attached to Project: Arch Linux
Opened by Marco Cilloni (mcilloni) - Thursday, 23 October 2014, 11:53 GMT
Last edited by Tobias Powalowski (tpowa) - Monday, 17 November 2014, 08:56 GMT
Task Type Bug Report
Category Kernel
Status Closed
Assigned To Tobias Powalowski (tpowa)
Thomas Bächler (brain0)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

rtc-efi has been introduced in linux 3.17.1, and, on some hardware configurations like my Asus N56VZ laptop it can freeze the whole machine.

After 20/30 seconds from boot, the kernel log starts to get filled by traces involvin "virt_efi_get_time".

This only happens the first time you boot on the machine; after booting a non affected os (like linux-lts kernel or windows) a reboot into linux 3.17.1 triggers no issue and rtc-efi loads correctly.

Blacklisting rtc-efi fixes the issue; RTC is still available via rtc0 (the CMOS RTC driver)

Additional info:
* package version(s): 3.17.1
* hardware: ASUS N56VZ, last microcode, last firmware available (r217), Intel i7 3610QM

Steps to reproduce:
1. Plug the powercord, turn on the machine then boot linux 3.17.1
2. Wait for boot, the kernel log is soon filled by rtc-efi failures
3. Use the system; processes will start to hang until freezing the whole system, forcing an hard reset.

I've also attached the kernel log extracted from journald.
This task depends upon

Closed by  Tobias Powalowski (tpowa)
Monday, 17 November 2014, 08:56 GMT
Reason for closing:  Fixed
Additional comments about closing:  on trunk
Comment by Phil Puryear (philpuryear) - Friday, 24 October 2014, 02:36 GMT
This module causes kernel faults on my system as well. Turns out it was never intended to be enabled for X86 due to the prevalence of buggy EFI implementations. This has already been corrected upstream (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=7efe665903d0d963b0ebf4cab25cc3ae32c62600).
Comment by Anatol Pomozov (anatolik) - Friday, 14 November 2014, 05:49 GMT
Maillist mentions possible fix for the problem https://lkml.org/lkml/2014/11/1/238
Comment by Marco Cilloni (mcilloni) - Friday, 14 November 2014, 08:47 GMT
But, do we need a fix? My opinion is that the best thing to do is to disable it, every device out there has a working CMOS RTC and I can't sincerely see any advantage in having a second (buggy) one enabled. It's not like something's not going to work without this.
Comment by Anatol Pomozov (anatolik) - Friday, 14 November 2014, 15:58 GMT
Yeah, I also +1 for disabling it - upstream accepted 7efe665903d already. I just pointed to a maillist discussion with other possible fix.

Loading...