Bug 1027478

Summary: Systemd is stuck in loop when reading possibly wrong acpi FPDT
Product: [Fedora] Fedora Reporter: Pavel Holica <pholica>
Component: systemdAssignee: systemd-maint
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: high    
Version: 20CC: johannbg, lnykryn, msekleta, plautrba, systemd-maint, vpavlin, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: systemd-208-6.fc20 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1029346 (view as bug list) Environment:
Last Closed: 2013-11-24 23:49:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
/sys/firmware/acpi/tables/FPDT taken from system
none
proposed patch none

Description Pavel Holica 2013-11-06 22:30:17 UTC
Created attachment 820773 [details]
/sys/firmware/acpi/tables/FPDT taken from system

Description of problem:
I've upgraded to systemd-208-4 (together with Fedora 20) on my Acer Aspire One D270 netbook and suffered stuck during boot after systemd launched (in initramfs).
I've tried acpi=off and system booted. After code investigation I found that acpi_get_boot_usec in src/shared/acpi-fpdt.c is stuck in loop if rec->length is zero.

Version-Release number of selected component (if applicable):
systemd-208-4

How reproducible:
always

Steps to Reproduce:
1. read FPDT in attachment using acpi_get_boot_usec function

Actual results:
function is stuck in loop

Expected results:
function returns -EINVAL or something else, but doesn't loop

Additional info:
I have current BIOS for system.

Comment 1 Pavel Holica 2013-11-06 22:32:11 UTC
Created attachment 820774 [details]
proposed patch

Here is patch that I've tested on my system. This change doesn't have any effect on correct sizes.

Comment 2 Zbigniew Jędrzejewski-Szmek 2013-11-07 06:25:30 UTC
Applied in http://cgit.freedesktop.org/systemd/systemd/commit/?id=f8f8193.

Comment 3 Fedora Update System 2013-11-20 04:55:19 UTC
systemd-208-6.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/systemd-208-6.fc20

Comment 4 Fedora Update System 2013-11-24 03:33:34 UTC
Package systemd-208-6.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing systemd-208-6.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-21935/systemd-208-6.fc20
then log in and leave karma (feedback).

Comment 5 Fedora Update System 2013-11-24 23:49:16 UTC
systemd-208-6.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.