Bug 679452

Summary: WARNING: at fs/proc/generic.c:586 proc_register+0x155/0x192()
Product: [Fedora] Fedora Reporter: Jaroslav Reznik <jreznik>
Component: kernelAssignee: John Feeney <jfeeney>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: adrien-xx-redhatbz, gansalmon, itamar, jonathan, kernel-maint, madhu.chinakonda
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-09-27 13:47:07 UTC Type: ---
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
acpidump output
none
Generate unique names for ACPI buttons none

Description Jaroslav Reznik 2011-02-22 15:41:11 UTC
Description of problem: kernel oops while booting Lenovo Ideapad S10-3t

[    0.875123] ACPI: Deprecated procfs I/F for AC is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared
[    0.885145] ACPI: AC Adapter [ACAD] (on-line)
[    0.885472] input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0A08:00/PNP0C0C:00/input/input0
[    0.885483] ACPI: Power Button [PWRB]
[    0.885657] input: Lid Switch as /devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input1
[    0.900186] ACPI: Lid Switch [LID]
[    0.900229] ------------[ cut here ]------------
[    0.900246] WARNING: at fs/proc/generic.c:586 proc_register+0x155/0x192()
[    0.900254] Hardware name: 20040M18        
[    0.900261] proc_dir_entry 'power/PWRB' already registered
[    0.900267] Modules linked in:
[    0.900278] Pid: 1, comm: swapper Not tainted 2.6.38-0.rc5.git1.1.fc15.x86_64 #1
[    0.900285] Call Trace:
[    0.900301]  [<ffffffff8105538e>] ? warn_slowpath_common+0x83/0x9b
[    0.900314]  [<ffffffff81055449>] ? warn_slowpath_fmt+0x46/0x48
[    0.900325]  [<ffffffff8116ff0e>] ? proc_register+0x155/0x192
[    0.900334]  [<ffffffff81170629>] ? proc_mkdir_mode+0x3f/0x57
[    0.900343]  [<ffffffff81170657>] ? proc_mkdir+0x16/0x18
[    0.900352]  [<ffffffff8129a5a2>] ? acpi_button_add+0x228/0x3e1
[    0.900362]  [<ffffffff8127754e>] ? acpi_device_probe+0x4e/0x11c
[    0.900372]  [<ffffffff812e2e01>] ? driver_probe_device+0x124/0x1ff
[    0.900380]  [<ffffffff812e2f36>] ? __driver_attach+0x5a/0x7e
[    0.900388]  [<ffffffff812e2edc>] ? __driver_attach+0x0/0x7e
[    0.900396]  [<ffffffff812e1e5d>] ? bus_for_each_dev+0x53/0x87
[    0.900404]  [<ffffffff812e2a0e>] ? driver_attach+0x1e/0x20
[    0.900411]  [<ffffffff812e2623>] ? bus_add_driver+0xe2/0x235
[    0.900421]  [<ffffffff81b8cdfe>] ? acpi_button_init+0x0/0x56
[    0.900429]  [<ffffffff812e311f>] ? driver_register+0x98/0x105
[    0.900436]  [<ffffffff81b8cdfe>] ? acpi_button_init+0x0/0x56
[    0.900445]  [<ffffffff81277d14>] ? acpi_bus_register_driver+0x43/0x45
[    0.900452]  [<ffffffff81b8ce32>] ? acpi_button_init+0x34/0x56
[    0.900462]  [<ffffffff810020a4>] ? do_one_initcall+0x7f/0x137
[    0.900471]  [<ffffffff81b57e88>] ? kernel_init+0x228/0x2a2
[    0.900480]  [<ffffffff8100a9e4>] ? kernel_thread_helper+0x4/0x10
[    0.900489]  [<ffffffff81b57c60>] ? kernel_init+0x0/0x2a2
[    0.900496]  [<ffffffff8100a9e0>] ? kernel_thread_helper+0x0/0x10
[    0.900512] ---[ end trace e93713a9d40cd06c ]---
[    0.900666] input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:01/input/input2
[    0.900677] ACPI: Power Button [PWRB]
[    0.900856] input: Sleep Button as /devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input3
[    0.900866] ACPI: Sleep Button [SLPB]
[    0.901061] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input4
[    0.901071] ACPI: Power Button [PWRF]
[    0.901429] ACPI: acpi_idle yielding to intel_idle
[    0.930101] thermal LNXTHERM:00: registered as thermal_zone0
[    0.930108] ACPI: Thermal Zone [TZ01] (36 C)


How reproducible:
Everytime

  
Actual results:
Kerneloop

Expected results:
No crash, no abrt warning

Additional info: feel free to ask for any additional info!

Comment 1 Matthew Garrett 2011-02-24 19:15:55 UTC
Awesome. Your DSDT appears to define two power buttons. Can you install pmtools, run acpidump as root and attach the output?

Comment 2 Jaroslav Reznik 2011-02-25 12:33:09 UTC
Created attachment 480980 [details]
acpidump output

Comment 3 Matthew Garrett 2011-02-25 15:34:32 UTC
Your ACPI tables are technically correct but practically pathological. I'll figure out a workaround.

Comment 4 Matthew Garrett 2011-02-25 15:47:29 UTC
Created attachment 481022 [details]
Generate unique names for ACPI buttons

Can you test this patch?

Comment 5 Jaroslav Reznik 2011-02-28 16:46:47 UTC
Kernel now exports PWRB, PWRB_1 and PWRF_2 (shouldn't be now PWRF?), no oops.

Comment 6 Matthew Garrett 2011-03-11 20:41:32 UTC
That's odd, I can't find any sign of PWRF in your DSDT. But I'll pass this upstream anyway, since it seems like a good idea.

Comment 7 Josh Boyer 2011-09-27 13:47:07 UTC
Matthew sent this upstream, but they chose to remove this code instead.  See:

http://comments.gmane.org/gmane.linux.acpi.devel/49592

The commit to remove the code was in the 2.6.39 kernel, so we should have that in the latest F15 updates which are 3.0 based.  If you are still seeing problems, please reopen.

Comment 8 Josh Boyer 2011-09-27 16:22:07 UTC
*** Bug 722848 has been marked as a duplicate of this bug. ***