2010-04-19 07:38:55

by David Miller

[permalink] [raw]
Subject: [GIT]: Networking


1) Fix TX lockups in forcedeth due to an incorrect chipset ID check
wrt. whether to enable a TX hw bug workaround or not. Fix from
Ayaz Abdulla.

2) Fix some virtualization problems by orphan'ing the SKB on TX
in tun driver. From Michael S. Tsirkin.

3) Some minor fallout from the slab.h cleanups in gigaset driver,
from Tilman Schmidt.

4) hdlc_ppp can crash on rmmod due to lack of PPP tx queue flush,
fix from Krzysztof Halasa.

5) Three fixes from Eric Dumazet:
a) ip_dev_loopback_xmit() needs to use netif_rx_ni() since it sometimes
is invoked from user context and therefore an explicit check and
run of softirqs is necessary.
b) dev_pic_tx() should not cache a socket TX queue selection unless
the socket cache'd dst matches the one currently hung off of the
skb
c) Fix lockdep false positives in fib_trie

6) AF_PACKET erroneously restricts to init_net in some ioctls, fix
from Daniel Lezcano.

7) iwlwifi active chain detection fix from Johannes Berg.

Please pull, thanks a lot!

The following changes since commit 13bd8e4673d527a9e48f41956b11d391e7c2cfe0:
Linus Torvalds (1):
Merge branch 'for-linus' of git://git.kernel.org/.../anholt/drm-intel

are available in the git repository at:

master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git master

Ayaz Abdulla (1):
forcedeth: fix tx limit2 flag check

Daniel Lezcano (1):
packet : remove init_net restriction

David S. Miller (1):
Merge branch 'master' of git://git.kernel.org/.../linville/wireless-2.6

Eric Dumazet (3):
fib: suppress lockdep-RCU false positive in FIB trie.
net: dev_pick_tx() fix
ip: Fix ip_dev_loopback_xmit()

Johannes Berg (1):
iwlwifi: work around bogus active chains detection

Krzysztof Halasa (1):
WAN: flush tx_queue in hdlc_ppp to prevent panic on rmmod hw_driver.

Michael S. Tsirkin (1):
tun: orphan an skb on tx

Tilman Schmidt (1):
gigaset: include cleanup cleanup

drivers/isdn/gigaset/bas-gigaset.c | 5 -----
drivers/isdn/gigaset/capi.c | 2 --
drivers/isdn/gigaset/common.c | 2 --
drivers/isdn/gigaset/gigaset.h | 2 +-
drivers/isdn/gigaset/i4l.c | 1 -
drivers/isdn/gigaset/interface.c | 1 -
drivers/isdn/gigaset/proc.c | 1 -
drivers/isdn/gigaset/ser-gigaset.c | 3 ---
drivers/isdn/gigaset/usb-gigaset.c | 4 ----
drivers/net/forcedeth.c | 2 +-
drivers/net/tun.c | 4 ++++
drivers/net/wan/hdlc_ppp.c | 6 ++++++
drivers/net/wireless/iwlwifi/iwl-calib.c | 12 ++++++++++++
net/core/dev.c | 8 ++++++--
net/ipv4/fib_trie.c | 4 +++-
net/ipv4/ip_output.c | 2 +-
net/ipv6/ip6_output.c | 2 +-
net/packet/af_packet.c | 2 --
18 files changed, 35 insertions(+), 28 deletions(-)


2010-04-19 17:27:46

by Ingo Molnar

[permalink] [raw]
Subject: tip: origin tree build failure, [patch] fix isdn/gigaset build failure


* David Miller <[email protected]> wrote:

> Tilman Schmidt (1):
> gigaset: include cleanup cleanup
>
> drivers/isdn/gigaset/bas-gigaset.c | 5 -----
> drivers/isdn/gigaset/capi.c | 2 --
> drivers/isdn/gigaset/common.c | 2 --
> drivers/isdn/gigaset/gigaset.h | 2 +-
> drivers/isdn/gigaset/i4l.c | 1 -
> drivers/isdn/gigaset/interface.c | 1 -
> drivers/isdn/gigaset/proc.c | 1 -
> drivers/isdn/gigaset/ser-gigaset.c | 3 ---
> drivers/isdn/gigaset/usb-gigaset.c | 4 ----

-tip testing triggered the following build failure (x86 allyesconfig):

drivers/isdn/gigaset/common.c: In function 'setflags':
drivers/isdn/gigaset/common.c:99: error: implicit declaration of function 'set_current_state'
drivers/isdn/gigaset/common.c:99: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/common.c:99: error: (Each undeclared identifier is reported only once
drivers/isdn/gigaset/common.c:99: error: for each function it appears in.)
drivers/isdn/gigaset/common.c:100: error: implicit declaration of function 'schedule_timeout'
drivers/isdn/gigaset/common.c: In function 'cleanup_cs':
drivers/isdn/gigaset/common.c:900: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/common.c: In function 'gigaset_start':
drivers/isdn/gigaset/common.c:942: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/common.c:942: error: implicit declaration of function 'schedule'
drivers/isdn/gigaset/common.c: In function 'gigaset_shutdown':
drivers/isdn/gigaset/common.c:978: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/common.c: In function 'gigaset_stop':
drivers/isdn/gigaset/common.c:1005: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
make[1]: *** [drivers/isdn/gigaset/common.o] Error 1
make: *** [drivers/isdn/gigaset/common.o] Error 2

Introduced by commit b91ecb00 that got pushed out today. That change removed
an implicit sched.h inclusion that came in via slab.h.

The patch below fixes it by adding the sched.h dependency.

Ingo

diff --git a/drivers/isdn/gigaset/common.c b/drivers/isdn/gigaset/common.c
index f6f45f2..a3aa17f 100644
--- a/drivers/isdn/gigaset/common.c
+++ b/drivers/isdn/gigaset/common.c
@@ -16,6 +16,7 @@
#include "gigaset.h"
#include <linux/module.h>
#include <linux/moduleparam.h>
+#include <linux/sched.h>

/* Version Information */
#define DRIVER_AUTHOR "Hansjoerg Lipp <[email protected]>, Tilman Schmidt <[email protected]>, Stefan Eilers"

2010-04-19 17:33:03

by David Miller

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure

From: Ingo Molnar <[email protected]>
Date: Mon, 19 Apr 2010 19:27:31 +0200

> Introduced by commit b91ecb00 that got pushed out today. That change removed
> an implicit sched.h inclusion that came in via slab.h.
>
> The patch below fixes it by adding the sched.h dependency.

Thanks Ingo, Linus please apply:

Acked-by: David S. Miller <[email protected]>

> Ingo
>
> diff --git a/drivers/isdn/gigaset/common.c b/drivers/isdn/gigaset/common.c
> index f6f45f2..a3aa17f 100644
> --- a/drivers/isdn/gigaset/common.c
> +++ b/drivers/isdn/gigaset/common.c
> @@ -16,6 +16,7 @@
> #include "gigaset.h"
> #include <linux/module.h>
> #include <linux/moduleparam.h>
> +#include <linux/sched.h>
>
> /* Version Information */
> #define DRIVER_AUTHOR "Hansjoerg Lipp <[email protected]>, Tilman Schmidt <[email protected]>, Stefan Eilers"

2010-04-19 18:05:34

by Ingo Molnar

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure


* David Miller <[email protected]> wrote:

> From: Ingo Molnar <[email protected]>
> Date: Mon, 19 Apr 2010 19:27:31 +0200
>
> > Introduced by commit b91ecb00 that got pushed out today. That change removed
> > an implicit sched.h inclusion that came in via slab.h.
> >
> > The patch below fixes it by adding the sched.h dependency.
>
> Thanks Ingo, Linus please apply:
>
> Acked-by: David S. Miller <[email protected]>

Note, i just found that my patch is not enough as we fail the build elsewhere as well:

drivers/isdn/gigaset/proc.c:52: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/proc.c:52: error: (Each undeclared identifier is reported only once
drivers/isdn/gigaset/proc.c:52: error: for each function it appears in.)
drivers/isdn/gigaset/proc.c:52: error: implicit declaration of function 'schedule'
drivers/isdn/gigaset/interface.c:49: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/interface.c:49: error: (Each undeclared identifier is reported only once
drivers/isdn/gigaset/interface.c:49: error: for each function it appears in.)
drivers/isdn/gigaset/interface.c:49: error: implicit declaration of function 'schedule'
drivers/isdn/gigaset/interface.c:83: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
drivers/isdn/gigaset/ev-layer.c:981: error: 'TASK_NORMAL' undeclared (first use in this function)
drivers/isdn/gigaset/ev-layer.c:981: error: (Each undeclared identifier is reported only once
drivers/isdn/gigaset/ev-layer.c:981: error: for each function it appears in.)
drivers/isdn/gigaset/ev-layer.c:1001: error: 'TASK_NORMAL' undeclared (first use in this function)
drivers/isdn/gigaset/ev-layer.c:1495: error: 'TASK_NORMAL' undeclared (first use in this function)

i'd suggest a revert of b91ecb00 instead.

Ingo

2010-04-19 18:17:29

by Linus Torvalds

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure



On Mon, 19 Apr 2010, Ingo Molnar wrote:
>
> Note, i just found that my patch is not enough as we fail the build elsewhere as well:

Maybe add the #include <linux/sched.h> into gigaset.h, instead of
common.c?

IOW..

Linus
---
drivers/isdn/gigaset/gigaset.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/isdn/gigaset/gigaset.h b/drivers/isdn/gigaset/gigaset.h
index d32efb6..05947f9 100644
--- a/drivers/isdn/gigaset/gigaset.h
+++ b/drivers/isdn/gigaset/gigaset.h
@@ -20,6 +20,7 @@
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt

#include <linux/kernel.h>
+#include <linux/sched.h>
#include <linux/compiler.h>
#include <linux/types.h>
#include <linux/ctype.h>

2010-04-19 19:02:47

by Linus Torvalds

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure



On Mon, 19 Apr 2010, Linus Torvalds wrote:
>
> Maybe add the #include <linux/sched.h> into gigaset.h, instead of
> common.c?

This compiled for me, although the only thing I tried was just turning all
the gigaset options to 'y'. Maybe some other config doesn't work. So I
committed it as likely to fix things.

Linus

2010-04-19 19:05:57

by David Miller

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure

From: Linus Torvalds <[email protected]>
Date: Mon, 19 Apr 2010 12:00:49 -0700 (PDT)

> On Mon, 19 Apr 2010, Linus Torvalds wrote:
>>
>> Maybe add the #include <linux/sched.h> into gigaset.h, instead of
>> common.c?
>
> This compiled for me, although the only thing I tried was just turning all
> the gigaset options to 'y'. Maybe some other config doesn't work. So I
> committed it as likely to fix things.

Thanks Linus.

Ingo, let us know if there is still some problems in your
build tests.

2010-04-19 19:54:18

by Ingo Molnar

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure


* Linus Torvalds <[email protected]> wrote:

> On Mon, 19 Apr 2010, Linus Torvalds wrote:
> >
> > Maybe add the #include <linux/sched.h> into gigaset.h, instead of
> > common.c?
>
> This compiled for me, although the only thing I tried was just turning all
> the gigaset options to 'y'. Maybe some other config doesn't work. So I
> committed it as likely to fix things.

I'll check it tomorrow - but i'd expect it to be enough, plus the all-yes
thing is that matters most in practice in any case.

Thanks,

Ingo

2010-04-19 21:01:53

by Ingo Molnar

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure


* David Miller <[email protected]> wrote:

> From: Linus Torvalds <[email protected]>
> Date: Mon, 19 Apr 2010 12:00:49 -0700 (PDT)
>
> > On Mon, 19 Apr 2010, Linus Torvalds wrote:
> >>
> >> Maybe add the #include <linux/sched.h> into gigaset.h, instead of
> >> common.c?
> >
> > This compiled for me, although the only thing I tried was just turning all
> > the gigaset options to 'y'. Maybe some other config doesn't work. So I
> > committed it as likely to fix things.
>
> Thanks Linus.
>
> Ingo, let us know if there is still some problems in your
> build tests.

I did a few tests and it looks good here!

Thanks,

Ingo

2010-04-19 21:57:57

by Tilman Schmidt

[permalink] [raw]
Subject: Re: tip: origin tree build failure, [patch] fix isdn/gigaset build failure

Am 19.04.2010 20:14 schrieb Linus Torvalds:
> Maybe add the #include <linux/sched.h> into gigaset.h, instead of
> common.c?

Yes, that's the correct fix. Thanks a lot!

For the record, the cause of the build failure was my removal of
#include <linux/usb.h> from gigaset.h, entailing the loss of one
indirect inclusion of sched.h. There's another indirect inclusion
of sched.h from gigaset.h via interrupt.h, hardirq.h and
smp_lock.h, but that one only operates if CONFIG_PREEMPT is set.
So the reason I did not see the build failure myself was that I
only tested with CONFIG_PREEMPT=y.

> ---
> drivers/isdn/gigaset/gigaset.h | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/isdn/gigaset/gigaset.h b/drivers/isdn/gigaset/gigaset.h
> index d32efb6..05947f9 100644
> --- a/drivers/isdn/gigaset/gigaset.h
> +++ b/drivers/isdn/gigaset/gigaset.h
> @@ -20,6 +20,7 @@
> #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
>
> #include <linux/kernel.h>
> +#include <linux/sched.h>
> #include <linux/compiler.h>
> #include <linux/types.h>
> #include <linux/ctype.h>

Acked-by: Tilman Schmidt <[email protected]>

in case it still matters.

Thanks again,
Tilman

--
Tilman Schmidt E-Mail: [email protected]
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Unge?ffnet mindestens haltbar bis: (siehe R?ckseite)


Attachments:
signature.asc (259.00 B)
OpenPGP digital signature