On Fri, 2008-05-09 at 08:20 +0400, Oleg Lyashko wrote: > > attempt to load iwl4965 crash laptop: > > # modprobe iwl4965 > BUG: soft lockup - CPU#1 stuck for 11s! [modprobe:14501] > BUG: soft lockup - CPU#1 stuck for 11s! [modprobe:14501] This is fixed here. Please use the attached patch for compat-wireless. http://marc.info/?l=linux-wireless&m=120995431612344&w=2 Thanks, -yi
diff -urp compat-wireless-2008-05-07/drivers/net/wireless/iwlwifi/iwl4965-base.c new/drivers/net/wireless/iwlwifi/iwl4965-base.c --- compat-wireless-2008-05-07/drivers/net/wireless/iwlwifi/iwl4965-base.c 2008-05-07 12:11:10.000000000 +0800 +++ new/drivers/net/wireless/iwlwifi/iwl4965-base.c 2008-05-09 13:18:06.000000000 +0800 @@ -7102,6 +7102,7 @@ static int iwl4965_pci_probe(struct pci_ IWL_DEBUG_INFO("*** LOAD DRIVER ***\n"); priv->cfg = cfg; priv->pci_dev = pdev; + spin_lock_init(&priv->lock); #ifdef CONFIG_IWLWIFI_DEBUG iwl_debug_level = priv->cfg->mod_params->debug; diff -urp compat-wireless-2008-05-07/drivers/net/wireless/iwlwifi/iwl-core.c new/drivers/net/wireless/iwlwifi/iwl-core.c --- compat-wireless-2008-05-07/drivers/net/wireless/iwlwifi/iwl-core.c 2008-05-07 12:11:10.000000000 +0800 +++ new/drivers/net/wireless/iwlwifi/iwl-core.c 2008-05-09 13:16:51.000000000 +0800 @@ -580,7 +580,6 @@ static int iwlcore_init_drv(struct iwl_p priv->retry_rate = 1; priv->ibss_beacon = NULL; - spin_lock_init(&priv->lock); spin_lock_init(&priv->power_data.lock); spin_lock_init(&priv->sta_lock); spin_lock_init(&priv->hcmd_lock);