GitHub/MotorolaMobilityLLC/kernel-slsi.git
14 years agonet: Make GRETH driver depend on SPARC.
David S. Miller [Fri, 19 Feb 2010 07:32:26 +0000 (23:32 -0800)]
net: Make GRETH driver depend on SPARC.

Reported by Stephen Rothwell.

Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/sis190.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 20:00:17 +0000 (20:00 +0000)]
drivers/net/sis190.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level> and netif_msg_<test>
Remove local #define net_<test> macros
Remove periods from formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/tg3.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 19:44:19 +0000 (19:44 +0000)]
drivers/net/tg3.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Remove periods from most formats
Coalesce long formats
Use printk_once

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoOrphan DECnet
Chrissie Caulfield [Thu, 18 Feb 2010 01:33:13 +0000 (01:33 +0000)]
Orphan DECnet

Due to lack of time, space, motivation, hardware and probably expertise,
I have reluctantly decided to orphan the DECnet code in the kernel.

Judging by the deafening silence on the linux-decnet mailing list I
suspect it's either not being used anyway, or the few people that are
using it are happy with their older kernels.

Signed-Off-By: Christine Caulfield <christine.caulfield@googlemail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobe2net: free tx buffers when completions never arrive
Sathya Perla [Thu, 18 Feb 2010 00:37:17 +0000 (00:37 +0000)]
be2net: free tx buffers when completions never arrive

be2net: free tx buffers when completions never arrive

In cases like when a pci device is disconnected on an error,
pending tx completions will never arrive. Unmap and free such
buffers in the tx cleanup path.

Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoxfrm: Introduce LINUX_MIB_XFRMFWDHDRERROR
jamal [Thu, 18 Feb 2010 03:35:07 +0000 (03:35 +0000)]
xfrm: Introduce LINUX_MIB_XFRMFWDHDRERROR

XFRMINHDRERROR counter is ambigous when validating forwarding
path. It makes it tricky to debug when you have both in and fwd
validation.

Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: TCP thin dupack
Andreas Petlund [Thu, 18 Feb 2010 04:48:19 +0000 (04:48 +0000)]
net: TCP thin dupack

This patch enables fast retransmissions after one dupACK for
TCP if the stream is identified as thin. This will reduce
latencies for thin streams that are not able to trigger fast
retransmissions due to high packet interarrival time. This
mechanism is only active if enabled by iocontrol or syscontrol
and the stream is identified as thin.

Signed-off-by: Andreas Petlund <apetlund@simula.no>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: TCP thin linear timeouts
Andreas Petlund [Thu, 18 Feb 2010 02:47:01 +0000 (02:47 +0000)]
net: TCP thin linear timeouts

This patch will make TCP use only linear timeouts if the
stream is thin. This will help to avoid the very high latencies
that thin stream suffer because of exponential backoff. This
mechanism is only active if enabled by iocontrol or syscontrol
and the stream is identified as thin. A maximum of 6 linear
timeouts is tried before exponential backoff is resumed.

Signed-off-by: Andreas Petlund <apetlund@simula.no>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: TCP thin-stream detection
Andreas Petlund [Thu, 18 Feb 2010 02:45:45 +0000 (02:45 +0000)]
net: TCP thin-stream detection

Inline function to dynamically detect thin streams based on
the number of packets in flight. Used to dynamically trigger
thin-stream mechanisms if enabled by ioctl or sysctl.

Signed-off-by: Andreas Petlund <apetlund@simula.no>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotokenring: convert to use netdev_for_each_mc_addr
Jiri Pirko [Thu, 18 Feb 2010 02:47:07 +0000 (02:47 +0000)]
tokenring: convert to use netdev_for_each_mc_addr

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agostaging: convert to use netdev_for_each_mc_addr
Jiri Pirko [Thu, 18 Feb 2010 05:10:14 +0000 (05:10 +0000)]
staging: convert to use netdev_for_each_mc_addr

removed needless checks in arlan-main.c and slicoss.c
fixed bug in et131x_netdev.c to actually fill addresses in.

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet/usb: convert to use netdev_for_each_mc_addr
Jiri Pirko [Thu, 18 Feb 2010 04:02:26 +0000 (04:02 +0000)]
net/usb: convert to use netdev_for_each_mc_addr

also removed needless checks in smsc95xx

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotulip: convert to use netdev_for_each_mc_addr
Jiri Pirko [Thu, 18 Feb 2010 03:34:54 +0000 (03:34 +0000)]
tulip: convert to use netdev_for_each_mc_addr

also bug in de2104x.c was corrected:
for (i = 0; i < 32; i++) loop should be outside mc_list iteration.

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: convert multiple drivers to use netdev_for_each_mc_addr, part2
Jiri Pirko [Thu, 18 Feb 2010 00:42:54 +0000 (00:42 +0000)]
net: convert multiple drivers to use netdev_for_each_mc_addr, part2

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agosmsc911x: convert to use netdev_for_each_mc_addr
Jiri Pirko [Wed, 17 Feb 2010 23:22:38 +0000 (23:22 +0000)]
smsc911x: convert to use netdev_for_each_mc_addr

also removed unnecessary checks

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years ago3c5xx: use netdev_mc_* helpers
Jiri Pirko [Wed, 17 Feb 2010 23:12:15 +0000 (23:12 +0000)]
3c5xx: use netdev_mc_* helpers

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodepca: remove forgotten needless inicialization
Jiri Pirko [Wed, 17 Feb 2010 22:55:07 +0000 (22:55 +0000)]
depca: remove forgotten needless inicialization

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoconst: struct nla_policy
Alexey Dobriyan [Thu, 18 Feb 2010 08:14:31 +0000 (08:14 +0000)]
const: struct nla_policy

Make remaining netlink policies as const.
Fixup coding style where needed.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoipv6: drop unused "dev" arg of icmpv6_send()
Alexey Dobriyan [Thu, 18 Feb 2010 08:25:24 +0000 (08:25 +0000)]
ipv6: drop unused "dev" arg of icmpv6_send()

Dunno, what was the idea, it wasn't used for a long time.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoipv6: use standard lists for FIB walks
Alexey Dobriyan [Thu, 18 Feb 2010 08:13:30 +0000 (08:13 +0000)]
ipv6: use standard lists for FIB walks

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoipv6: remove stale MIB definitions
Alexey Dobriyan [Thu, 18 Feb 2010 08:12:20 +0000 (08:12 +0000)]
ipv6: remove stale MIB definitions

ICMP6 MIB statistics was per-netns for quite a time.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoAF_UNIX: update locking comment
Stephen Hemminger [Thu, 18 Feb 2010 22:12:06 +0000 (14:12 -0800)]
AF_UNIX: update locking comment

The lock used in unix_state_lock() is a spin_lock not reader-writer.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agomacvtap: add GSO/csum offload support
Arnd Bergmann [Thu, 18 Feb 2010 05:48:17 +0000 (05:48 +0000)]
macvtap: add GSO/csum offload support

Added flags field to macvtap_queue to enable/disable processing of
virtio_net_hdr via IFF_VNET_HDR. This flag is checked to prepend virtio_net_hdr
in the receive path and process/skip virtio_net_hdr in the send path.

Original patch by Sridhar, further changes by Arnd.

Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet/macvtap: add vhost support
Arnd Bergmann [Thu, 18 Feb 2010 05:46:50 +0000 (05:46 +0000)]
net/macvtap: add vhost support

This adds support for passing a macvtap file descriptor into
vhost-net, much like we already do for tun/tap.

Most of the new code is taken from the respective patch
in the tun driver and may get consolidated in the future.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agomacvtap: rework object lifetime rules
Arnd Bergmann [Thu, 18 Feb 2010 05:45:36 +0000 (05:45 +0000)]
macvtap: rework object lifetime rules

This reworks the change done by the previous patch
in a more complete way.

The original macvtap code has a number of problems
resulting from the use of RCU for protecting the
access to struct macvtap_queue from open files.

This includes
- need for GFP_ATOMIC allocations for skbs
- potential deadlocks when copy_*_user sleeps
- inability to work with vhost-net

Changing the lifetime of macvtap_queue to always
depend on the open file solves all these. The
RCU reference simply moves one step down to
the reference on the macvlan_dev, which we
only need for nonblocking operations.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonetfilter: nf_defrag_ipv4: fix compilation error with NF_CONNTRACK=n
Patrick McHardy [Thu, 18 Feb 2010 18:04:44 +0000 (19:04 +0100)]
netfilter: nf_defrag_ipv4: fix compilation error with NF_CONNTRACK=n

As reported by Randy Dunlap <randy.dunlap@oracle.com>, compilation
of nf_defrag_ipv4 fails with:

include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'

net/nf_conntrack.h must not be included with NF_CONNTRACK=n, add a
few #ifdefs. Long term the header file should be fixed to be usable
even with NF_CONNTRACK=n.

Tested-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
14 years agoipvs: SCTP Trasport Loadbalancing Support
Venkata Mohan Reddy [Thu, 18 Feb 2010 11:31:05 +0000 (12:31 +0100)]
ipvs: SCTP Trasport Loadbalancing Support

Enhance IPVS to load balance SCTP transport protocol packets. This is done
based on the SCTP rfc 4960. All possible control chunks have been taken
care. The state machine used in this code looks some what lengthy. I tried
to make the state machine easy to understand.

Signed-off-by: Venkata Mohan Reddy Koppula <mohanreddykv@gmail.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Patrick McHardy <kaber@trash.net>
14 years agoMerge branch 'ebt_config_compat_v4' of git://git.breakpoint.cc/fw/nf-next-2.6
Patrick McHardy [Thu, 18 Feb 2010 10:41:39 +0000 (11:41 +0100)]
Merge branch 'ebt_config_compat_v4' of git://git.breakpoint.cc/fw/nf-next-2.6

14 years agoIPv6: convert mc_lock to spinlock
Stephen Hemminger [Thu, 18 Feb 2010 02:48:44 +0000 (18:48 -0800)]
IPv6: convert mc_lock to spinlock

Only used for writing, so convert to spinlock

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/tehuti.c: Reapply use DEFINE_PCI_DEVICE_TABLE()
Joe Perches [Thu, 18 Feb 2010 02:48:11 +0000 (18:48 -0800)]
drivers/net/tehuti.c: Reapply use DEFINE_PCI_DEVICE_TABLE()

Commit 865a21a5e3d1b384c559a44c898fcad93e187b82 overwrote
commit a3aa18842a5303fc28fcc4d57dbd16618bd830a0

Fix it.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/yellowfin.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:02:02 +0000 (15:02 +0000)]
drivers/net/yellowfin.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Convert formats like %8.8 to %08
Remove periods from formats
Coalesce long formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/sky2.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:59 +0000 (15:01 +0000)]
drivers/net/sky2.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/skge.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:58 +0000 (15:01 +0000)]
drivers/net/skge.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Checkpatch cleaning

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/skge.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:57 +0000 (15:01 +0000)]
drivers/net/skge.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/pci-skeleton.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:55 +0000 (15:01 +0000)]
drivers/net/pci-skeleton.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Checkpatch cleaning
Convert formats like 0x%08x to %#08x
Remove periods from formats
Coalesce long formats
Use print_hex_dump

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/cnic.c: Use (pr|netdev)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:54 +0000 (15:01 +0000)]
drivers/net/cnic.c: Use (pr|netdev)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Remove periods from formats
Coalesce long formats
Use __func__

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/cassini.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:53 +0000 (15:01 +0000)]
drivers/net/cassini.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Remove periods from formats
Coalesce long formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/bnx2x: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:52 +0000 (15:01 +0000)]
drivers/net/bnx2x: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Convert struct bnx2x member msglevel to msg_enable for netif_msg_<foo> macros
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Coalesce long formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/bnx2.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:51 +0000 (15:01 +0000)]
drivers/net/bnx2.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Remove periods from formats
Coalesce long formats
Coalesce some printks

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/b44.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:50 +0000 (15:01 +0000)]
drivers/net/b44.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Remove periods from formats
Coalesce long formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/8139too.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:49 +0000 (15:01 +0000)]
drivers/net/8139too.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Convert formats like %8.8 to %08
Remove periods from formats
Coalesce long formats
Use print_hex_dump

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/8139cp.c: Use (pr|netdev|netif)_<level> macro helpers
Joe Perches [Wed, 17 Feb 2010 15:01:48 +0000 (15:01 +0000)]
drivers/net/8139cp.c: Use (pr|netdev|netif)_<level> macro helpers

Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
Remove #define PFX
Use pr_<level>
Use netdev_<level>
Use netif_<level>
Remove periods from formats
Coalesce long formats

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Update version to 3.108
Matt Carlson [Wed, 17 Feb 2010 15:17:05 +0000 (15:17 +0000)]
tg3: Update version to 3.108

This patch updates the tg3 version to 3.108.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Push phylib definitions to phylib
Matt Carlson [Wed, 17 Feb 2010 15:17:04 +0000 (15:17 +0000)]
tg3: Push phylib definitions to phylib

This patch pushes phylib definitions out to phylib headers.  For phy
IDs, this removes some code duplication.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Rename tg3 phy ID preprocessor definitions
Matt Carlson [Wed, 17 Feb 2010 15:17:03 +0000 (15:17 +0000)]
tg3: Rename tg3 phy ID preprocessor definitions

The phylib presents the phy ID in a different format than the one tg3
has traditionally used.  To highlight the distinction, this patch
prepends the tg3 native phy ID format with TG3.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Reformat SSID to phy ID table
Matt Carlson [Wed, 17 Feb 2010 15:17:02 +0000 (15:17 +0000)]
tg3: Reformat SSID to phy ID table

This patch reformats the SSID to phy ID table, replacing constants with
preprocessor definitions.  This patch is also prep work for the
following patch, which will push line lengths beyond 80 chars.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Discover phy address once
Matt Carlson [Wed, 17 Feb 2010 15:17:01 +0000 (15:17 +0000)]
tg3: Discover phy address once

The phy address will not change after it has been identified.  Move the
discovery code to a location that only gets executed once.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Reduce indent level of tg3_rx_prodring_alloc
Matt Carlson [Wed, 17 Feb 2010 15:17:00 +0000 (15:17 +0000)]
tg3: Reduce indent level of tg3_rx_prodring_alloc

This patch adds an inverted "jumbo ring enable" test and jumps to the exit
if it succeeds.  The change reduces the indent level of the remaining
code making it more readable.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Rename TG3_FLG3_RGMII_STD_IBND_DISABLE
Matt Carlson [Wed, 17 Feb 2010 15:16:59 +0000 (15:16 +0000)]
tg3: Rename TG3_FLG3_RGMII_STD_IBND_DISABLE

The STD part of this preprocessor definition is a bit of a misnomer.
This flag is a coarse control of the RGMII inband status facilities.
This patch renames the definition to be more accurate.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Add more partno entries for fallback path
Matt Carlson [Wed, 17 Feb 2010 15:16:58 +0000 (15:16 +0000)]
tg3: Add more partno entries for fallback path

This patch adds 57765 asic partno entries for the path executed if VPD
is not present in NVRAM.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Allow phylib flowctrl changes anytime
Matt Carlson [Wed, 17 Feb 2010 15:16:57 +0000 (15:16 +0000)]
tg3: Allow phylib flowctrl changes anytime

This patch loosens the restriction that the phylib interface must be up
and running to change the flow control parameters.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Add support for 2 new selfboot formats
Matt Carlson [Wed, 17 Feb 2010 15:16:56 +0000 (15:16 +0000)]
tg3: Add support for 2 new selfboot formats

This patch adds new offsets to the bootcode version extraction code to
support NVRAM format versions 4 and 5.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Make 57791 and 57795 10/100 only
Matt Carlson [Wed, 17 Feb 2010 15:16:55 +0000 (15:16 +0000)]
tg3: Make 57791 and 57795 10/100 only

This patch adds the 57791 and 57795 to the list of devices that only
support 10 and 100 Mbps speeds.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotg3: Enforce DMA mapping / skb assignment ordering
Matt Carlson [Wed, 17 Feb 2010 15:16:54 +0000 (15:16 +0000)]
tg3: Enforce DMA mapping / skb assignment ordering

Michael Chan noted that there is nothing in the code that would prevent
the compiler from delaying the access of the "mapping" member of the
newly arrived packet until much later.  If this happened after the
skb = NULL assignment, it is possible for the driver to pass a bad
dma_addr value to pci_unmap_single().  To enforce this ordering, we need
a write memory barrier.  The pairing read memory barrier already exists
in tg3_rx_prodring_xfer() under the comments starting with
"Ensure that updates to the...".

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agotun: socket filter support
Michael S. Tsirkin [Sun, 14 Feb 2010 01:01:10 +0000 (01:01 +0000)]
tun: socket filter support

This patch adds Linux Socket Filter support to
tun driver.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: export attach/detach filter routines
Michael S. Tsirkin [Sun, 14 Feb 2010 01:01:00 +0000 (01:01 +0000)]
net: export attach/detach filter routines

Export sk_attach_filter/sk_detach_filter routines,
so that tun module can use them.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agochelsio: convert to use netdev_for_each_mc_addr
Jiri Pirko [Wed, 17 Feb 2010 11:56:45 +0000 (11:56 +0000)]
chelsio: convert to use netdev_for_each_mc_addr

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agocxgb3: convert to use netdev_for_each_addr
Jiri Pirko [Wed, 17 Feb 2010 12:27:14 +0000 (12:27 +0000)]
cxgb3: convert to use netdev_for_each_addr

Removed whole t3_rx_mode structure and appropriate helpers cause they are no
longer needed.

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agosmsc911x: replace manual phy lookup.
kirjanov@gmail.com [Tue, 16 Feb 2010 21:54:58 +0000 (21:54 +0000)]
smsc911x: replace manual phy lookup.

Use phy_find_first() function instead of manual lookup.

Signed-off-by: Denis Kirjanov <kirjanov@gmail.com>
Reviewed-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: bug fix for vlan + gro issue
Ajit Khaparde [Tue, 16 Feb 2010 20:25:43 +0000 (20:25 +0000)]
net: bug fix for vlan + gro issue

Traffic (tcp) doesnot start on a vlan interface when gro is enabled.
Even the tcp handshake was not taking place.
This is because, the eth_type_trans call before the netif_receive_skb
in napi_gro_finish() resets the skb->dev to napi->dev from the previously
set vlan netdev interface. This causes the ip_route_input to drop the
incoming packet considering it as a packet coming from a martian source.

I could repro this on 2.6.32.7 (stable) and 2.6.33-rc7.
With this fix, the traffic starts and the test runs fine on both vlan
and non-vlan interfaces.

CC: Herbert Xu <herbert@gondor.apana.org.au>
CC: Patrick McHardy <kaber@trash.net>
Signed-off-by: Ajit Khaparde <ajitk@serverengines.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agomv643xx_eth: fix missing validate_addr hook
kirjanov@gmail.com [Tue, 16 Feb 2010 20:40:11 +0000 (20:40 +0000)]
mv643xx_eth: fix missing validate_addr hook

Fix missing validate_addr hook.

Signed-off-by: Denis Kirjanov <kirjanov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: Add Aeroflex Gaisler 10/100/1G Ethernet MAC driver
Kristoffer Glembo [Mon, 15 Feb 2010 03:33:44 +0000 (03:33 +0000)]
net: Add Aeroflex Gaisler 10/100/1G Ethernet MAC driver

Adds device driver for Aeroflex Gaisler 10/100 and 10/100/1G Ethernet
MAC IP cores.

Signed-off-by: Kristoffer Glembo <kristoffer@gaisler.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agovia-velocity: Enable scatter/gather IO by default
Simon Kagstrom [Thu, 11 Feb 2010 05:39:55 +0000 (05:39 +0000)]
via-velocity: Enable scatter/gather IO by default

Reduces CPU utilization significantly with sendfile for example.

Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoipg: Remove device claimed by dl2k from pci id table
Jeff Mahoney [Thu, 11 Feb 2010 10:26:38 +0000 (10:26 +0000)]
ipg: Remove device claimed by dl2k from pci id table

This patch removes D-Link DGE-550T PCI ID (1186:4000) from the ipg
driver. The ipg driver is for IP2000-based cards and the DGE-550T is
a DL2000-based card. The driver loads and works for a few moments, but
once a real workload is applied it stops operating. The ipg driver
claimed this ID since it was introduced in 2.6.24 and it's forced many
users to blacklist it.

The correct driver for this hardware is the dl2k driver, which has been
claiming this PCI ID since the 2.4 days.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoxfrm: Revert false event eliding commits.
David S. Miller [Wed, 17 Feb 2010 21:41:40 +0000 (13:41 -0800)]
xfrm: Revert false event eliding commits.

As reported by Alexey Dobriyan:

--------------------
setkey now takes several seconds to run this simple script
and it spits "recv: Resource temporarily unavailable" messages.

#!/usr/sbin/setkey -f
flush;
spdflush;

add A B ipcomp 44 -m tunnel -C deflate;
add B A ipcomp 45 -m tunnel -C deflate;

spdadd A B any -P in ipsec
        ipcomp/tunnel/192.168.1.2-192.168.1.3/use;
spdadd B A any -P out ipsec
        ipcomp/tunnel/192.168.1.3-192.168.1.2/use;
--------------------

Obviously applications want the events even when the table
is empty.  So we cannot make this behavioral change.

Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoSiS190/191 half-duplex initialization fix
Riccardo Ghetta [Wed, 17 Feb 2010 09:28:58 +0000 (09:28 +0000)]
SiS190/191 half-duplex initialization fix

Adds half-duplex specific setup code (taken from SiS own GPL driver).
Without those, half-duplex connections are very unreliable, often
working on small transfers and failing after a while.

Signed-off-by: Riccardo Ghetta <birrachiara@tin.it>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoethtool: Don't flush n-tuple list from ethtool_reset()
Ben Hutchings [Wed, 17 Feb 2010 09:26:54 +0000 (09:26 +0000)]
ethtool: Don't flush n-tuple list from ethtool_reset()

The n-tuple list should be flushed if and only if the ETH_RESET_FILTER
flag is set and the driver is able to reset filtering/flow direction
hardware without also resetting a component whose flag is not set.
This test is best left to the driver.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: version number and date
Vladislav Zolotarov [Wed, 17 Feb 2010 02:05:54 +0000 (02:05 +0000)]
bnx2x: version number and date

Updated release version and date: 1.52.1-6 and 2010/02/16

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: Use firmware 5.2.13
Vladislav Zolotarov [Wed, 17 Feb 2010 21:35:01 +0000 (13:35 -0800)]
bnx2x: Use firmware 5.2.13

Switch to the new firmware version (5.2.13).

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: FW 5.2.13
Vladislav Zolotarov [Wed, 17 Feb 2010 21:33:02 +0000 (13:33 -0800)]
bnx2x: FW 5.2.13

New firmware version (5.2.13).

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: fix in 57710 self-test
Vladislav Zolotarov [Wed, 17 Feb 2010 02:04:00 +0000 (02:04 +0000)]
bnx2x: fix in 57710 self-test

Bug fix: Use the last unicast entry in CAM in bnx2x_test_int(). Relevant for 57710 only.

Author: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: Do not allow enabling LRO if disable_tpa=1
Vladislav Zolotarov [Wed, 17 Feb 2010 02:03:40 +0000 (02:03 +0000)]
bnx2x: Do not allow enabling LRO if disable_tpa=1

Bug fix: Do not allow enabling LRO if disable_tpa=1.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: clean up in case of error in bnx2x_init_hw()
Vladislav Zolotarov [Wed, 17 Feb 2010 02:03:33 +0000 (02:03 +0000)]
bnx2x: clean up in case of error in bnx2x_init_hw()

Bug fix: clean up MCP state in case of error in bnx2x_init_hw().

Author: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobnx2x: Properly release allocated MSI-X/MSI vectors
Vladislav Zolotarov [Wed, 17 Feb 2010 02:03:27 +0000 (02:03 +0000)]
bnx2x: Properly release allocated MSI-X/MSI vectors

Bug fix: Properly release allocated MSI-X/MSI vectors if ifup failed
due to lack of memory.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agodrivers/net/usb: Use netif_<level> logging facilities
Joe Perches [Wed, 17 Feb 2010 10:30:24 +0000 (10:30 +0000)]
drivers/net/usb: Use netif_<level> logging facilities

Convert from:
if (netif_msg_<foo>(priv))
dev_<level>(dev...
to
netif_<level>(priv, foo, dev...

Also convert a few:

if (i < REG_TIMEOUT) {
etc...
return ret;
       }
to
if (i >= REG_TIMEOUT)
goto fail;
etc...
return ret;

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agousbnet: Convert dev(dbg|err|warn|info) macros to netdev_<level>
Joe Perches [Wed, 17 Feb 2010 10:30:23 +0000 (10:30 +0000)]
usbnet: Convert dev(dbg|err|warn|info) macros to netdev_<level>

These macros are too similar to the dev_<level> equivalents
but take a usbnet * argument.  Convert them to the recently
introduced netdev_<level> macros and remove the old macros.

The old macros had "\n" appended to the format string.
Add the "\n" to the converted uses.

Some existing uses of the dev<foo> macros in cdc_eem.c
probably mistakenly had trailing "\n".  No "\n" added there.

Fix net1080 this/other log message inversion.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobe2net: implement pci shutdown handler
Sathya Perla [Wed, 17 Feb 2010 01:35:37 +0000 (01:35 +0000)]
be2net: implement pci shutdown handler

Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobe2net: fix rx-path to ignore a flush completion
Sathya Perla [Wed, 17 Feb 2010 01:35:26 +0000 (01:35 +0000)]
be2net: fix rx-path to ignore a flush completion

The flush compl (compl with numfrags == 0; no data) is rcvd
from hw to indicate completion of RXQ destory operation. Fix
the RX path to not process it as RX data.

Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobe2net: don't rearm mcc cq when device is not open
Sathya Perla [Wed, 17 Feb 2010 01:35:11 +0000 (01:35 +0000)]
be2net: don't rearm mcc cq when device is not open

When an MCC cmd is issued (via a netdev/ethtool op)
while the device is not open, the MCC CQ gets processed but the EQ
is not processed (as isr is not registered.) This can cause the EQ
to become full. So, while the device is not open, CQ must not be re-armed
to prevent EQ entries.

Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agobe2net: a mini optimization in rx_compl_process() code
Sathya Perla [Wed, 17 Feb 2010 01:34:22 +0000 (01:34 +0000)]
be2net: a mini optimization in rx_compl_process() code

Introduce unlikely() for skb alloc failure and vlanf checks...

Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoqlge: Fix occasional loopback test failure.
Ron Mercer [Wed, 17 Feb 2010 06:41:23 +0000 (06:41 +0000)]
qlge: Fix occasional loopback test failure.

On some servers we see the cleaning of the RX queue finish before all
the loopback packets are sent out.  This delay allows the queues to
settle before checking for successful completion.
Also, delay completion so link has time to come back up.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoqlge: Fix bonding mac address bug.
Ron Mercer [Wed, 17 Feb 2010 06:41:22 +0000 (06:41 +0000)]
qlge: Fix bonding mac address bug.

Use local copy of current mac address when initializing.  In bonding
testing we saw cases where dev_addr was out of data causing failover
errors.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoqlge: Fix dropping of large non-TCP/UDP frames.
Ron Mercer [Wed, 17 Feb 2010 06:41:21 +0000 (06:41 +0000)]
qlge: Fix dropping of large non-TCP/UDP frames.

This was found with pings that were large enough to span multiple rx
buffers.  The split frame logic handles this case nicely.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoll_temac: Fix MAC address configuration from userland
Steven J. Magnani [Wed, 17 Feb 2010 07:55:07 +0000 (07:55 +0000)]
ll_temac: Fix MAC address configuration from userland

A userland command to set the LLTEMAC MAC address,
i.e. "ifconfig eth0 hw addr xx:yy:zz:pp:dd:qq",
results in a device address of 00:01:xx:yy:zz:pp.
Correct this.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoll_temac: Add support for V2 LLTEMAC core
Steven J. Magnani [Wed, 17 Feb 2010 07:14:20 +0000 (07:14 +0000)]
ll_temac: Add support for V2 LLTEMAC core

LLTEMAC V1 cores place only received packet length in the app4 word.
V2 cores place additional information in app4.
Mask out the additional information when retrieving the packet length.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: convert multiple drivers to use netdev_for_each_mc_addr
Jiri Pirko [Wed, 17 Feb 2010 11:09:31 +0000 (11:09 +0000)]
net: convert multiple drivers to use netdev_for_each_mc_addr

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agocassini: convert to use netdev_for_each_mc_addr
Jiri Pirko [Wed, 17 Feb 2010 10:43:33 +0000 (10:43 +0000)]
cassini: convert to use netdev_for_each_mc_addr

Introduced a new function to do the mc list processing, makes code
clearer after transition.

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agonet: use kasprintf() for socket cache names
Alexey Dobriyan [Wed, 17 Feb 2010 09:34:12 +0000 (09:34 +0000)]
net: use kasprintf() for socket cache names

kasprintf() makes code smaller.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoxt_hashlimit: fix locking
Eric Dumazet [Wed, 17 Feb 2010 06:43:47 +0000 (06:43 +0000)]
xt_hashlimit: fix locking

Commit 2eff25c18c3d332d3c4dd98f2ac9b7114e9771b0
(netfilter: xt_hashlimit: fix race condition and simplify locking)
added a mutex deadlock :
htable_create() is called with hashlimit_mutex already locked

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoipmr: remove useless checks from ipmr_device_event
Pavel Emelyanov [Wed, 17 Feb 2010 01:19:32 +0000 (01:19 +0000)]
ipmr: remove useless checks from ipmr_device_event

The net being checked there is dev_net(dev) and thus this if
is always false.

Fits both net and net-next trees.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: update tx DMA mapping error handling
Nick Nunley [Wed, 17 Feb 2010 01:06:16 +0000 (01:06 +0000)]
igb: update tx DMA mapping error handling

This updates the tx DMA mapping error handling code to
resemble e1000e/ixgbe.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: change descriptor control thresholds
Nick Nunley [Wed, 17 Feb 2010 01:05:56 +0000 (01:05 +0000)]
igb: change descriptor control thresholds

This change simplifies the code by setting RX_PTHRESH to 8 for
all devices, as it was unlikely that there was any advantage to
set it at 16 for earlier cards. Additionally TX_WTHRESH is
set to 1 for the 82576 NIC to improve performance by enabling
a minimal amount of write combining when writing back descriptors.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: use igb_free_q_vectors to cleanup failure in igb_alloc_q_vectors
Nick Nunley [Wed, 17 Feb 2010 01:05:35 +0000 (01:05 +0000)]
igb: use igb_free_q_vectors to cleanup failure in igb_alloc_q_vectors

This change makes it so that igb_free_q_vectors is reused in
igb_alloc_q_vectors to handle the cleanup instead of unwinding
through the allocations.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: remove unused vmolr value
Nick Nunley [Wed, 17 Feb 2010 01:05:15 +0000 (01:05 +0000)]
igb: remove unused vmolr value

In an earlier version of igb_write_mc_addr_list() the vmolr register
was modified. This register is no longer accessed, although the variable
still exists. This patch removes it from the function.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: minor type cleanups
Nick Nunley [Wed, 17 Feb 2010 01:04:56 +0000 (01:04 +0000)]
igb: minor type cleanups

This change cleans up some instances where unsigned int and u32
were being used interchangeably, and cleans up hdr_len which
was being set to 0 twice.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: move gso_segs into buffer_info structure
Nick Nunley [Wed, 17 Feb 2010 01:04:37 +0000 (01:04 +0000)]
igb: move gso_segs into buffer_info structure

This change moves gso_segs into the buffer_info structure to avoid
a possible cache line miss in clean_tx_irq.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: inline igb_maybe_stop_tx
Nick Nunley [Wed, 17 Feb 2010 01:04:18 +0000 (01:04 +0000)]
igb: inline igb_maybe_stop_tx

igb_maybe_stop_tx() is extremely small and appears in several spots in
the tx hotpath. This change inlines the function for a possible
performance boost.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: only read phy specific stats if in internal phy mode
Nick Nunley [Wed, 17 Feb 2010 01:03:58 +0000 (01:03 +0000)]
igb: only read phy specific stats if in internal phy mode

There are a couple statistics registers that are not meant to
be read when in SGMII/serdes mode. This patch adds a check to
verify mode before reading and updating these statistics.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: only support SRRCTL_DROP_EN when using multiple queues
Nick Nunley [Wed, 17 Feb 2010 01:03:38 +0000 (01:03 +0000)]
igb: only support SRRCTL_DROP_EN when using multiple queues

The SRRCTL.DROP_EN bit should only be set when we are supporting
multiple queues. This bit is meant to prevent head of line blocking
and is unnecessary in the single queue case.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14 years agoigb: cap interrupts at 20K per queue when in itr mode 3
Nick Nunley [Wed, 17 Feb 2010 01:03:19 +0000 (01:03 +0000)]
igb: cap interrupts at 20K per queue when in itr mode 3

In order to maintain similar performance between MSI-X and
legacy/MSI interrupts, this patch reduces the number of interrupts
when receiving small packets to 20K when in interrupt throttle
rate mode 3.

Signed-off-by: Nicholas Nunley <nicholasx.d.nunley@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>