From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752577Ab2DASKI (ORCPT ); Sun, 1 Apr 2012 14:10:08 -0400 Received: from e39.co.us.ibm.com ([32.97.110.160]:44342 "EHLO e39.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751976Ab2DASKG (ORCPT ); Sun, 1 Apr 2012 14:10:06 -0400 Date: Sun, 1 Apr 2012 11:09:52 -0700 From: "Paul E. McKenney" To: Bjarke Istrup Pedersen Cc: linux-kernel@vger.kernel.org Subject: Re: Regression introduced by 19b4a8d520a6e0176dd52aaa429261ad4fcaa545 (p54 driver fails with WARNING) , bisected Message-ID: <20120401180952.GX2450@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20120401035213.GU2450@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Content-Scanned: Fidelis XPS MAILER x-cbid: 12040118-4242-0000-0000-00000137C7B2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Apr 01, 2012 at 03:31:00PM +0200, Bjarke Istrup Pedersen wrote: > 1. apr. 2012 14.32 skrev Bjarke Istrup Pedersen : > > 1. apr. 2012 12.55 skrev Bjarke Istrup Pedersen : > >> 1. apr. 2012 05.52 skrev Paul E. McKenney : > >>> On Sun, Mar 25, 2012 at 01:41:23PM +0200, Bjarke Istrup Pedersen wrote: > >>>> Hey, > >>>> > >>>> I'm having a problem with the p54 driver, which seems to be caused by > >>>> the commit 19b4a8d520a6e0176dd52aaa429261ad4fcaa545 (found out by > >>>> bisecting between v3.1 and v3.2-rc1) > >>>> > >>>> I'm however unable to spot what in that commit causes the problem, > >>>> since it is a merge. > >>>> > >>>> I have attached the bisect log and the 3 warnings the kernel spit out. > >>>> > >>>> ----- BISECT LOG START ----- > >>>> > >>>> git bisect start > >>>> # good: [c3b92c8787367a8bb53d57d9789b558f1295cc96] Linux 3.1 > >>>> git bisect good c3b92c8787367a8bb53d57d9789b558f1295cc96 > >>>> # bad: [1ea6b8f48918282bdca0b32a34095504ee65bab5] Linux 3.2-rc1 > >>>> git bisect bad 1ea6b8f48918282bdca0b32a34095504ee65bab5 > >>>> # bad: [37be944a0270402f9cda291a930b0286f6dc92f5] Merge branch > >>>> 'drm-core-next' of git://people.freedesktop.org/~airlied/linux > >>>> git bisect bad 37be944a0270402f9cda291a930b0286f6dc92f5 > >>>> # good: [7e0bb71e75020348bee523720a0c2f04cc72f540] Merge branch > >>>> 'pm-for-linus' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm > >>>> git bisect good 7e0bb71e75020348bee523720a0c2f04cc72f540 > >>>> # good: [46a971913611a23478283931460a95be962ce329] Staging: hv: move > >>>> hyperv code out of staging directory > >>>> git bisect good 46a971913611a23478283931460a95be962ce329 > >>>> # bad: [8a4a8918ed6e4a361f4df19f199bbc2d0a89a46c] Merge branch > >>>> 'sched-core-for-linus' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip > >>>> git bisect bad 8a4a8918ed6e4a361f4df19f199bbc2d0a89a46c > >>>> # good: [aa77677e0a288e08073620db5d2a31df83ca4788] Merge branch > >>>> 'staging-next' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging > >>>> git bisect good aa77677e0a288e08073620db5d2a31df83ca4788 > >>>> # good: [c752d04066a36ae30b29795f3fa3f536292c1f8c] perf symbols: > >>>> Increase symbol KSYM_NAME_LEN size > >>>> git bisect good c752d04066a36ae30b29795f3fa3f536292c1f8c > >>>> # bad: [19b4a8d520a6e0176dd52aaa429261ad4fcaa545] Merge branch > >>>> 'core-rcu-for-linus' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip > >>>> git bisect bad 19b4a8d520a6e0176dd52aaa429261ad4fcaa545 > >>>> # good: [048b718029033af117870d3da47da12995be14a3] Merge branch > >>>> 'rcu/next' of git://github.com/paulmckrcu/linux into core/rcu > >>>> git bisect good 048b718029033af117870d3da47da12995be14a3 > >>>> # good: [96f8e98bfeba3efa82eca85343bc058f6eced888] locking, x86, > >>>> iommu: Annotate irq_2_ir_lock as raw > >>>> git bisect good 96f8e98bfeba3efa82eca85343bc058f6eced888 > >>>> # good: [c020570138f5d9cb1fc0a853f9cf9e641178b5c5] x86, ioapic: > >>>> Consolidate the explicit EOI code > >>>> git bisect good c020570138f5d9cb1fc0a853f9cf9e641178b5c5 > >>>> # good: [68cc3990a545dc0da221b4844dd8b9c06623a6c5] rtmutex: Add > >>>> missing rcu_read_unlock() in debug_rt_mutex_print_deadlock() > >>>> git bisect good 68cc3990a545dc0da221b4844dd8b9c06623a6c5 > >>>> # good: [08613e4626c06ca408fc55071f6aedee36986a87] caif: Fix BUG() > >>>> with network namespaces > >>>> git bisect good 08613e4626c06ca408fc55071f6aedee36986a87 > >>>> # good: [982653009b883ef1529089e3e6f1ae2fee41cbe2] Merge branch > >>>> 'core-iommu-for-linus' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip > >>>> git bisect good 982653009b883ef1529089e3e6f1ae2fee41cbe2 > >>>> # good: [3cfef9524677a4ecb392d6fbffe6ebce6302f1d4] Merge branch > >>>> 'core-locking-for-linus' of > >>>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip > >>>> git bisect good 3cfef9524677a4ecb392d6fbffe6ebce6302f1d4 > >>>> > >>>> Result: 19b4a8d520a6e0176dd52aaa429261ad4fcaa545 is the first bad commit > >>>> > >>>> ----- BISECT LOG END ----- > >>>> > >>>> ----- KERNEL WARNINGS START ----- > >>>> > >>>> ------------[ cut here ]------------ > >>>> WARNING: at drivers/net/wireless/p54/main.c:348 p54_config+0x179/0x1d8() > >>>> Pid: 2529, comm: hostapd Not tainted 3.3.0 #2 > >>>> Call Trace: > >>>>  [] ? warn_slowpath_common+0x65/0x78 > >>>>  [] ? p54_config+0x179/0x1d8 > >>>>  [] ? warn_slowpath_null+0xd/0x12 > >>>>  [] ? p54_config+0x179/0x1d8 > >>>>  [] ? ieee80211_hw_config+0xe7/0xef > >>>>  [] ? ieee80211_do_open+0x3ab/0x46f > >>>>  [] ? __dev_open+0x74/0x9b > >>>>  [] ? __dev_change_flags+0x8c/0x101 > >>>>  [] ? dev_change_flags+0x10/0x3b > >>>>  [] ? devinet_ioctl+0x254/0x4c4 > >>>>  [] ? dev_ioctl+0x543/0x586 > >>>>  [] ? sock_ioctl+0x163/0x185 > >>>>  [] ? sock_fasync+0x5e/0x5e > >>>>  [] ? do_vfs_ioctl+0x44d/0x486 > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dput+0xa1/0xa9 > >>>>  [] ? fput+0x126/0x13e > >>>>  [] ? mnt_add_count.clone.18+0x17/0x21 > >>>>  [] ? sys_ioctl+0x44/0x66 > >>>>  [] ? syscall_call+0x7/0xb > >>>> ---[ end trace 7c0a20dadc443bc0 ]--- > >>>> ------------[ cut here ]------------ > >>>> WARNING: at drivers/net/wireless/p54/main.c:351 p54_config+0x19e/0x1d8() > >>>> Pid: 2529, comm: hostapd Tainted: G        W    3.3.0 #2 > >>>> Call Trace: > >>>>  [] ? warn_slowpath_common+0x65/0x78 > >>>>  [] ? p54_config+0x19e/0x1d8 > >>>>  [] ? warn_slowpath_null+0xd/0x12 > >>>>  [] ? p54_config+0x19e/0x1d8 > >>>>  [] ? ieee80211_hw_config+0xe7/0xef > >>>>  [] ? ieee80211_do_open+0x3ab/0x46f > >>>>  [] ? __dev_open+0x74/0x9b > >>>>  [] ? __dev_change_flags+0x8c/0x101 > >>>>  [] ? dev_change_flags+0x10/0x3b > >>>>  [] ? devinet_ioctl+0x254/0x4c4 > >>>>  [] ? dev_ioctl+0x543/0x586 > >>>>  [] ? sock_ioctl+0x163/0x185 > >>>>  [] ? sock_fasync+0x5e/0x5e > >>>>  [] ? do_vfs_ioctl+0x44d/0x486 > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dput+0xa1/0xa9 > >>>>  [] ? fput+0x126/0x13e > >>>>  [] ? mnt_add_count.clone.18+0x17/0x21 > >>>>  [] ? sys_ioctl+0x44/0x66 > >>>>  [] ? syscall_call+0x7/0xb > >>>> ---[ end trace 7c0a20dadc443bc1 ]--- > >>>> wan0: no IPv6 routers present > >>>> ------------[ cut here ]------------ > >>>> WARNING: at drivers/net/wireless/p54/main.c:355 p54_config+0x1c6/0x1d8() > >>>> Pid: 2529, comm: hostapd Tainted: G        W    3.3.0 #2 > >>>> Call Trace: > >>>>  [] ? warn_slowpath_common+0x65/0x78 > >>>>  [] ? p54_config+0x1c6/0x1d8 > >>>>  [] ? warn_slowpath_null+0xd/0x12 > >>>>  [] ? p54_config+0x1c6/0x1d8 > >>>>  [] ? ieee80211_hw_config+0xe7/0xef > >>>>  [] ? ieee80211_do_open+0x3ab/0x46f > >>>>  [] ? __dev_open+0x74/0x9b > >>>>  [] ? __dev_change_flags+0x8c/0x101 > >>>>  [] ? dev_change_flags+0x10/0x3b > >>>>  [] ? devinet_ioctl+0x254/0x4c4 > >>>>  [] ? dev_ioctl+0x543/0x586 > >>>>  [] ? sock_ioctl+0x163/0x185 > >>>>  [] ? sock_fasync+0x5e/0x5e > >>>>  [] ? do_vfs_ioctl+0x44d/0x486 > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? dput+0xa1/0xa9 > >>>>  [] ? fput+0x126/0x13e > >>>>  [] ? mnt_add_count.clone.18+0x17/0x21 > >>>>  [] ? sys_ioctl+0x44/0x66 > >>>>  [] ? syscall_call+0x7/0xb > >>>> ---[ end trace 7c0a20dadc443bc2 ]--- > >>>> device wlan0 entered promiscuous mode > >>>> br0: port 3(wlan0) entered forwarding state > >>>> br0: port 3(wlan0) entered forwarding state > >>>> ------------[ cut here ]------------ > >>>> WARNING: at drivers/net/wireless/p54/main.c:327 p54_config+0x54/0x1d8() > >>>> Pid: 2529, comm: hostapd Tainted: G        W    3.3.0 #2 > >>>> Call Trace: > >>>>  [] ? warn_slowpath_common+0x65/0x78 > >>>>  [] ? p54_config+0x54/0x1d8 > >>>>  [] ? warn_slowpath_null+0xd/0x12 > >>>>  [] ? p54_config+0x54/0x1d8 > >>>>  [] ? ieee80211_hw_config+0xe7/0xef > >>>>  [] ? ieee80211_set_channel+0xbd/0xea > >>>>  [] ? cfg80211_set_freq+0xb1/0xdd > >>>>  [] ? ieee80211_scan+0x66/0x66 > >>>>  [] ? __nl80211_set_channel.clone.32+0x91/0xbc > >>>>  [] ? nl80211_set_wiphy+0x23a/0x4c9 > >>>>  [] ? ieee80211_set_cqm_rssi_config+0x72/0x72 > >>>>  [] ? nla_parse+0x3d/0x96 > >>>>  [] ? nl80211_pre_doit+0x1b/0xcc > >>>>  [] ? genl_rcv_msg+0x1a4/0x1c0 > >>>>  [] ? genl_rcv+0x20/0x20 > >>>>  [] ? netlink_rcv_skb+0x2f/0x6f > >>>>  [] ? genl_rcv+0x18/0x20 > >>>>  [] ? netlink_unicast+0xee/0x14c > >>>>  [] ? netlink_sendmsg+0x1d3/0x1ec > >>>>  [] ? __sock_sendmsg+0x56/0x5f > >>>>  [] ? sock_sendmsg+0x77/0x8e > >>>>  [] ? netlink_unlock_table+0x23/0x25 > >>>>  [] ? verify_iovec+0x3d/0x74 > >>>>  [] ? __sys_sendmsg+0x167/0x200 > >>>>  [] ? sock_sendmsg_nosec+0xd0/0xd0 > >>>>  [] ? dev_name_hash.clone.85+0x1b/0x2c > >>>>  [] ? dev_name_hash.clone.85+0x1b/0x2c > >>>>  [] ? dev_ioctl+0x543/0x586 > >>>>  [] ? sk_prot_alloc+0x21/0xaf > >>>>  [] ? spin_unlock_irqrestore.clone.45+0x11/0x1b > >>>>  [] ? dentry_kill+0xe6/0xef > >>>>  [] ? fget_light+0x27/0x77 > >>>>  [] ? sys_sendmsg+0x2c/0x47 > >>>>  [] ? sys_socketcall+0x16a/0x1be > >>>>  [] ? sys_close+0x57/0x8d > >>>>  [] ? syscall_call+0x7/0xb > >>>> ---[ end trace 7c0a20dadc443bc3 ]--- > >>>> > >>>> ----- KERNEL WARNINGS END ----- > >>>> > >>>> The warnings are from v3.3, but they are identical to the warnings > >>>> that commit causes. > >>>> > >>>> It seems like there are at least one other than me having this > >>>> problem: https://bugzilla.redhat.com/show_bug.cgi?id=804449 > >>>> > >>>> Any help would be greatly appreciated. > >>> > >>> The merge 19b4a8d520a6e0176dd52aaa429261ad4fcaa545 is based on v3.1-rc8. > >>> If possible, could you please bisect the following sequence of commits? > >>> > >>> o       v3.1-rc8 > >>> o       1f288094807861ec1e48c428d2c49ccf7aaf3767 > >>> o       1eb521210a8c9823038abe4ddfe8c69e713ec17d > >>> o       ... > >>> o       e90c53d3e238dd0b7b02964370e8fece1778df96 > >>> o       afe24b122eb6edb5f1cb942570ac8d766105c7fc > >> > >> I tried doing a git checkout of both > >> 1f288094807861ec1e48c428d2c49ccf7aaf3767 and > >> afe24b122eb6edb5f1cb942570ac8d766105c7fc, and both works fine. > >> What is puzzling me, is that it points out a merge that is based > >> before v3.1, which works fine. > > > > Points out a commit, sorry :) > > > > Could it be, that it has been so long since that tree has been pulled, > > that those commits are dated back end 3.1 was in rc? > > Otherwise I cannot figure out why it says it's before 3.1 > > > > /Bjarke > > > > Hmm, even more interesting, it seems like disabling CONFIG_PREEMPT > fixes it (most likely because CONFIG_TINY_PREEMPT_RCU and > CONFIG_PREEMPT_RCU gets disabled, and CONFIG_TINY_RCU gets enabled. > > Does that explain anything on why it fails? That does give me something to look into. Does CONFIG_TINY_PREEMPT_RCU fail uniformly for you, or does it work before the merge and fail afterwards? Thanx, Paul