Description of problem: problem found when fedora 16 power management testday when tried suspend and hibernate testcases it caused freeze of machine smolt profile of machine - HP nx6125: http://www.smolts.org/client/show/pub_a5686524-3975-4025-86bc-a3b5e45365a8 machine was suspended, and then try to resume, it works, but after few seconds it freeze at all. Actual results: [ 252.115068] ------------[ cut here ]------------ [ 252.115080] WARNING: at drivers/base/firmware_class.c:537 _request_firmware+0xeb/0x3a4() [ 252.115083] Hardware name: HP Compaq nx6125 (PY421EA#AKB) [ 252.115085] Modules linked in: ppdev parport_pc lp parport fuse fcoe libfcoe libfc scsi_transport_fc 8021q garp scsi_tgt stp llc ip6t_REJECT nf_conntrack_ipv4 nf_conntrack_ipv6 nf_defrag_ipv4 nf_defrag_ipv6 xt_state ip6table_filter nf_conntrack ip6_tables arc4 b43 mac80211 cfg80211 hp_wmi sparse_keymap rfkill joydev serio_raw k8temp tifm_7xx1 tifm_core ssb snd_atiixp yenta_socket snd_atiixp_modem tg3 snd_ac97_codec ac97_bus snd_seq snd_seq_device snd_pcm snd_timer snd soundcore snd_page_alloc i2c_piix4 uinput squashfs vfat fat firewire_ohci firewire_core sdhci_pci sdhci pata_acpi ata_generic mmc_core crc_itu_t pata_atiixp video wmi usb_storage radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: scsi_wait_scan] [ 252.115142] Pid: 1917, comm: pm-suspend Not tainted 3.1.0-0.rc6.git0.3.fc16.i686 #1 [ 252.115145] Call Trace: [ 252.115152] [<c08094f6>] ? printk+0x2d/0x2f [ 252.115159] [<c043cce5>] warn_slowpath_common+0x7c/0x91 [ 252.115163] [<c0671981>] ? _request_firmware+0xeb/0x3a4 [ 252.115166] [<c0671981>] ? _request_firmware+0xeb/0x3a4 [ 252.115170] [<c043cd1c>] warn_slowpath_null+0x22/0x24 [ 252.115174] [<c0671981>] _request_firmware+0xeb/0x3a4 [ 252.115181] [<c0671c59>] request_firmware+0x1f/0x21 [ 252.115200] [<f8265ea2>] b43_do_request_fw+0xb7/0x1bc [b43] [ 252.115218] [<f826605c>] b43_try_request_fw+0xb5/0x317 [b43] [ 252.115234] [<f8266c63>] b43_wireless_core_init+0x1a6/0xf75 [b43] [ 252.115240] [<c04def9c>] ? kfree+0x42/0xdd [ 252.115245] [<c0429e6c>] ? should_resched+0xd/0x27 [ 252.115250] [<c080fbb7>] ? _cond_resched+0xd/0x21 [ 252.115266] [<f8267e84>] b43_op_start+0xe5/0x133 [b43] [ 252.115295] [<f81f2f77>] ieee80211_reconfig+0xe3/0x3d7 [mac80211] [ 252.115300] [<c0810ea2>] ? _raw_read_lock+0xd/0xf [ 252.115304] [<c0722f84>] ? led_trigger_event+0x1c/0x4f [ 252.115327] [<f81eb148>] ieee80211_resume+0x59/0x5b [mac80211] [ 252.115331] [<c081041d>] ? mutex_lock+0x11/0x2a [ 252.115337] [<c075961f>] ? rtnl_lock+0x12/0x14 [ 252.115354] [<f817552c>] wiphy_resume+0x63/0x70 [cfg80211] [ 252.115359] [<c066d8e8>] legacy_resume+0x21/0x4f [ 252.115373] [<f81754c9>] ? wiphy_suspend+0x53/0x53 [cfg80211] [ 252.115378] [<c066da56>] device_resume+0x140/0x190 [ 252.115382] [<c066e3bf>] dpm_resume+0xd1/0x146 [ 252.115386] [<c066e59a>] dpm_resume_end+0x10/0x1a [ 252.115391] [<c046bf7e>] suspend_devices_and_enter+0x1ae/0x1e8 [ 252.115395] [<c046c07c>] enter_state+0xc4/0x113 [ 252.115399] [<c046b787>] state_store+0x98/0xa4 [ 252.115403] [<c046b6ef>] ? pm_trace_dev_match_show+0x16/0x16 [ 252.115408] [<c05c4575>] kobj_attr_store+0x1e/0x23 [ 252.115412] [<c05348c4>] sysfs_write_file+0xc3/0xee [ 252.115418] [<c04ebe06>] vfs_write+0x8f/0xd7 [ 252.115421] [<c0534801>] ? sysfs_open_file+0x1dc/0x1dc [ 252.115425] [<c04ebfc8>] sys_write+0x42/0x63 [ 252.115429] [<c0811144>] syscall_call+0x7/0xb [ 252.115432] ---[ end trace a154ab236151fa5c ]--- [ 252.115436] b43 ssb0:0: firmware: b43/ucode5.fw will not be loaded [ 252.115445] ------------[ cut here ]------------ [ 252.115449] WARNING: at drivers/base/firmware_class.c:537 _request_firmware+0xeb/0x3a4() [ 252.115452] Hardware name: HP Compaq nx6125 (PY421EA#AKB) [ 252.115453] Modules linked in: ppdev parport_pc lp parport fuse fcoe libfcoe libfc scsi_transport_fc 8021q garp scsi_tgt stp llc ip6t_REJECT nf_conntrack_ipv4 nf_conntrack_ipv6 nf_defrag_ipv4 nf_defrag_ipv6 xt_state ip6table_filter nf_conntrack ip6_tables arc4 b43 mac80211 cfg80211 hp_wmi sparse_keymap rfkill joydev serio_raw k8temp tifm_7xx1 tifm_core ssb snd_atiixp yenta_socket snd_atiixp_modem tg3 snd_ac97_codec ac97_bus snd_seq snd_seq_device snd_pcm snd_timer snd soundcore snd_page_alloc i2c_piix4 uinput squashfs vfat fat firewire_ohci firewire_core sdhci_pci sdhci pata_acpi ata_generic mmc_core crc_itu_t pata_atiixp video wmi usb_storage radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: scsi_wait_scan] [ 252.115494] Pid: 1917, comm: pm-suspend Tainted: G W 3.1.0-0.rc6.git0.3.fc16.i686 #1 [ 252.115497] Call Trace: [ 252.115501] [<c08094f6>] ? printk+0x2d/0x2f [ 252.115505] [<c043cce5>] warn_slowpath_common+0x7c/0x91 [ 252.115508] [<c0671981>] ? _request_firmware+0xeb/0x3a4 [ 252.115512] [<c0671981>] ? _request_firmware+0xeb/0x3a4 [ 252.115516] [<c043cd1c>] warn_slowpath_null+0x22/0x24 [ 252.115519] [<c0671981>] _request_firmware+0xeb/0x3a4 [ 252.115524] [<c0671c59>] request_firmware+0x1f/0x21 [ 252.115540] [<f8265ea2>] b43_do_request_fw+0xb7/0x1bc [b43] [ 252.115545] [<c0671351>] ? release_firmware+0x31/0x3f [ 252.115560] [<f8265261>] ? b43_do_release_fw+0x13/0x23 [b43] [ 252.115576] [<f826605c>] b43_try_request_fw+0xb5/0x317 [b43] [ 252.115592] [<f8266c85>] b43_wireless_core_init+0x1c8/0xf75 [b43] [ 252.115596] [<c04def9c>] ? kfree+0x42/0xdd [ 252.115600] [<c0429e6c>] ? should_resched+0xd/0x27 [ 252.115604] [<c080fbb7>] ? _cond_resched+0xd/0x21 [ 252.115619] [<f8267e84>] b43_op_start+0xe5/0x133 [b43] [ 252.115644] [<f81f2f77>] ieee80211_reconfig+0xe3/0x3d7 [mac80211] [ 252.115648] [<c0810ea2>] ? _raw_read_lock+0xd/0xf [ 252.115652] [<c0722f84>] ? led_trigger_event+0x1c/0x4f [ 252.115675] [<f81eb148>] ieee80211_resume+0x59/0x5b [mac80211] [ 252.115679] [<c081041d>] ? mutex_lock+0x11/0x2a [ 252.115683] [<c075961f>] ? rtnl_lock+0x12/0x14 [ 252.115697] [<f817552c>] wiphy_resume+0x63/0x70 [cfg80211] [ 252.115702] [<c066d8e8>] legacy_resume+0x21/0x4f [ 252.115716] [<f81754c9>] ? wiphy_suspend+0x53/0x53 [cfg80211] [ 252.115721] [<c066da56>] device_resume+0x140/0x190 [ 252.115725] [<c066e3bf>] dpm_resume+0xd1/0x146 [ 252.115729] [<c066e59a>] dpm_resume_end+0x10/0x1a [ 252.115733] [<c046bf7e>] suspend_devices_and_enter+0x1ae/0x1e8 [ 252.115737] [<c046c07c>] enter_state+0xc4/0x113 [ 252.115741] [<c046b787>] state_store+0x98/0xa4 [ 252.115744] [<c046b6ef>] ? pm_trace_dev_match_show+0x16/0x16 [ 252.115748] [<c05c4575>] kobj_attr_store+0x1e/0x23 [ 252.115752] [<c05348c4>] sysfs_write_file+0xc3/0xee [ 252.115757] [<c04ebe06>] vfs_write+0x8f/0xd7 [ 252.115760] [<c0534801>] ? sysfs_open_file+0x1dc/0x1dc [ 252.115764] [<c04ebfc8>] sys_write+0x42/0x63 [ 252.115768] [<c0811144>] syscall_call+0x7/0xb [ 252.115771] ---[ end trace a154ab236151fa5d ]--- [ 252.115774] b43 ssb0:0: firmware: b43-open/ucode5.fw will not be loaded [ 252.115778] b43-phy0 ERROR: Firmware file "b43/ucode5.fw" request failed (err=-16) [ 252.115781] b43-phy0 ERROR: Firmware file "b43-open/ucode5.fw" request failed (err=-16) [ 252.115785] b43-phy0 ERROR: You must go to http://wireless.kernel.org/en/users/Drivers/b43#devicefirmware and download the correct firmware for this driver version. Please carefully read all instructions on this website. [ 252.115801] ------------[ cut here ]------------ [ 252.115825] WARNING: at net/mac80211/util.c:1182 ieee80211_reconfig+0x113/0x3d7 [mac80211]() [ 252.115827] Hardware name: HP Compaq nx6125 (PY421EA#AKB) [ 252.115830] Hardware became unavailable upon resume. This could be a software issue prior to suspend or a hardware issue. [ 252.115832] Modules linked in: ppdev parport_pc lp parport fuse fcoe libfcoe libfc scsi_transport_fc 8021q garp scsi_tgt stp llc ip6t_REJECT nf_conntrack_ipv4 nf_conntrack_ipv6 nf_defrag_ipv4 nf_defrag_ipv6 xt_state ip6table_filter nf_conntrack ip6_tables arc4 b43 mac80211 cfg80211 hp_wmi sparse_keymap rfkill joydev serio_raw k8temp tifm_7xx1 tifm_core ssb snd_atiixp yenta_socket snd_atiixp_modem tg3 snd_ac97_codec ac97_bus snd_seq snd_seq_device snd_pcm snd_timer snd soundcore snd_page_alloc i2c_piix4 uinput squashfs vfat fat firewire_ohci firewire_core sdhci_pci sdhci pata_acpi ata_generic mmc_core crc_itu_t pata_atiixp video wmi usb_storage radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: scsi_wait_scan] [ 252.115874] Pid: 1917, comm: pm-suspend Tainted: G W 3.1.0-0.rc6.git0.3.fc16.i686 #1 [ 252.115876] Call Trace: [ 252.115880] [<c043cce5>] warn_slowpath_common+0x7c/0x91 [ 252.115904] [<f81f2fa7>] ? ieee80211_reconfig+0x113/0x3d7 [mac80211] [ 252.115928] [<f81f2fa7>] ? ieee80211_reconfig+0x113/0x3d7 [mac80211] [ 252.115932] [<c043cd85>] warn_slowpath_fmt+0x33/0x35 [ 252.115956] [<f81f2fa7>] ieee80211_reconfig+0x113/0x3d7 [mac80211] [ 252.115979] [<f81eb148>] ieee80211_resume+0x59/0x5b [mac80211] [ 252.115984] [<c081041d>] ? mutex_lock+0x11/0x2a [ 252.115988] [<c075961f>] ? rtnl_lock+0x12/0x14 [ 252.116003] [<f817552c>] wiphy_resume+0x63/0x70 [cfg80211] [ 252.116023] [<c066d8e8>] legacy_resume+0x21/0x4f [ 252.116037] [<f81754c9>] ? wiphy_suspend+0x53/0x53 [cfg80211] [ 252.116042] [<c066da56>] device_resume+0x140/0x190 [ 252.116046] [<c066e3bf>] dpm_resume+0xd1/0x146 [ 252.116050] [<c066e59a>] dpm_resume_end+0x10/0x1a [ 252.116054] [<c046bf7e>] suspend_devices_and_enter+0x1ae/0x1e8 [ 252.116058] [<c046c07c>] enter_state+0xc4/0x113 [ 252.116062] [<c046b787>] state_store+0x98/0xa4 [ 252.116066] [<c046b6ef>] ? pm_trace_dev_match_show+0x16/0x16 [ 252.116070] [<c05c4575>] kobj_attr_store+0x1e/0x23 [ 252.116074] [<c05348c4>] sysfs_write_file+0xc3/0xee [ 252.116078] [<c04ebe06>] vfs_write+0x8f/0xd7 [ 252.116081] [<c0534801>] ? sysfs_open_file+0x1dc/0x1dc [ 252.116085] [<c04ebfc8>] sys_write+0x42/0x63 [ 252.116089] [<c0811144>] syscall_call+0x7/0xb [ 252.116092] ---[ end trace a154ab236151fa5e ]--- [ 252.116107] legacy_resume(): wiphy_resume+0x0/0x70 [cfg80211] returns -2 [ 252.116111] PM: Device phy0 failed to resume: error -2 [ 252.116183] PM: resume of devices complete after 3060.564 msecs [ 252.117249] PM: Finishing wakeup. [ 252.117252] Restarting tasks ... done. [ 252.130556] video LNXVIDEO:00: Restoring backlight state Expected results: no kernel error
Basically what seems to happen here is that on resume the driver goes to load the firmware and the helper isn't enabled yet. Larry Finger has been working on this for various drivers: http://thread.gmane.org/gmane.linux.kernel.wireless.general/84615 http://thread.gmane.org/gmane.linux.kernel.wireless.general/85406/focus=85462 (Adding Larry to CC just for awareness since b43 was one of the drivers)
Created attachment 566430 [details] Test patch for driver b43 to implement asynchronous firmware loading Please test this patch. It has been tested on my system, but my system does not suspend. As a result, I cannot check for your problem.
(At first, I thought Josh say "just for awesomeness"!) Test kernels with the patch from comment 2 are building here: http://koji.fedoraproject.org/koji/taskinfo?taskID=3840252 Please give them a try and post the results here...thanks!
[mass update] kernel-3.3.0-4.fc16 has been pushed to the Fedora 16 stable repository. Please retest with this update.
[Mass hibernate bug update] Dave Airlied has found an issue causing some corruption in the i915 fbdev after a resume from hibernate. I have included his patch in this scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3940545 This will probably not solve all of the issues being tracked at the moment, but it is worth testing when the build completes. If this seems to clear up the issues you see with hibernate, please report your results in the bug.