Return-path: Received: from mail.redfish-solutions.com ([66.232.79.143]:58352 "EHLO mail.redfish-solutions.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753392AbZHFB7S (ORCPT ); Wed, 5 Aug 2009 21:59:18 -0400 Message-ID: <4A7A38CC.7050600@redfish-solutions.com> Date: Wed, 05 Aug 2009 18:58:36 -0700 From: "Philip A. Prindeville" MIME-Version: 1.0 To: Bob Copeland CC: Michael Buesch , Johannes Berg , jirislaby@gmail.com, mickflemm@gmail.com, lrodriguez@atheros.com, wireless Subject: Re: Ath5k/mac80211 triggers WARN_ON in kernel/softirq.c References: <200907301631.50780.mb@bu3sch.de> <4A73745F.6040709@redfish-solutions.com> In-Reply-To: <4A73745F.6040709@redfish-solutions.com> Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-wireless-owner@vger.kernel.org List-ID: Philip A. Prindeville wrote: > Bob Copeland wrote: > >> On Thu, Jul 30, 2009 at 10:31 AM, Michael Buesch wrote: >> >> >>> Ath5k from today's compat-wireless triggers the following WARNing >>> on hostapd startup. >>> [ 1669.799870] ------------[ cut here ]------------ >>> [ 1669.799934] WARNING: at kernel/softirq.c:141 local_bh_enable_ip+0x8b/0xb0() >>> >>> >> because ath5k calls ieee80211_beacon_get inside a spin_lock_irqsave() >> and this is WARN_ON_ONCE(in_irq() || irqs_disabled). >> >> >> >>> [ 1669.799982] Hardware name: >>> [ 1669.800023] Modules linked in: ath5k mac80211 ath cfg80211 >>> [ 1669.800192] Pid: 24862, comm: hostapd Not tainted 2.6.30.2 #3 >>> [ 1669.800238] Call Trace: >>> [ 1669.800287] [] ? local_bh_enable_ip+0x8b/0xb0 >>> [ 1669.800340] [] warn_slowpath_common+0x78/0xd0 >>> [ 1669.800391] [] warn_slowpath_null+0xf/0x20 >>> [ 1669.800441] [] local_bh_enable_ip+0x8b/0xb0 >>> [ 1669.800493] [] _spin_unlock_bh+0xf/0x20 >>> [ 1669.800564] [] ieee80211_beacon_get+0x2c2/0x2d0 [mac80211] >>> >>> >> I guess this is the first victim of spin_lock_bh conversion? >> >> >> > > I just booted with compat-wireless-2009-07-30 built against 2.6.27.26 > and am also seeing: > > ------------[ cut here ]------------ > WARNING: at kernel/softirq.c:136 _local_bh_enable_ip+0x2f/0x7c() > Modules linked in: lm90 hwmon scx200_acb i2c_core bridge stp llc dummy ath5k mac80211 ath cfg80211 rfkill_backport dahdi_dummy dahdi sha512_generic sha256_generic deflate zlib_deflate arc4 ecb sha1_generic blowfish des_generic cbc cryptosoft cryptodev(P) ocf(P) geodewdt geode_rng geode_aes crypto_blkcipher via_rhine rtc > Pid: 1615, comm: hostapd Tainted: P 2.6.27.26-astlinux #1 > [] warn_on_slowpath+0x40/0x63 > [] hrtimer_forward+0xe2/0xfe > [] rb_insert_color+0x8c/0xad > [] enqueue_hrtimer+0xc8/0xd3 > [] calc_delta_fair+0x16/0x24 > [] __alloc_skb+0x4b/0x108 > [] ieee80211_beacon_add_tim+0x4f/0x111 [mac80211] > [] _local_bh_enable_ip+0x2f/0x7c > [] ieee80211_beacon_get+0xe9/0x262 [mac80211] > [] ath5k_beacon_update+0x2b/0x1a5 [ath5k] > [] schedule_timeout+0x13/0x8f > [] ath5k_bss_info_changed+0x118/0x16e [ath5k] > [] ath5k_bss_info_changed+0x0/0x16e [ath5k] > [] ieee80211_bss_info_change_notify+0x141/0x151 [mac80211] > [] ieee80211_config_beacon+0x142/0x153 [mac80211] > [] ieee80211_add_beacon+0x0/0x1c [mac80211] > [] nl80211_addset_beacon+0x13f/0x171 [cfg80211] > [] genl_rcv_msg+0x13a/0x154 > [] genl_rcv_msg+0x0/0x154 > [] netlink_rcv_skb+0x2d/0x72 > [] genl_rcv+0x14/0x17 > [] netlink_unicast+0xd1/0x125 > [] netlink_sendmsg+0x1ee/0x1fb > [] __sock_sendmsg+0x20/0x24 > [] sock_sendmsg+0x95/0xad > [] autoremove_wake_function+0x0/0x2b > [] calc_delta_fair+0x16/0x24 > [] __dequeue_entity+0x1f/0x71 > [] page_count+0x8/0x14 > [] get_pageblock_flags_group+0xf/0x50 > [] verify_iovec+0x3e/0x6d > [] sys_sendmsg+0x18d/0x1ed > [] __wake_up+0x1d/0x45 > [] __wake_up+0x35/0x45 > [] __wake_up+0x1d/0x45 > [] __wake_up+0x35/0x45 > [] dev_name_hash+0x13/0x42 > [] dev_name_hash+0x13/0x42 > [] __dev_get_by_name+0x2f/0x39 > [] sk_alloc+0x30/0x36 > [] _local_bh_enable_ip+0x72/0x7c > [] lock_sock_nested+0xb1/0xb8 > [] _local_bh_enable_ip+0x72/0x7c > [] sys_socketcall+0x15b/0x193 > [] sys_close+0x75/0xc5 > [] syscall_call+0x7/0xb > [] pci_read_bridge_bases+0x273/0x298 > ======================= > ---[ end trace 5a73e54cdc253a36 ]--- > > > I'll try again after an update fixing this (backing it out?) gets posted. > > BTW: Where does scripts/markup_oops.pl live? > > -Philip > > > Seeing similar issues with 2009-08-04, an AR5413 card, and 2.6.27.26: ------------[ cut here ]------------ WARNING: at kernel/softirq.c:136 _local_bh_enable_ip+0x2f/0x7c() Modules linked in: lm90 hwmon scx200_acb i2c_core bridge stp llc br2684 solos_pci atm dummy ipv6 dahdi_dummy dahdi sha512_generic sha256_generic deflate zlib_deflate sha1_generic blowfish des_generic cbc cryptosoft cryptodev(P) ocf(P) geodewdt rtc arc4 ecb ath5k mac80211 ath usblp cfg80211 rfkill_backport cs5535_gpio geode_aes crypto_blkcipher via_rhine geode_rng Pid: 3170, comm: hostapd Tainted: P 2.6.27.26-astlinux #1 [] warn_on_slowpath+0x40/0x63 [] __alloc_pages_internal+0x65/0x324 [] calc_delta_fair+0x16/0x24 [] __alloc_skb+0x4b/0x108 [] ieee80211_beacon_add_tim+0x4f/0x111 [mac80211] [] _local_bh_enable_ip+0x2f/0x7c [] ieee80211_beacon_get+0xe9/0x262 [mac80211] [] ath5k_beacon_update+0x2b/0x1a5 [ath5k] [] schedule_timeout+0x13/0x8f [] ath5k_bss_info_changed+0x118/0x16e [ath5k] [] ath5k_bss_info_changed+0x0/0x16e [ath5k] [] ieee80211_bss_info_change_notify+0x141/0x151 [mac80211] [] ieee80211_config_beacon+0x142/0x153 [mac80211] [] ieee80211_add_beacon+0x0/0x1c [mac80211] [] nl80211_addset_beacon+0x13f/0x171 [cfg80211] [] genl_rcv_msg+0x13a/0x154 [] genl_rcv_msg+0x0/0x154 [] netlink_rcv_skb+0x2d/0x72 [] genl_rcv+0x14/0x17 [] netlink_unicast+0xd1/0x125 [] netlink_sendmsg+0x1ee/0x1fb [] __sock_sendmsg+0x20/0x24 [] sock_sendmsg+0x95/0xad [] autoremove_wake_function+0x0/0x2b [] autoremove_wake_function+0x0/0x2b [] __wake_up+0x1d/0x45 [] __wake_up+0x35/0x45 [] netlink_unlock_table+0x23/0x25 [] verify_iovec+0x3e/0x6d [] sys_sendmsg+0x18d/0x1ed [] mark_page_accessed+0x35/0x45 [] shmem_fault+0x62/0x6e [] unionfs_fault+0x48/0x50 [] dev_name_hash+0x13/0x42 [] dev_name_hash+0x13/0x42 [] __dev_get_by_name+0x2f/0x39 [] _local_bh_enable_ip+0x72/0x7c [] lock_sock_nested+0xb1/0xb8 [] _local_bh_enable_ip+0x72/0x7c [] sys_socketcall+0x15b/0x193 [] sys_close+0x75/0xc5 [] syscall_call+0x7/0xb [] pci_read_bridge_bases+0x273/0x298 ======================= ---[ end trace c32282ee6886491c ]--- Who's working on the beaconing interrupts (vs. tasklet) stuff? -Philip