2012-02-23 23:08:16

by Rafael J. Wysocki

[permalink] [raw]
Subject: 3.3-rc4+: Reported regressions from 3.2

Hi all,

We definitely aren't 100% in business yet with the tracking of regressions,
but since the Bugzilla is operational again, we can collect reports at least.

I'd like to use this opportunity to thank Maciej Rutecki and Florian Mickler
for their hard work on the regression tracking and to clarify some things that
seem to have caused some confusion to happen recently. Namely, we use the
kernel Bugzilla (https://bugzilla.kernel.org) for the tracking of regressions
for the simple reason that our scripts generate the lists that are posted
(like the one below) out of Bugzilla entries created by us (and sometimes
by other people). Those entries are used by us as a storage of information,
so we're going to add them even though some kernel developers don't seem to
like that. We don't require developers to actually use those entries for
handling bug reports, we only need people to let us know when they should be
closed, because the bug has been fixed in the Linus' tree, or when there's
a patch available for the bug (in which case we mark it as "resolved", but
we don't close it just yet). There is no reason for you to be openly hostile
to Maciej, who's been creating those entries recently, because he's just been
doing his job. However, you may not want us to track kernel regressions at
all, in which case please let us know about that and we will find some other,
presumably equally interesting things to do. :-)

Yes, we might have been more verbose about what _exactly_ we've been using the
Bugzilla for and what our workflow is, but at the same time people might have
been a bit less harsh to someone who's been doing a service to the community,
completely voluntarily.

Thanks,
Rafael

---

This message contains a list of some regressions from 3.2,
for which there are no fixes in the mainline known to the tracking team.
If any of them have been fixed already, please let us know.

If you know of any other unresolved regressions from 3.2, please let us
know either and we'll add them to the list. Also, please let us know
if any of the entries below are invalid.

Each entry from the list will be sent additionally in an automatic reply
to this message with CCs to the people involved in reporting and handling
the issue.


Listed regressions statistics:

Date Total Pending Unresolved
----------------------------------------
2012-02-23 15 13 13


Unresolved regressions
----------------------

Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42798
Subject : i915 regression with 3.3-rc3+git
Submitter : Riccardo Magliocchetti <[email protected]>
Date : 2012-02-17 20:48 (7 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132951173002619&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42776
Subject : OF-related boot crash in 3.3.0-rc3-00188-g3ec1e88
Submitter : Meelis Roos <[email protected]>
Date : 2012-02-13 7:45 (11 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132911916331615&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42761
Subject : Possible circular locking dependency (3.3-rc2)
Submitter : Felipe Balbi <[email protected]>
Date : 2012-02-08 12:41 (16 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132870492311858&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42746
Subject : 3.3-rc2 snd_pcm lockdep backtrace
Submitter : Josh Boyer <[email protected]>
Date : 2012-02-06 14:56 (18 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132854040916172&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42735
Subject : kobject (ffff88003ffbb4b8): tried to init an initialized object, something is seriously wrong.
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-02-03 20:59 (21 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132830315526901&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42734
Subject : dosemu graphics broken in v3.3-rc1
Submitter : Hans de Bruin <[email protected]>
Date : 2012-02-02 22:25 (22 days old)
First-Bad-Commit: http://git.kernel.org/linus/308e5bcbdb10452e8aba31aa21432fb67ee46d72
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132825899111982&w=2
Handled-By : Jesse Barnes <[email protected]>


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42733
Subject : Regression 3.2 -> 3.3-rc1 10 sec hang at boot and resume, COMRESET failed
Submitter : Norbert Preining <[email protected]>
Date : 2012-02-02 5:12 (22 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132815978615112&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42713
Subject : Regression in skge that started around acb42a3 (so past v3.3-rc1)
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-01-30 15:58 (25 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132793944220262&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
Submitter : James Bottomley <[email protected]>
Date : 2012-01-28 19:56 (27 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42686
Subject : iwlagn is getting even worse with 3.3-rc1
Submitter : Norbert Preining <[email protected]>
Date : 2012-01-24 1:36 (31 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132736918325378&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42683
Subject : WARN... Device 'cpu1' does not have a release() function, it is broken and must be fixed. when doing 'xl vcpu-set <guest_id> 1'
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-01-23 18:06 (32 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132734233916154&w=2


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42678
Subject : [3.3-rc1] radeon stuck in kernel after lockup
Submitter : Torsten Kaiser <[email protected]>
Date : 2012-01-21 19:03 (34 days old)
Message-ID : <CAPVoSvSXMvRb=1itu9DjF+s=6zfAChvUxS-x=b8EV9kOZinNpA@mail.gmail.com>
References : http://marc.info/?l=linux-kernel&m=132717279606670&w=2
Handled-By : Jérôme Glisse <[email protected]>


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42669
Subject : 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work
Submitter : werner <[email protected]>
Date : 2012-01-20 18:52 (35 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132708923719565&w=2


For details, please visit the bug entries and follow the links given in
references.

As you can see, there is a Bugzilla entry for each of the listed regressions.
There also is a Bugzilla entry used for tracking the regressions from 3.2,
unresolved as well as resolved, at:

http://bugzilla.kernel.org/show_bug.cgi?id=42644

Please let the tracking team know if there are any Bugzilla entries that
should be added to the list in there.

Thanks!


2012-02-23 23:08:19

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42669
Subject : 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work
Submitter : werner <[email protected]>
Date : 2012-01-20 18:52 (35 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132708923719565&w=2

2012-02-23 23:13:05

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
Submitter : James Bottomley <[email protected]>
Date : 2012-01-28 19:56 (27 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2

2012-02-23 23:13:08

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42678] [3.3-rc1] radeon stuck in kernel after lockup

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42678
Subject : [3.3-rc1] radeon stuck in kernel after lockup
Submitter : Torsten Kaiser <[email protected]>
Date : 2012-01-21 19:03 (34 days old)
Message-ID : <CAPVoSvSXMvRb=1itu9DjF+s=6zfAChvUxS-x=b8EV9kOZinNpA@mail.gmail.com>
References : http://marc.info/?l=linux-kernel&m=132717279606670&w=2
Handled-By : Jérôme Glisse <[email protected]>

2012-02-23 23:13:06

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42713] Regression in skge that started around acb42a3 (so past v3.3-rc1)

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42713
Subject : Regression in skge that started around acb42a3 (so past v3.3-rc1)
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-01-30 15:58 (25 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132793944220262&w=2

2012-02-23 23:13:40

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42733] Regression 3.2 -> 3.3-rc1 10 sec hang at boot and resume, COMRESET failed

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42733
Subject : Regression 3.2 -> 3.3-rc1 10 sec hang at boot and resume, COMRESET failed
Submitter : Norbert Preining <[email protected]>
Date : 2012-02-02 5:12 (22 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132815978615112&w=2

2012-02-23 23:13:43

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42776] OF-related boot crash in 3.3.0-rc3-00188-g3ec1e88

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42776
Subject : OF-related boot crash in 3.3.0-rc3-00188-g3ec1e88
Submitter : Meelis Roos <[email protected]>
Date : 2012-02-13 7:45 (11 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132911916331615&w=2

2012-02-23 23:14:07

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42761] Possible circular locking dependency (3.3-rc2)

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42761
Subject : Possible circular locking dependency (3.3-rc2)
Submitter : Felipe Balbi <[email protected]>
Date : 2012-02-08 12:41 (16 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132870492311858&w=2

2012-02-23 23:14:05

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42746] 3.3-rc2 snd_pcm lockdep backtrace

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42746
Subject : 3.3-rc2 snd_pcm lockdep backtrace
Submitter : Josh Boyer <[email protected]>
Date : 2012-02-06 14:56 (18 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132854040916172&w=2

2012-02-23 23:13:39

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42735] kobject (ffff88003ffbb4b8): tried to init an initialized object, something is seriously wrong.

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42735
Subject : kobject (ffff88003ffbb4b8): tried to init an initialized object, something is seriously wrong.
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-02-03 20:59 (21 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132830315526901&w=2

2012-02-23 23:14:50

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42734] dosemu graphics broken in v3.3-rc1

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42734
Subject : dosemu graphics broken in v3.3-rc1
Submitter : Hans de Bruin <[email protected]>
Date : 2012-02-02 22:25 (22 days old)
First-Bad-Commit: http://git.kernel.org/linus/308e5bcbdb10452e8aba31aa21432fb67ee46d72
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132825899111982&w=2
Handled-By : Jesse Barnes <[email protected]>

2012-02-23 23:14:48

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42798] i915 regression with 3.3-rc3+git

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42798
Subject : i915 regression with 3.3-rc3+git
Submitter : Riccardo Magliocchetti <[email protected]>
Date : 2012-02-17 20:48 (7 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132951173002619&w=2

2012-02-23 23:13:03

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42683] WARN... Device 'cpu1' does not have a release() function, it is broken and must be fixed. when doing 'xl vcpu-set <guest_id> 1'

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42683
Subject : WARN... Device 'cpu1' does not have a release() function, it is broken and must be fixed. when doing 'xl vcpu-set <guest_id> 1'
Submitter : Konrad Rzeszutek Wilk <[email protected]>
Date : 2012-01-23 18:06 (32 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132734233916154&w=2

2012-02-23 23:15:49

by Rafael J. Wysocki

[permalink] [raw]
Subject: [Bug #42686] iwlagn is getting even worse with 3.3-rc1

This message has been generated automatically as a part of a summary report
of recent regressions.

The following bug entry is on the current list of known regressions
from 3.2. Please verify if it still should be listed and let the tracking team
know (either way).


Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42686
Subject : iwlagn is getting even worse with 3.3-rc1
Submitter : Norbert Preining <[email protected]>
Date : 2012-01-24 1:36 (31 days old)
Message-ID : <[email protected]>
References : http://marc.info/?l=linux-kernel&m=132736918325378&w=2

2012-02-23 23:19:21

by David Miller

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

From: "Rafael J. Wysocki" <[email protected]>
Date: Thu, 23 Feb 2012 23:51:25 +0100 (CET)

> This message has been generated automatically as a part of a summary report
> of recent regressions.
>
> The following bug entry is on the current list of known regressions
> from 3.2. Please verify if it still should be listed and let the tracking team
> know (either way).
>
>
> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42669
> Subject : 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work
> Submitter : werner <[email protected]>
> Date : 2012-01-20 18:52 (35 days old)
> Message-ID : <[email protected]>
> References : http://marc.info/?l=linux-kernel&m=132708923719565&w=2

The l2cap_sock problem is fixed in the net GIT tree by commit:

--------------------
commit 4aa832c27edf902130f8bace1d42cf22468823fa
Author: Johan Hedberg <[email protected]>
Date: Sun Jan 8 22:51:16 2012 +0200

Bluetooth: Remove bogus inline declaration from l2cap_chan_connect

As reported by Dan Carpenter this function causes a Sparse warning and
shouldn't be declared inline:

include/net/bluetooth/l2cap.h:837:30 error: marked inline, but without a
definition"

Reported-by: Dan Carpenter <[email protected]>
Signed-off-by: Johan Hedberg <[email protected]>
Acked-by: Marcel Holtmann <[email protected]>

diff --git a/include/net/bluetooth/l2cap.h b/include/net/bluetooth/l2cap.h
index 68f5891..124f7cf 100644
--- a/include/net/bluetooth/l2cap.h
+++ b/include/net/bluetooth/l2cap.h
@@ -834,7 +834,7 @@ int l2cap_add_scid(struct l2cap_chan *chan, __u16 scid);
struct l2cap_chan *l2cap_chan_create(struct sock *sk);
void l2cap_chan_close(struct l2cap_chan *chan, int reason);
void l2cap_chan_destroy(struct l2cap_chan *chan);
-inline int l2cap_chan_connect(struct l2cap_chan *chan, __le16 psm, u16 cid,
+int l2cap_chan_connect(struct l2cap_chan *chan, __le16 psm, u16 cid,
bdaddr_t *dst);
int l2cap_chan_send(struct l2cap_chan *chan, struct msghdr *msg, size_t len,
u32 priority);
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index faf0b11..980abdb 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -1120,7 +1120,7 @@ static struct l2cap_chan *l2cap_global_chan_by_psm(int state, __le16 psm, bdaddr
return c1;
}

-inline int l2cap_chan_connect(struct l2cap_chan *chan, __le16 psm, u16 cid, bdaddr_t *dst)
+int l2cap_chan_connect(struct l2cap_chan *chan, __le16 psm, u16 cid, bdaddr_t *dst)
{
struct sock *sk = chan->sk;
bdaddr_t *src = &bt_sk(sk)->src;

2012-02-23 23:28:37

by David Miller

[permalink] [raw]
Subject: Re: 3.3-rc4+: Reported regressions from 3.2

From: "Rafael J. Wysocki" <[email protected]>
Date: Thu, 23 Feb 2012 23:51:20 +0100 (CET)

> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42776
> Subject : OF-related boot crash in 3.3.0-rc3-00188-g3ec1e88
> Submitter : Meelis Roos <[email protected]>
> Date : 2012-02-13 7:45 (11 days old)
> Message-ID : <[email protected]>
> References : http://marc.info/?l=linux-kernel&m=132911916331615&w=2

Potential workaround/fix at:

http://marc.info/?l=linux-kernel&m=132993294018762&w=2

2012-02-23 23:29:35

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

On Friday, February 24, 2012, David Miller wrote:
> From: "Rafael J. Wysocki" <[email protected]>
> Date: Thu, 23 Feb 2012 23:51:25 +0100 (CET)
>
> > This message has been generated automatically as a part of a summary report
> > of recent regressions.
> >
> > The following bug entry is on the current list of known regressions
> > from 3.2. Please verify if it still should be listed and let the tracking team
> > know (either way).
> >
> >
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42669
> > Subject : 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work
> > Submitter : werner <[email protected]>
> > Date : 2012-01-20 18:52 (35 days old)
> > Message-ID : <[email protected]>
> > References : http://marc.info/?l=linux-kernel&m=132708923719565&w=2
>
> The l2cap_sock problem is fixed in the net GIT tree by commit:

Thanks, closed.

Rafael

2012-02-24 00:09:18

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 3.3-rc4+: Reported regressions from 3.2

On Friday, February 24, 2012, David Miller wrote:
> From: "Rafael J. Wysocki" <[email protected]>
> Date: Thu, 23 Feb 2012 23:51:20 +0100 (CET)
>
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42776
> > Subject : OF-related boot crash in 3.3.0-rc3-00188-g3ec1e88
> > Submitter : Meelis Roos <[email protected]>
> > Date : 2012-02-13 7:45 (11 days old)
> > Message-ID : <[email protected]>
> > References : http://marc.info/?l=linux-kernel&m=132911916331615&w=2
>
> Potential workaround/fix at:
>
> http://marc.info/?l=linux-kernel&m=132993294018762&w=2

Thanks, updated.

Rafael

2012-02-24 04:36:32

by Konrad Rzeszutek Wilk

[permalink] [raw]
Subject: Re: [Bug #42683] WARN... Device 'cpu1' does not have a release() function, it is broken and must be fixed. when doing 'xl vcpu-set <guest_id> 1'

On Thu, Feb 23, 2012 at 11:55:57PM +0100, Rafael J. Wysocki wrote:
> This message has been generated automatically as a part of a summary report
> of recent regressions.
>
> The following bug entry is on the current list of known regressions
> from 3.2. Please verify if it still should be listed and let the tracking team
> know (either way).
>
>
> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42683
> Subject : WARN... Device 'cpu1' does not have a release() function, it is broken and must be fixed. when doing 'xl vcpu-set <guest_id> 1'
> Submitter : Konrad Rzeszutek Wilk <[email protected]>
> Date : 2012-01-23 18:06 (32 days old)
> Message-ID : <[email protected]>
> References : http://marc.info/?l=linux-kernel&m=132734233916154&w=2

Fixed.

2012-02-24 09:14:10

by Torsten Kaiser

[permalink] [raw]
Subject: Re: [Bug #42678] [3.3-rc1] radeon stuck in kernel after lockup

2012/2/23 Rafael J. Wysocki <[email protected]>:
> This message has been generated automatically as a part of a summary report
> of recent regressions.
>
> The following bug entry is on the current list of known regressions
> from 3.2. ?Please verify if it still should be listed and let the tracking team
> know (either way).
>
>
> Bug-Entry ? ? ? : http://bugzilla.kernel.org/show_bug.cgi?id=42678
> Subject ? ? ? ? : [3.3-rc1] radeon stuck in kernel after lockup
> Submitter ? ? ? : Torsten Kaiser <[email protected]>
> Date ? ? ? ? ? ?: 2012-01-21 19:03 (34 days old)
> Message-ID ? ? ?: <CAPVoSvSXMvRb=1itu9DjF+s=6zfAChvUxS-x=b8EV9kOZinNpA@mail.gmail.com>
> References ? ? ?: http://marc.info/?l=linux-kernel&m=132717279606670&w=2
> Handled-By ? ? ?: J?r?me Glisse <[email protected]>

As requested: Yes, I think it is still open and should be listed as an
regression.

I put a summary about why I think this way into the Bugzilla bug. I
believe putting this into Bugzilla was the better way, as to not lose
it on the lkml. But I will also try to answer email, if that is
preferred.

Torsten

2012-02-24 10:46:15

by werner

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

But why then the error is still in the source code, at
least until the last 3.3-rc4 ??? I also compiled the
code, removing always inline from the line as in the
patch, then it works.

Also, the other compiling errors what I reclaim about,
aren't yet resolved.

This things happens, because people, after changes, nor
compile them subroutines ... :( Much less, test them
...


W.Landgraf


=============================================================

On Thu, 23 Feb 2012 18:19:04 -0500 (EST)
David Miller <[email protected]> wrote:
>From: "Rafael J. Wysocki" <[email protected]>
> Date: Thu, 23 Feb 2012 23:51:25 +0100 (CET)
>
>> This message has been generated automatically as a part
>>of a summary report
>> of recent regressions.
>>
>> The following bug entry is on the current list of known
>>regressions
>> from 3.2. Please verify if it still should be listed
>>and let the tracking team
>> know (either way).
>>
>>
>> Bug-Entry :
>>http://bugzilla.kernel.org/show_bug.cgi?id=42669
>> Subject : 3.3-rc1: compiling problems nvme ,
>>l2cap_sock , mc13892-regulator , and snd-pcsp don't work
>> Submitter : werner <[email protected]>
>> Date : 2012-01-20 18:52 (35 days old)
>> Message-ID : <[email protected]>
>> References :
>>http://marc.info/?l=linux-kernel&m=132708923719565&w=2
>
> The l2cap_sock problem is fixed in the net GIT tree by
>commit:
>
> --------------------
> commit 4aa832c27edf902130f8bace1d42cf22468823fa
> Author: Johan Hedberg <[email protected]>
> Date: Sun Jan 8 22:51:16 2012 +0200
>
> Bluetooth: Remove bogus inline declaration from
>l2cap_chan_connect
>
> As reported by Dan Carpenter this function causes a
>Sparse warning and
> shouldn't be declared inline:
>
> include/net/bluetooth/l2cap.h:837:30 error: marked
>inline, but without a
> definition"
>
> Reported-by: Dan Carpenter <[email protected]>
> Signed-off-by: Johan Hedberg
><[email protected]>
> Acked-by: Marcel Holtmann <[email protected]>
>
> diff --git a/include/net/bluetooth/l2cap.h
>b/include/net/bluetooth/l2cap.h
> index 68f5891..124f7cf 100644
> --- a/include/net/bluetooth/l2cap.h
> +++ b/include/net/bluetooth/l2cap.h
> @@ -834,7 +834,7 @@ int l2cap_add_scid(struct l2cap_chan
>*chan, __u16 scid);
> struct l2cap_chan *l2cap_chan_create(struct sock *sk);
> void l2cap_chan_close(struct l2cap_chan *chan, int
>reason);
> void l2cap_chan_destroy(struct l2cap_chan *chan);
> -inline int l2cap_chan_connect(struct l2cap_chan *chan,
>__le16 psm, u16 cid,
> +int l2cap_chan_connect(struct l2cap_chan *chan, __le16
>psm, u16 cid,
> bdaddr_t *dst);
> int l2cap_chan_send(struct l2cap_chan *chan, struct
>msghdr *msg, size_t len,
> u32 priority);
> diff --git a/net/bluetooth/l2cap_core.c
>b/net/bluetooth/l2cap_core.c
> index faf0b11..980abdb 100644
> --- a/net/bluetooth/l2cap_core.c
> +++ b/net/bluetooth/l2cap_core.c
> @@ -1120,7 +1120,7 @@ static struct l2cap_chan
>*l2cap_global_chan_by_psm(int state, __le16 psm, bdaddr
> return c1;
> }
>
> -inline int l2cap_chan_connect(struct l2cap_chan *chan,
>__le16 psm, u16 cid, bdaddr_t *dst)
> +int l2cap_chan_connect(struct l2cap_chan *chan, __le16
>psm, u16 cid, bdaddr_t *dst)
> {
> struct sock *sk = chan->sk;
> bdaddr_t *src = &bt_sk(sk)->src;
>
>

"werner" <[email protected]>
---
Professional hosting for everyone - http://www.host.ru

2012-02-24 19:58:36

by David Miller

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

From: "werner" <[email protected]>
Date: Fri, 24 Feb 2012 06:48:58 -0400

> But why then the error is still in the source code, at least until the
> last 3.3-rc4 ??? I also compiled the code, removing always inline
> from the line as in the patch, then it works.

Because the fix is in the networking maintainer's tree and will shortly
be sent to Linus for inclusion.

> This things happens, because people, after changes, nor compile them
> subroutines ... :( Much less, test them ...

You need to relax.

The compile error only occurs with more recently compiler versions, so
it worked for the majority of people and in fact it compiles just fine
for me without the fix too.

2012-02-24 21:52:21

by werner

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work


>
>> This things happens, because people, after changes, nor
>>compile them
>> subroutines ... :( Much less, test them ...
>


In -rc1 were compilation errors in several subroutines,
and almost none of them was fixed until -rc4 .

And: that's a steady problem (although I bacame tired ond
report only exceptionally about this).

Generally, people, after patching something, at least
should try to compile the subroutine !!!!!!!!!!!!!!


W.Landgraf
---
Professional hosting for everyone - http://www.host.ru

2012-02-25 22:48:11

by Florian Mickler

[permalink] [raw]
Subject: Re: [Bug #42669] 3.3-rc1: compiling problems nvme , l2cap_sock , mc13892-regulator , and snd-pcsp don't work

On Fri, 24 Feb 2012 17:55:07 -0400
"werner" <[email protected]> wrote:

>
> >
> >> This things happens, because people, after changes, nor
> >>compile them
> >> subroutines ... :( Much less, test them ...
> >
>
>
> In -rc1 were compilation errors in several subroutines,
> and almost none of them was fixed until -rc4 .
>
> And: that's a steady problem (although I bacame tired ond
> report only exceptionally about this).
>
> Generally, people, after patching something, at least
> should try to compile the subroutine !!!!!!!!!!!!!!

And as David just told you, it compiles fine for him without the fix.

Should every developer test every available toolchain combination?

>
>
> W.Landgraf
> ---
> Professional hosting for everyone - http://www.host.ru

2012-02-27 23:44:39

by James Bottomley

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

On Thu, 2012-02-23 at 23:55 +0100, Rafael J. Wysocki wrote:
> This message has been generated automatically as a part of a summary report
> of recent regressions.
>
> The following bug entry is on the current list of known regressions
> from 3.2. Please verify if it still should be listed and let the tracking team
> know (either way).
>
>
> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
> Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
> Submitter : James Bottomley <[email protected]>
> Date : 2012-01-28 19:56 (27 days old)
> Message-ID : <[email protected]>
> References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2

Still present in 3.3-rc4; I've bisected it back to this commit:

commit 92feeabf3f673767c6ee4cfc7fc224098446c1c1
Author: Matt Carlson <[email protected]>
Date: Thu Dec 8 14:40:14 2011 +0000

tg3: Save stats across chip resets

and sure enough, just reverting this single commit on 3.3-rc4 fixes the
problem.

James

2012-02-28 01:25:13

by Matt Carlson

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

On Mon, Feb 27, 2012 at 05:44:34PM -0600, James Bottomley wrote:
> On Thu, 2012-02-23 at 23:55 +0100, Rafael J. Wysocki wrote:
> > This message has been generated automatically as a part of a summary report
> > of recent regressions.
> >
> > The following bug entry is on the current list of known regressions
> > from 3.2. Please verify if it still should be listed and let the tracking team
> > know (either way).
> >
> >
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
> > Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
> > Submitter : James Bottomley <[email protected]>
> > Date : 2012-01-28 19:56 (27 days old)
> > Message-ID : <[email protected]>
> > References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2
>
> Still present in 3.3-rc4; I've bisected it back to this commit:
>
> commit 92feeabf3f673767c6ee4cfc7fc224098446c1c1
> Author: Matt Carlson <[email protected]>
> Date: Thu Dec 8 14:40:14 2011 +0000
>
> tg3: Save stats across chip resets
>
> and sure enough, just reverting this single commit on 3.3-rc4 fixes the
> problem.
>
> James

I don't see anything incorrect about the patch. I'm guessing the patch
just changes the timing somehow.

tg3_reset_chip() does not take any driver-internal spinlocks. That
happens at tg3_close(). I'm guessing the spinlock in the trace is coming
from synchronize_irq().

2012-02-28 21:07:48

by David Miller

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

From: "Matt Carlson" <[email protected]>
Date: Mon, 27 Feb 2012 17:24:08 -0800

> On Mon, Feb 27, 2012 at 05:44:34PM -0600, James Bottomley wrote:
>> On Thu, 2012-02-23 at 23:55 +0100, Rafael J. Wysocki wrote:
>> > This message has been generated automatically as a part of a summary report
>> > of recent regressions.
>> >
>> > The following bug entry is on the current list of known regressions
>> > from 3.2. Please verify if it still should be listed and let the tracking team
>> > know (either way).
>> >
>> >
>> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
>> > Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
>> > Submitter : James Bottomley <[email protected]>
>> > Date : 2012-01-28 19:56 (27 days old)
>> > Message-ID : <[email protected]>
>> > References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2
>>
>> Still present in 3.3-rc4; I've bisected it back to this commit:
>>
>> commit 92feeabf3f673767c6ee4cfc7fc224098446c1c1
>> Author: Matt Carlson <[email protected]>
>> Date: Thu Dec 8 14:40:14 2011 +0000
>>
>> tg3: Save stats across chip resets
>>
>> and sure enough, just reverting this single commit on 3.3-rc4 fixes the
>> problem.
>>
>> James
>
> I don't see anything incorrect about the patch. I'm guessing the patch
> just changes the timing somehow.
>
> tg3_reset_chip() does not take any driver-internal spinlocks. That
> happens at tg3_close(). I'm guessing the spinlock in the trace is coming
> from synchronize_irq().

If you can't figure it out, we need to revert, so send me a revert patch
as soon as possible.

2012-02-28 23:33:32

by Matt Carlson

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

On Mon, Feb 27, 2012 at 05:44:34PM -0600, James Bottomley wrote:
> On Thu, 2012-02-23 at 23:55 +0100, Rafael J. Wysocki wrote:
> > This message has been generated automatically as a part of a summary report
> > of recent regressions.
> >
> > The following bug entry is on the current list of known regressions
> > from 3.2. Please verify if it still should be listed and let the tracking team
> > know (either way).
> >
> >
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
> > Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
> > Submitter : James Bottomley <[email protected]>
> > Date : 2012-01-28 19:56 (27 days old)
> > Message-ID : <[email protected]>
> > References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2
>
> Still present in 3.3-rc4; I've bisected it back to this commit:
>
> commit 92feeabf3f673767c6ee4cfc7fc224098446c1c1
> Author: Matt Carlson <[email protected]>
> Date: Thu Dec 8 14:40:14 2011 +0000
>
> tg3: Save stats across chip resets
>
> and sure enough, just reverting this single commit on 3.3-rc4 fixes the
> problem.
>
> James

Are you dealing with a bcm5700 or bcm5701 device? If so, can you try
the following patch?

Subject: [PATCH 1/1] tg3: Fix tg3_get_stats64 for 5700 / 5701 devs

tg3_get_stats64() takes tp->lock when dealing with non-serdes bcm5700
and bcm5701 devices. However, functions that call tg3_halt() have
already acquired tp->lock. When tg3_get_stats64() is called in
tg3_halt(), deadlock will occur.

This patch fixes the problem by separating the stat gathering code into
a new tg3_get_nstats() function. tg3_get_stats64() is recoded to call
this function and take tp->lock. The code that takes tp->lock in
tg3_calc_crc_errors() has been removed. Function signatures have been
cleaned up too.

Signed-off-by: Matt Carlson <[email protected]>
---
drivers/net/ethernet/broadcom/tg3.c | 43 ++++++++++++++++++-----------------
1 files changed, 22 insertions(+), 21 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index 97dcccd..76f33d5 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -8001,10 +8001,8 @@ static int tg3_chip_reset(struct tg3 *tp)
return 0;
}

-static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *,
- struct rtnl_link_stats64 *);
-static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *,
- struct tg3_ethtool_stats *);
+static void tg3_get_nstats(struct tg3 *, struct rtnl_link_stats64 *);
+static void tg3_get_estats(struct tg3 *, struct tg3_ethtool_stats *);

/* tp->lock is held. */
static int tg3_halt(struct tg3 *tp, int kind, int silent)
@@ -8025,7 +8023,7 @@ static int tg3_halt(struct tg3 *tp, int kind, int silent)

if (tp->hw_stats) {
/* Save the stats across chip resets... */
- tg3_get_stats64(tp->dev, &tp->net_stats_prev),
+ tg3_get_nstats(tp, &tp->net_stats_prev);
tg3_get_estats(tp, &tp->estats_prev);

/* And make sure the next sample is new data */
@@ -10125,7 +10123,7 @@ static inline u64 get_stat64(tg3_stat64_t *val)
return ((u64)val->high << 32) | ((u64)val->low);
}

-static u64 calc_crc_errors(struct tg3 *tp)
+static u64 tg3_calc_crc_errors(struct tg3 *tp)
{
struct tg3_hw_stats *hw_stats = tp->hw_stats;

@@ -10134,14 +10132,12 @@ static u64 calc_crc_errors(struct tg3 *tp)
GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701)) {
u32 val;

- spin_lock_bh(&tp->lock);
if (!tg3_readphy(tp, MII_TG3_TEST1, &val)) {
tg3_writephy(tp, MII_TG3_TEST1,
val | MII_TG3_TEST1_CRC_EN);
tg3_readphy(tp, MII_TG3_RXR_COUNTERS, &val);
} else
val = 0;
- spin_unlock_bh(&tp->lock);

tp->phy_crc_errors += val;

@@ -10155,8 +10151,7 @@ static u64 calc_crc_errors(struct tg3 *tp)
estats->member = old_estats->member + \
get_stat64(&hw_stats->member)

-static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *tp,
- struct tg3_ethtool_stats *estats)
+static void tg3_get_estats(struct tg3 *tp, struct tg3_ethtool_stats *estats)
{
struct tg3_ethtool_stats *old_estats = &tp->estats_prev;
struct tg3_hw_stats *hw_stats = tp->hw_stats;
@@ -10238,20 +10233,13 @@ static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *tp,
ESTAT_ADD(nic_tx_threshold_hit);

ESTAT_ADD(mbuf_lwm_thresh_hit);
-
- return estats;
}

-static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
- struct rtnl_link_stats64 *stats)
+static void tg3_get_nstats(struct tg3 *tp, struct rtnl_link_stats64 *stats)
{
- struct tg3 *tp = netdev_priv(dev);
struct rtnl_link_stats64 *old_stats = &tp->net_stats_prev;
struct tg3_hw_stats *hw_stats = tp->hw_stats;

- if (!hw_stats)
- return old_stats;
-
stats->rx_packets = old_stats->rx_packets +
get_stat64(&hw_stats->rx_ucast_packets) +
get_stat64(&hw_stats->rx_mcast_packets) +
@@ -10294,15 +10282,13 @@ static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
get_stat64(&hw_stats->tx_carrier_sense_errors);

stats->rx_crc_errors = old_stats->rx_crc_errors +
- calc_crc_errors(tp);
+ tg3_calc_crc_errors(tp);

stats->rx_missed_errors = old_stats->rx_missed_errors +
get_stat64(&hw_stats->rx_discards);

stats->rx_dropped = tp->rx_dropped;
stats->tx_dropped = tp->tx_dropped;
-
- return stats;
}

static int tg3_get_regs_len(struct net_device *dev)
@@ -12213,6 +12199,21 @@ static const struct ethtool_ops tg3_ethtool_ops = {
.set_rxfh_indir = tg3_set_rxfh_indir,
};

+static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
+ struct rtnl_link_stats64 *stats)
+{
+ struct tg3 *tp = netdev_priv(dev);
+
+ if (!tp->hw_stats)
+ return &tp->net_stats_prev;
+
+ spin_lock_bh(&tp->lock);
+ tg3_get_nstats(tp, stats);
+ spin_unlock_bh(&tp->lock);
+
+ return stats;
+}
+
static void tg3_set_rx_mode(struct net_device *dev)
{
struct tg3 *tp = netdev_priv(dev);
--
1.7.3.4

2012-02-29 00:58:41

by James Bottomley

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

On Tue, 2012-02-28 at 15:32 -0800, Matt Carlson wrote:
> On Mon, Feb 27, 2012 at 05:44:34PM -0600, James Bottomley wrote:
> > On Thu, 2012-02-23 at 23:55 +0100, Rafael J. Wysocki wrote:
> > > This message has been generated automatically as a part of a summary report
> > > of recent regressions.
> > >
> > > The following bug entry is on the current list of known regressions
> > > from 3.2. Please verify if it still should be listed and let the tracking team
> > > know (either way).
> > >
> > >
> > > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=42707
> > > Subject : Hang deconfiguring network interface (in shutdown) on 3.3-rc1
> > > Submitter : James Bottomley <[email protected]>
> > > Date : 2012-01-28 19:56 (27 days old)
> > > Message-ID : <[email protected]>
> > > References : http://marc.info/?l=linux-kernel&m=132778076214873&w=2
> >
> > Still present in 3.3-rc4; I've bisected it back to this commit:
> >
> > commit 92feeabf3f673767c6ee4cfc7fc224098446c1c1
> > Author: Matt Carlson <[email protected]>
> > Date: Thu Dec 8 14:40:14 2011 +0000
> >
> > tg3: Save stats across chip resets
> >
> > and sure enough, just reverting this single commit on 3.3-rc4 fixes the
> > problem.
> >
> > James
>
> Are you dealing with a bcm5700 or bcm5701 device?

Yes, this is it:

20:02.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5701 Gigabit Ethernet (rev 15)
Subsystem: Hewlett-Packard Company Core Lan 1000Base-T
Flags: bus master, 66MHz, medium devsel, latency 128, IRQ 72
Memory at ffffffff90000000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [40] PCI-X non-bridge device
Capabilities: [48] Power Management version 2
Capabilities: [50] Vital Product Data
Capabilities: [58] MSI: Enable- Count=1/8 Maskable- 64bit+
Kernel driver in use: tg3

> If so, can you try
> the following patch?
>
> Subject: [PATCH 1/1] tg3: Fix tg3_get_stats64 for 5700 / 5701 devs

Well, the patch needs some attention:

CC [M] drivers/net/ethernet/broadcom/tg3.o
drivers/net/ethernet/broadcom/tg3.c: In function 'tg3_get_estats':
drivers/net/ethernet/broadcom/tg3.c:9882: warning: 'return' with a value, in function returning void

It also didn't apply incredibly well (the fuzz factors and line offsets
are a lot higher than they should be):

patching file drivers/net/ethernet/broadcom/tg3.c
Hunk #1 succeeded at 7886 (offset -115 lines).
Hunk #2 succeeded at 7908 (offset -115 lines).
Hunk #3 succeeded at 9845 (offset -278 lines).
Hunk #4 succeeded at 9854 (offset -278 lines).
Hunk #5 succeeded at 9873 (offset -278 lines).
Hunk #6 succeeded at 9958 (offset -275 lines).
Hunk #7 succeeded at 10007 with fuzz 1 (offset -275 lines).
Hunk #8 succeeded at 10103 with fuzz 2 (offset -2096 lines).

but it seems to work.

Thanks,

James

2012-02-29 09:48:01

by Michael Chan

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1


On Tue, 2012-02-28 at 18:58 -0600, James Bottomley wrote:
> Well, the patch needs some attention:
>
> CC [M] drivers/net/ethernet/broadcom/tg3.o
> drivers/net/ethernet/broadcom/tg3.c: In function 'tg3_get_estats':
> drivers/net/ethernet/broadcom/tg3.c:9882: warning: 'return' with a
> value, in function returning void
>
> It also didn't apply incredibly well (the fuzz factors and line
> offsets
> are a lot higher than they should be):
>
> patching file drivers/net/ethernet/broadcom/tg3.c
> Hunk #1 succeeded at 7886 (offset -115 lines).
> Hunk #2 succeeded at 7908 (offset -115 lines).
> Hunk #3 succeeded at 9845 (offset -278 lines).
> Hunk #4 succeeded at 9854 (offset -278 lines).
> Hunk #5 succeeded at 9873 (offset -278 lines).
> Hunk #6 succeeded at 9958 (offset -275 lines).
> Hunk #7 succeeded at 10007 with fuzz 1 (offset -275 lines).
> Hunk #8 succeeded at 10103 with fuzz 2 (offset -2096 lines).
>
> but it seems to work.

I think Matt did the patch for the net-next tree. Here's the same patch
for the net tree which is the correct tree for this patch. Thanks.


Subject: [PATCH net] tg3: Fix tg3_get_stats64 for 5700 / 5701 devs

From: Matt Carlson <[email protected]>

tg3_get_stats64() takes tp->lock when dealing with non-serdes bcm5700
and bcm5701 devices. However, functions that call tg3_halt() have
already acquired tp->lock. When tg3_get_stats64() is called in
tg3_halt(), deadlock will occur.

This patch fixes the problem by separating the stat gathering code into
a new tg3_get_nstats() function. tg3_get_stats64() is recoded to call
this function and take tp->lock. The code that takes tp->lock in
tg3_calc_crc_errors() has been removed. Function signatures have been
cleaned up too.

Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: Michael Chan <[email protected]>
---
drivers/net/ethernet/broadcom/tg3.c | 45 ++++++++++++++++++-----------------
1 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index a1f2e0f..423d023 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -7886,10 +7886,8 @@ static int tg3_chip_reset(struct tg3 *tp)
return 0;
}

-static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *,
- struct rtnl_link_stats64 *);
-static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *,
- struct tg3_ethtool_stats *);
+static void tg3_get_nstats(struct tg3 *, struct rtnl_link_stats64 *);
+static void tg3_get_estats(struct tg3 *, struct tg3_ethtool_stats *);

/* tp->lock is held. */
static int tg3_halt(struct tg3 *tp, int kind, int silent)
@@ -7910,7 +7908,7 @@ static int tg3_halt(struct tg3 *tp, int kind, int silent)

if (tp->hw_stats) {
/* Save the stats across chip resets... */
- tg3_get_stats64(tp->dev, &tp->net_stats_prev),
+ tg3_get_nstats(tp, &tp->net_stats_prev),
tg3_get_estats(tp, &tp->estats_prev);

/* And make sure the next sample is new data */
@@ -9847,7 +9845,7 @@ static inline u64 get_stat64(tg3_stat64_t *val)
return ((u64)val->high << 32) | ((u64)val->low);
}

-static u64 calc_crc_errors(struct tg3 *tp)
+static u64 tg3_calc_crc_errors(struct tg3 *tp)
{
struct tg3_hw_stats *hw_stats = tp->hw_stats;

@@ -9856,14 +9854,12 @@ static u64 calc_crc_errors(struct tg3 *tp)
GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701)) {
u32 val;

- spin_lock_bh(&tp->lock);
if (!tg3_readphy(tp, MII_TG3_TEST1, &val)) {
tg3_writephy(tp, MII_TG3_TEST1,
val | MII_TG3_TEST1_CRC_EN);
tg3_readphy(tp, MII_TG3_RXR_COUNTERS, &val);
} else
val = 0;
- spin_unlock_bh(&tp->lock);

tp->phy_crc_errors += val;

@@ -9877,14 +9873,13 @@ static u64 calc_crc_errors(struct tg3 *tp)
estats->member = old_estats->member + \
get_stat64(&hw_stats->member)

-static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *tp,
- struct tg3_ethtool_stats *estats)
+static void tg3_get_estats(struct tg3 *tp, struct tg3_ethtool_stats *estats)
{
struct tg3_ethtool_stats *old_estats = &tp->estats_prev;
struct tg3_hw_stats *hw_stats = tp->hw_stats;

if (!hw_stats)
- return old_estats;
+ return;

ESTAT_ADD(rx_octets);
ESTAT_ADD(rx_fragments);
@@ -9963,20 +9958,13 @@ static struct tg3_ethtool_stats *tg3_get_estats(struct tg3 *tp,
ESTAT_ADD(nic_tx_threshold_hit);

ESTAT_ADD(mbuf_lwm_thresh_hit);
-
- return estats;
}

-static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
- struct rtnl_link_stats64 *stats)
+static void tg3_get_nstats(struct tg3 *tp, struct rtnl_link_stats64 *stats)
{
- struct tg3 *tp = netdev_priv(dev);
struct rtnl_link_stats64 *old_stats = &tp->net_stats_prev;
struct tg3_hw_stats *hw_stats = tp->hw_stats;

- if (!hw_stats)
- return old_stats;
-
stats->rx_packets = old_stats->rx_packets +
get_stat64(&hw_stats->rx_ucast_packets) +
get_stat64(&hw_stats->rx_mcast_packets) +
@@ -10019,15 +10007,13 @@ static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
get_stat64(&hw_stats->tx_carrier_sense_errors);

stats->rx_crc_errors = old_stats->rx_crc_errors +
- calc_crc_errors(tp);
+ tg3_calc_crc_errors(tp);

stats->rx_missed_errors = old_stats->rx_missed_errors +
get_stat64(&hw_stats->rx_discards);

stats->rx_dropped = tp->rx_dropped;
stats->tx_dropped = tp->tx_dropped;
-
- return stats;
}

static inline u32 calc_crc(unsigned char *buf, int len)
@@ -15409,6 +15395,21 @@ static void __devinit tg3_init_coal(struct tg3 *tp)
}
}

+static struct rtnl_link_stats64 *tg3_get_stats64(struct net_device *dev,
+ struct rtnl_link_stats64 *stats)
+{
+ struct tg3 *tp = netdev_priv(dev);
+
+ if (!tp->hw_stats)
+ return &tp->net_stats_prev;
+
+ spin_lock_bh(&tp->lock);
+ tg3_get_nstats(tp, stats);
+ spin_unlock_bh(&tp->lock);
+
+ return stats;
+}
+
static const struct net_device_ops tg3_netdev_ops = {
.ndo_open = tg3_open,
.ndo_stop = tg3_close,
--
1.7.1



2012-02-29 18:47:11

by David Miller

[permalink] [raw]
Subject: Re: [Bug #42707] Hang deconfiguring network interface (in shutdown) on 3.3-rc1

From: "Michael Chan" <[email protected]>
Date: Wed, 29 Feb 2012 01:33:37 -0800

> Subject: [PATCH net] tg3: Fix tg3_get_stats64 for 5700 / 5701 devs
>
> From: Matt Carlson <[email protected]>
>
> tg3_get_stats64() takes tp->lock when dealing with non-serdes bcm5700
> and bcm5701 devices. However, functions that call tg3_halt() have
> already acquired tp->lock. When tg3_get_stats64() is called in
> tg3_halt(), deadlock will occur.
>
> This patch fixes the problem by separating the stat gathering code into
> a new tg3_get_nstats() function. tg3_get_stats64() is recoded to call
> this function and take tp->lock. The code that takes tp->lock in
> tg3_calc_crc_errors() has been removed. Function signatures have been
> cleaned up too.
>
> Signed-off-by: Matt Carlson <[email protected]>
> Signed-off-by: Michael Chan <[email protected]>

Applied, thanks everyone.