]> pilppa.com Git - linux-2.6-omap-h63xx.git/commit
iwlwifi: fix oops in iwl3945_led_brightness_set
authorMarcin Slusarz <marcin.slusarz@gmail.com>
Sun, 8 Jun 2008 11:13:06 +0000 (13:13 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 9 Jun 2008 19:53:38 +0000 (15:53 -0400)
commitb6b16196b064bbff83e8161359f8b73465d4aa36
tree856dace79bb6551115fae6fd10c03b8d4ca0a17c
parent585c5434f0e02ff0ffc567ec223af61e2d8e2e88
iwlwifi: fix oops in iwl3945_led_brightness_set

fix race between:
ieee80211_open->ieee80211_led_radio->led_trigger_event->led_set_brightness->iwl3945_led_brightness_set
(which assumes that "led->priv" is not NULL)
and
iwl3945_pci_probe->iwl3945_setup_deferred_work->(...)->iwl3945_bg_alive_start->iwl3945_alive_start->iwl3945_led_register->iwl3945_led_register_led
which sets priv field in struct iwl3945_led
after
led->led_dev.brightness_set = iwl3945_led_brightness_set;
(...)
led_classdev_register(device, &led->led_dev);

http://kerneloops.org/guilty.php?guilty=iwl3945_led_brightness_set&version=2.6.25-release&start=1671168&end=1703935&class=oops

Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: Zhu Yi <yi.zhu@intel.com>
Cc: Reinette Chatre <reinette.chatre@intel.com>
Cc: Tomas Winkler <tomas.winkler@intel.com>
Cc: linux-wireless@vger.kernel.org
Cc: ipw3945-devel@lists.sourceforge.net
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-3945-led.c