profile/ivi/kernel-adaptation-intel-automotive.git
13 years agobnx2x: Fix warning message during 57712/8727 initialization
Yaniv Rosner [Tue, 5 Jul 2011 01:07:16 +0000 (01:07 +0000)]
bnx2x: Fix warning message during 57712/8727 initialization

Clear warning message "MDC/MDIO access timeout" during first driver load by setting MDIO clock.
This warning has no significant meaning, since it occurs prior to the first PHY initialization.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Add autogrEEEn support
Yaniv Rosner [Tue, 5 Jul 2011 01:07:05 +0000 (01:07 +0000)]
bnx2x: Add autogrEEEn support

Add autogrEEEn support on BCM84833 and 54618se, which allows to reduce power consumption.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Fix BCM84833 initialization
Yaniv Rosner [Tue, 5 Jul 2011 01:06:59 +0000 (01:06 +0000)]
bnx2x: Fix BCM84833 initialization

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Fix false link indication at link partner when DAC is used
Yaniv Rosner [Tue, 5 Jul 2011 01:06:53 +0000 (01:06 +0000)]
bnx2x: Fix false link indication at link partner when DAC is used

When driver is unloaded, disable PMD in addition to TX laser, provided that the management firmware will be able to enable it back.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Reset PHY due to fan failure for 578xx
Yaniv Rosner [Tue, 5 Jul 2011 01:06:48 +0000 (01:06 +0000)]
bnx2x: Reset PHY due to fan failure for 578xx

Add hardware PHY reset action for BCM578xx when fan failure occur.
The new bnx2x_warpcore_hw_reset warps bnx2x_warpcore_power_module to fit the .hw_reset function template of the phy structure.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Add CL37 BAM for Warpcore
Yaniv Rosner [Tue, 5 Jul 2011 01:06:41 +0000 (01:06 +0000)]
bnx2x: Add CL37 BAM for Warpcore

Add CL37 BAM support according to configuration.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: Change BCM54616S to BCM54618SE
Yaniv Rosner [Tue, 5 Jul 2011 01:06:34 +0000 (01:06 +0000)]
bnx2x: Change BCM54616S to BCM54618SE

Change 1G copper PHY BCM54616S to BCM54618SE since we only have HW with latter one of the two.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: PFC fixes
Yaniv Rosner [Tue, 5 Jul 2011 01:06:27 +0000 (01:06 +0000)]
bnx2x: PFC fixes

Set the source MAC address for PFC packets and update its status during PMF migration.

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet/wireless: ipw2x00: Use helpers from linux/etherdevice.h
Tobias Klauser [Mon, 4 Jul 2011 00:00:22 +0000 (00:00 +0000)]
net/wireless: ipw2x00: Use helpers from linux/etherdevice.h

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: vxge: Use is_multicast_ether_addr helper
Tobias Klauser [Sun, 3 Jul 2011 23:58:04 +0000 (23:58 +0000)]
net: vxge: Use is_multicast_ether_addr helper

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: ewrk3: Use helpers from linux/etherdevice.h
Tobias Klauser [Sun, 3 Jul 2011 23:56:22 +0000 (23:56 +0000)]
net: ewrk3: Use helpers from linux/etherdevice.h

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: depca: Use helpers from linux/etherdevice.h
Tobias Klauser [Sun, 3 Jul 2011 23:55:53 +0000 (23:55 +0000)]
net: depca: Use helpers from linux/etherdevice.h

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: rionet: Use is_multicast_ether_addr
Tobias Klauser [Sun, 3 Jul 2011 23:54:54 +0000 (23:54 +0000)]
net: rionet: Use is_multicast_ether_addr

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: iseries_veth: Use is_unicast_ether_addr helper
Tobias Klauser [Sun, 3 Jul 2011 23:52:03 +0000 (23:52 +0000)]
net: iseries_veth: Use is_unicast_ether_addr helper

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: igb: Use is_multicast_ether_addr helper
Tobias Klauser [Sun, 3 Jul 2011 23:50:15 +0000 (23:50 +0000)]
net: igb: Use is_multicast_ether_addr helper

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: de4x5: Use helpers from linux/etherdevice.h
Tobias Klauser [Sun, 3 Jul 2011 23:48:13 +0000 (23:48 +0000)]
net: de4x5: Use helpers from linux/etherdevice.h

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: e1000e: Use is_multicast_ether_addr helper
Tobias Klauser [Sun, 3 Jul 2011 23:47:04 +0000 (23:47 +0000)]
net: e1000e: Use is_multicast_ether_addr helper

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoUpdate documented default values for various TCP/UDP tunables
Max Matveev [Tue, 21 Jun 2011 21:18:13 +0000 (21:18 +0000)]
Update documented default values for various TCP/UDP tunables

tcp_rmem and tcp_wmem use 1 page as default value for the minimum
amount of memory to be used, same as udp_wmem_min and udp_rmem_min.
Pages are different size on different architectures - use the right
units when describing the defaults.

Reviewed-by: Shan Wei <shanwei@cn.fujitsu.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Max Matveev <makc@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoUpdate description of net.sctp.sctp_rmem and net.sctp.sctp_wmem tunables
Max Matveev [Sun, 19 Jun 2011 22:08:10 +0000 (22:08 +0000)]
Update description of net.sctp.sctp_rmem and net.sctp.sctp_wmem tunables

sctp does not use second and third ("default" and "max") values
of sctp_rmem tunable. The format is the same as tcp_rmem
but the meaning is different so make the documentation explicit to
avoid confusion.

sctp_wmem is not used at all.

Acked-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Max Matveev <makc@redhat.com>
Reviewed-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agob44: use dev_kfree_skb() in b44_tx()
Eric Dumazet [Tue, 5 Jul 2011 00:57:10 +0000 (17:57 -0700)]
b44: use dev_kfree_skb() in b44_tx()

b44_tx() is run from softirq handler, it can use dev_kfree_skb() instead
of dev_kfree_skb_irq()

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agodccp ccid-2: Perform congestion-window validation
Gerrit Renker [Sun, 3 Jul 2011 15:55:03 +0000 (09:55 -0600)]
dccp ccid-2: Perform congestion-window validation

CCID-2's cwnd increases like TCP during slow-start, which has implications for
 * the local Sequence Window value (should be > cwnd),
 * the Ack Ratio value.
Hence an exponential growth, if it does not reflect the actual network
conditions, can quickly lead to instability.

This patch adds congestion-window validation (RFC2861) to CCID-2:
 * cwnd is constrained if the sender is application limited;
 * cwnd is reduced after a long idle period, as suggested in the '90 paper
   by Van Jacobson, in RFC 2581 (sec. 4.1);
 * cwnd is never reduced below the RFC 3390 initial window.

As marked in the comments, the code is actually almost a direct copy of the
TCP congestion-window-validation algorithms. By continuing this work, it may
in future be possible to use the TCP code (not possible at the moment).

The mechanism can be turned off using a module parameter. Sampling of the
currently-used window (moving-maximum) is however done constantly; this is
used to determine the expected window, which can be exploited to regulate
DCCP's Sequence Window value.

This patch also sets slow-start-after-idle (RFC 4341, 5.1), i.e. it behaves like
TCP when net.ipv4.tcp_slow_start_after_idle = 1.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
13 years agodccp ccid-2: Use existing function to test for data packets
Gerrit Renker [Sun, 3 Jul 2011 15:53:12 +0000 (09:53 -0600)]
dccp ccid-2: Use existing function to test for data packets

This replaces a switch statement with a test, using the equivalent
function dccp_data_packet(skb).  It also doubles the range of the field
`rx_num_data_pkts' by changing the type from `int' to `u32', avoiding
signed/unsigned comparison with the u16 field `dccps_r_ack_ratio'.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
13 years agodccp ccid-2: move rfc 3390 function into header file
Gerrit Renker [Sun, 3 Jul 2011 15:04:18 +0000 (09:04 -0600)]
dccp ccid-2: move rfc 3390 function into header file

This moves CCID-2's initial window function into the header file, since several
parts throughout the CCID-2 code need to call it (CCID-2 still uses RFC 3390).

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Acked-by: Leandro Melo de Sales <leandro@ic.ufal.br>
13 years agodccp: cosmetics of info message
Gerrit Renker [Sun, 3 Jul 2011 15:51:14 +0000 (09:51 -0600)]
dccp: cosmetics of info message

Change the CCID (de)activation message to start with the
protocol name, as 'CCID' is already in there.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
13 years agodccp: combine the functionality of enqeueing and cloning
Gerrit Renker [Sun, 3 Jul 2011 15:51:29 +0000 (09:51 -0600)]
dccp: combine the functionality of enqeueing and cloning

Realising the following call pattern,
 * first dccp_entail() is called to enqueue a new skb and
 * then skb_clone() is called to transmit a clone of that skb,
this patch integrates both into the same function.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
13 years agodccp: Clean up slow-path input processing
Gerrit Renker [Sun, 3 Jul 2011 15:49:16 +0000 (09:49 -0600)]
dccp: Clean up slow-path input processing

This patch rearranges the order of statements of the slow-path input processing
(i.e. any other state than OPEN), to resolve the following issues.

 1. Dependencies: the order of statements now better matches RFC 4340, 8.5, i.e.
    step 7 is before step 9 (previously 9 was before 7), and parsing options in
    step 8 (which may consume resources) now comes after step 7.
 2. Sequence number checks are omitted if in state LISTEN/REQUEST, due to the
    note underneath the table in RFC 4340, 7.5.3.
    As a result, CCID processing is now indeed confined to OPEN/PARTOPEN states,
    i.e. congestion control is performed only on the flow of data packets. This
    avoids pathological cases of doing congestion control on those messages
    which set up and terminate the connection.
 3. Packets are now passed on to Ack Vector / CCID processing only after
    - step 7  (receive unexpected packets),
    - step 9  (receive Reset),
    - step 13 (receive CloseReq),
    - step 14 (receive Close)
    and only if the state is PARTOPEN. This simplifies CCID processing:
    - in LISTEN/CLOSED the CCIDs are non-existent;
    - in RESPOND/REQUEST the CCIDs have not yet been negotiated;
    - in CLOSEREQ and active-CLOSING the node has already closed this socket;
    - in passive-CLOSING the client is waiting for its Reset.
    In the last case, RFC 4340, 8.3 leaves it open to ignore further incoming
    data, which is the approach taken here.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
13 years agonet: sh_eth: remove __flush_purge_region
Yoshihiro Shimoda [Thu, 30 Jun 2011 22:52:13 +0000 (22:52 +0000)]
net: sh_eth: remove __flush_purge_region

It is a function of SuperH architecture. There is no good to use
the function on a driver generally. So, the driver uses
dma_map_single() instead of __flush_purge_region.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoaf_econet: Use current logging styles and neatening
Joe Perches [Sun, 3 Jul 2011 08:28:33 +0000 (08:28 +0000)]
af_econet: Use current logging styles and neatening

Use pr_fmt() without KBUILD_MODNAME to allow AUN and econet prefixes.
Convert printks with KERN_DEBUG to pr_debug.
Hoist assigns from if.
80 column wrapping.
Move open braces to end of line.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonetpoll: Remove wrapper function netpoll_poll
Joe Perches [Thu, 30 Jun 2011 15:08:58 +0000 (15:08 +0000)]
netpoll: Remove wrapper function netpoll_poll

Too trivial to live.

cc: WANG Cong <amwang@redhat.com>
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonetpoll: Remove unused EXPORT_SYMBOLs of netpoll_poll and netpoll_poll_dev
Joe Perches [Thu, 30 Jun 2011 15:08:57 +0000 (15:08 +0000)]
netpoll: Remove unused EXPORT_SYMBOLs of netpoll_poll and netpoll_poll_dev

Unused symbols waste space.

Commit 0e34e93177fb
"(netpoll: add generic support for bridge and bonding devices)"
added the symbol more than a year ago with the promise of "future use".

Because it is so far unused, remove it for now.
It can be easily readded if or when it actually needs to be used.

cc: WANG Cong <amwang@redhat.com>
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'for-next' of git://git2.kernel.org/pub/scm/linux/kernel/git/lowpan...
David S. Miller [Fri, 1 Jul 2011 23:16:48 +0000 (16:16 -0700)]
Merge branch 'for-next' of git://git2./linux/kernel/git/lowpan/lowpan

13 years agonet: rds: fix const array syntax
Greg Dietsche [Fri, 1 Jul 2011 23:16:19 +0000 (16:16 -0700)]
net: rds: fix const array syntax

Correct the syntax so that both array and pointer are const.

Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agox25: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:13 +0000 (09:43 +0000)]
x25: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows 80 column line reflowing.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agosunrpc: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:12 +0000 (09:43 +0000)]
sunrpc: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows 80 column line reflowing.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agosctp: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:11 +0000 (09:43 +0000)]
sctp: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows useless break;s removed after returns
and a comment added to an unnecessary default: break;
because of a dubious gcc warning.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonetrom: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:10 +0000 (09:43 +0000)]
netrom: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows code on same line as case moved
to separate lines and a "/* Fallthrough */" comment
added where appropriate.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agolapb: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:09 +0000 (09:43 +0000)]
lapb: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows 80 column reflowing.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoipv6: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:08 +0000 (09:43 +0000)]
ipv6: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows 80 column reflowing,
removal of a useless break after return, and moving
open brace after case instead of separate line.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoipv4: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:07 +0000 (09:43 +0000)]
ipv4: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows no difference.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonetfilter: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:06 +0000 (09:43 +0000)]
netfilter: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows miscellaneous 80 column wrapping,
comment reflowing and a comment for a useless gcc
warning for an otherwise unused default: case.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoipconfig: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:05 +0000 (09:43 +0000)]
ipconfig: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows miscellaneous 80 column wrapping.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoeconet: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:04 +0000 (09:43 +0000)]
econet: Reduce switch/case indent

Make the case labels the same indent as the switch.

Simplify a default case / return (unreached)
Remove unnecessary break after return.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agodecnet: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:03 +0000 (09:43 +0000)]
decnet: Reduce switch/case indent

Make the case labels the same indent as the switch.

git diff -w shows differences for line wrapping.
(fit multiple lines to 80 columns, join where possible)

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoappletalk: Reduce switch/case indent
Joe Perches [Fri, 1 Jul 2011 09:43:02 +0000 (09:43 +0000)]
appletalk: Reduce switch/case indent

Make the case labels the same indent as the switch.

(git diff -w net/appletalk shows no difference)

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agortnl: provide link dump consistency info
Thomas Graf [Tue, 21 Jun 2011 03:11:20 +0000 (03:11 +0000)]
rtnl: provide link dump consistency info

This patch adds a change sequence counter to each net namespace
which is bumped whenever a netdevice is added or removed from
the list. If such a change occurred while a link dump took place,
the dump will have the NLM_F_DUMP_INTR flag set in the first
message which has been interrupted and in all subsequent messages
of the same dump.

Note that links may still be modified or renamed while a dump is
taking place but we can guarantee for userspace to receive a
complete list of links and not miss any.

Testing:
I have added 500 VLAN netdevices to make sure the dump is split
over multiple messages. Then while continuously dumping links in
one process I also continuously deleted and re-added a dummy
netdevice in another process. Multiple dumps per seconds have
had the NLM_F_DUMP_INTR flag set.

I guess we can wait for Johannes patch to hit net-next via the
wireless tree.  I just wanted to give this some testing right away.

Signed-off-by: Thomas Graf <tgraf@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: de4x5: Omit check for multicast bit in netdev_for_each_mc_addr
Tobias Klauser [Thu, 30 Jun 2011 21:37:52 +0000 (21:37 +0000)]
net: de4x5: Omit check for multicast bit in netdev_for_each_mc_addr

There is no need to check for the address being a multicast address in
the netdev_for_each_mc_addr loop, so remove it.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: clear intr bit in be_probe()
Sathya Perla [Wed, 29 Jun 2011 23:33:37 +0000 (23:33 +0000)]
be2net: clear intr bit in be_probe()

It may be set in the card while the driver is probed by kdump kernel after a
crash.

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: create/destroy rx-queues on interface open/close
Sathya Perla [Wed, 29 Jun 2011 23:33:17 +0000 (23:33 +0000)]
be2net: create/destroy rx-queues on interface open/close

On some skews, the BE card sends pause frames (and not drop pkts) if there are
no more posted buffers available for packet reception.  This behaviour has a
side effect: When an interface is disabled, buffers are no longer posted on the
corresponding RX rings. All broadcast and multicast traffic being received on
the port will quickly fill up the PMEM and cause pause push back. As the PMEM
is shared by both the ports, all traffic being received on the other (enabled)
port also gets stalled.
The fix is to destroy RX rings when the interface is disabled. If there is no
RX ring match in the RXF lookup, the packets are discarded and so don't hog the
PMEM.
The RXQ creation cmd must now use MCC instead of MBOX as they are are called
post MCC queue creation.

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: fix certain cmd failure logging
Sathya Perla [Wed, 29 Jun 2011 23:32:56 +0000 (23:32 +0000)]
be2net: fix certain cmd failure logging

Some (older)versions of cards/fw may not recognize certain cmds and
return illegal/unsupported errors. As long as the driver can handle
this gracefully there is no need to log an error msg.
Also finetuned 2 existing error log messages.

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoqlcnic: add external loopback support
Amit Kumar Salecha [Wed, 29 Jun 2011 20:00:50 +0000 (20:00 +0000)]
qlcnic: add external loopback support

o Add external loopback test in self test:
  - Send set external loopback mode request to fw.
     To quiscent other storage functions.
  - Perform test
  - Send unset loopback mode request to fw.

o Rename ilb to lb.
o Update driver version 5.0.20.

Signed-off-by: Sucheta Chakraborty <sucheta.chakraborty@qlogic.com>
Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: add external loopback test in ethtool self test
Amit Kumar Salecha [Wed, 29 Jun 2011 20:00:49 +0000 (20:00 +0000)]
net: add external loopback test in ethtool self test

External loopback test can be performed by application without any driver
support on normal Ethernet cards.
But on CNA devices, where multiple functions share same physical port.
Here internal loopback test and external loopback test can be initiated by
multiple functions at same time. To co exist all functions, firmware need
to regulate what test can be run by which function. So before performing external
loopback test, command need to send to firmware, which will quiescent other functions.

User may not want to run external loopback test always. As special cable need to be
connected for this test.
So adding explicit flag in ethtool self test, which will specify interface
to perform external loopback test.
 ETH_TEST_FL_EXTERNAL_LB: Application set to request external loopback test
 ETH_TEST_FL_EXTERNAL_LB_DONE: Driver ack if test performed

Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com>
Reviewed-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: ucc_geth: Omit check for multicast bit in netdev_for_each_mc_addr
Tobias Klauser [Wed, 29 Jun 2011 02:16:33 +0000 (02:16 +0000)]
net: ucc_geth: Omit check for multicast bit in netdev_for_each_mc_addr

There is no need to check for the address being a multicast address in
the netdev_for_each_mc_addr loop, so remove it.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: iseries_veth: Omit check for multicast bit in netdev_for_each_mc_addr
Tobias Klauser [Wed, 29 Jun 2011 02:15:35 +0000 (02:15 +0000)]
net: iseries_veth: Omit check for multicast bit in netdev_for_each_mc_addr

There is no need to check for the address being a multicast address in
the netdev_for_each_mc_addr loop, so remove it.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: depca: Omit check for multicast bit in netdev_for_each_mc_addr
Tobias Klauser [Wed, 29 Jun 2011 02:15:15 +0000 (02:15 +0000)]
net: depca: Omit check for multicast bit in netdev_for_each_mc_addr

There is no need to check for the address being a multicast address in
the netdev_for_each_mc_addr loop, so remove it.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: am79c961a: Omit check for multicast bit in netdev_for_each_mc_addr
Tobias Klauser [Wed, 29 Jun 2011 02:14:46 +0000 (02:14 +0000)]
net: am79c961a: Omit check for multicast bit in netdev_for_each_mc_addr

There is no need to check for the address being a multicast address in
the netdev_for_each_mc_addr loop, so remove it.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agowanxl: remove a stray irq enable
Dan Carpenter [Tue, 28 Jun 2011 20:29:51 +0000 (20:29 +0000)]
wanxl: remove a stray irq enable

This is error path calls unlock_irq() where we haven't disabled the
IRQs.  The comment says that this error path can never happen.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoExclude duplicated checking for iface-up. This flags is checked in 'is_skb_forwardabl...
Alexander Smirnov [Tue, 28 Jun 2011 03:30:44 +0000 (03:30 +0000)]
Exclude duplicated checking for iface-up. This flags is checked in 'is_skb_forwardable' function, which is subroutine of 'dev_forward_skb'.

Signed-off-by: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Reviewed-by: WANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agojme: Cleanup PM operations after using new PM API
Guo-Fu Tseng [Tue, 28 Jun 2011 01:38:30 +0000 (01:38 +0000)]
jme: Cleanup PM operations after using new PM API

1. Using enum name instead of numeric value.
2. device_set_wakeup_enable expect bool argument
   adding !!() to the argument to be passed.
3. Remove non-jme-hardware related operations from
   jme_clear_pm()
4. Reuse jme_clear_pm() in jme_resume() and jme_powersave_phy()

Signed-off-by: Guo-Fu Tseng <cooldavid@cooldavid.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agojme: Fix compile warning introduced by new pm macro
Guo-Fu Tseng [Mon, 27 Jun 2011 19:23:34 +0000 (19:23 +0000)]
jme: Fix compile warning introduced by new pm macro

SIMPLE_DEV_PM_OPS is using SET_SYSTEM_SLEEP_PM_OPS
and SET_SYSTEM_SLEEP_PM_OPS is empty when CONFIG_PM_SLEEP
is not defined.

Switching #ifdef CONFIG_PM to #ifdef CONFIG_PM_SLEEP

Signed-off-by: Guo-Fu Tseng <cooldavid@cooldavid.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocan: remove useless defaults in Kconfig
Kurt Van Dijck [Mon, 27 Jun 2011 05:00:13 +0000 (05:00 +0000)]
can: remove useless defaults in Kconfig

There's no need for "default N' (or 'default n') as it's default.

Signed-off-by: Kurt Van Dijck <kurt.van.dijck@eia.be>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoenic: Add support to configure hardware interrupt coalesce timers in a platform indep...
Vasanthy Kolluri [Fri, 17 Jun 2011 07:56:48 +0000 (07:56 +0000)]
enic: Add support to configure hardware interrupt coalesce timers in a platform independent way

enic driver and the underlying hardware use different units for representing the interrupt coalesce timer.
Driver converts the interrupt coalesce timer in usec to hardware cycles while setting the relevant hardware
registers. The conversion factor can be different for each of the adapter hardware types. So it is dynamically
learnt from the adapter firmware using the devcmd CMD_INTR_COAL_CONVERT. This allows the driver to configure
the hardware interrupt coalesce timers in a platform independent way.

Signed-off-by: Danny Guo <dannguo@cisco.com>
Signed-off-by: Vasanthy Kolluri <vkolluri@cisco.com>
Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
Signed-off-by: David Wang <dwang2@cisco.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
13 years agovirtio-net: per cpu 64 bit stats (v2)
stephen hemminger [Wed, 15 Jun 2011 06:36:29 +0000 (06:36 +0000)]
virtio-net: per cpu 64 bit stats (v2)

Use per-cpu variables to maintain 64 bit statistics.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
13 years agoxen/netback: Add module alias for autoloading
Bastian Blank [Thu, 30 Jun 2011 18:19:09 +0000 (11:19 -0700)]
xen/netback: Add module alias for autoloading

Add xen-backend:vif module alias to the xen-netback module. This allows
automatic loading of the module.

Signed-off-by: Bastian Blank <waldi@debian.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
13 years agoIEEE 802.15.4: do not enable driver debugging by default
Werner Almesberger [Fri, 17 Jun 2011 18:48:29 +0000 (18:48 +0000)]
IEEE 802.15.4: do not enable driver debugging by default

The IEEE 802.15.4 drivers were compiled by default with debugging,
which caused them to be rather chatty and slow. This patch silences
them. People debugging drivers can still add a #define DEBUG in the
beginning of the respective file or use dynamic debug

This patch also removes the now unused option CONFIG_FFD.

Signed-off-by: Werner Almesberger <werner@almesberger.net>
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
13 years agoieee802154: free skb buffer if dev isn't running
Alexander Smirnov [Wed, 29 Jun 2011 12:51:37 +0000 (12:51 +0000)]
ieee802154: free skb buffer if dev isn't running

Signed-off-by: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
13 years agoieee802154: it's IEEE 802.15.4, not ZigBee
Dmitry Eremin-Solenikov [Thu, 21 Oct 2010 21:25:25 +0000 (01:25 +0400)]
ieee802154: it's IEEE 802.15.4, not ZigBee

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
13 years agoieee802154: support specifying hw address for created devices
Dmitry Eremin-Solenikov [Thu, 18 Mar 2010 16:26:23 +0000 (19:26 +0300)]
ieee802154: support specifying hw address for created devices

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
13 years agofakehard: stop setting platform_data as it's unused anymore
Dmitry Eremin-Solenikov [Mon, 16 Nov 2009 14:04:21 +0000 (17:04 +0300)]
fakehard: stop setting platform_data as it's unused anymore

Previously dev.platform_data was used to store a pointer to net device.
Now this code was gone. Drop it.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
13 years agomyri10ge: Update MAINTAINERS
Jon Mason [Mon, 27 Jun 2011 05:05:08 +0000 (05:05 +0000)]
myri10ge: Update MAINTAINERS

Update MAINTAINERS to refelect new people working on myri10ge

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: update version
Jon Mason [Mon, 27 Jun 2011 05:05:07 +0000 (05:05 +0000)]
myri10ge: update version

Update version and copyright

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: misc style cleanups
Jon Mason [Mon, 27 Jun 2011 10:56:41 +0000 (10:56 +0000)]
myri10ge: misc style cleanups

Miscellaneous white space, style, and other cleanups

v2 includes corrections from Joe Perches

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 05:05:05 +0000 (05:05 +0000)]
myri10ge: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: add support for set_phys_id
Jon Mason [Mon, 27 Jun 2011 05:05:04 +0000 (05:05 +0000)]
myri10ge: add support for set_phys_id

Add myri10ge driver support for the ethtool identify operation.
NOTE: Rather than blinking (which is the normal case), when identify is
used, the yellow LED turns solid.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: allow small_bytes = 0
Jon Mason [Mon, 27 Jun 2011 05:05:03 +0000 (05:05 +0000)]
myri10ge: allow small_bytes = 0

Allow page-based receive to work when small_bytes is set to 0.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: rework parity error check and cleanup
Jon Mason [Mon, 27 Jun 2011 17:57:28 +0000 (17:57 +0000)]
myri10ge: rework parity error check and cleanup

Clean up watchdog reset code:
 - move code that checks for stuck slice to a common routine
 - unless there is a confirmed h/w fault, verify that a stuck
   slice is still stuck in the watchdog worker; if the slice is no
   longer stuck, abort the reset.
 - this removes an egregious 2000ms pause in the watchdog worker that
   was a diagnostic aid (to look for spurious resets) the snuck into
   production code.

v3 includes corrections from Joe Perches

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: Mask PCI Surprise Link Down Events
Jon Mason [Mon, 27 Jun 2011 05:05:01 +0000 (05:05 +0000)]
myri10ge: Mask PCI Surprise Link Down Events

A SRAM parity error can cause a surprise link down.  Since We can
recover from SRAM parity errors, mask PCI surprise down events.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomyri10ge: ensure tx queues remain stopped
Jon Mason [Mon, 27 Jun 2011 05:05:00 +0000 (05:05 +0000)]
myri10ge: ensure tx queues remain stopped

Ensure that our tx queues remain stopped when we stop them in
myri10ge_close().  Not doing so can potentially lead to traffic being
transmitted when the interface is removed, which can lead to NULL
pointer dereferences.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoDSA: Enable cascading in multi-chip 6131 configuration
Barry Grussling [Fri, 24 Jun 2011 19:53:51 +0000 (19:53 +0000)]
DSA: Enable cascading in multi-chip 6131 configuration

This patch enables the 6131 family of chips to forward DSA
packets to other switch chips.  This is needed if multiple
DSA chips are used in a device.  Without this patch the
chip will drop any DSA packets not destined for it.

This patch only enables the forwarding of DSA packets if
multiple chips are used in the switch configuration.

Signed-off-by: Barry Grussling <barry@grussling.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: Fix recieve/receive typo
Joe Perches [Wed, 29 Jun 2011 12:52:03 +0000 (05:52 -0700)]
caif: Fix recieve/receive typo

Just spelling fixes.

Actually, a twofer with vaiables/variables as well.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: include dma-mapping.h in ll_temac_main.c for dma_map_single etc
Stephen Rothwell [Wed, 29 Jun 2011 09:55:59 +0000 (02:55 -0700)]
net: include dma-mapping.h in ll_temac_main.c for dma_map_single etc

fixes thses build errors:

drivers/net/ll_temac_main.c: In function 'temac_dma_bd_release':
drivers/net/ll_temac_main.c:209:4: error: implicit declaration of function 'dma_unmap_single'
drivers/net/ll_temac_main.c:215:3: error: implicit declaration of function 'dma_free_coherent'
drivers/net/ll_temac_main.c: In function 'temac_dma_bd_init':
drivers/net/ll_temac_main.c:243:2: error: implicit declaration of function 'dma_alloc_coherent'
drivers/net/ll_temac_main.c:243:14: warning: assignment makes pointer from integer without a cast
drivers/net/ll_temac_main.c:251:14: warning: assignment makes pointer from integer without a cast
drivers/net/ll_temac_main.c:280:3: error: implicit declaration of function 'dma_map_single'
drivers/net/ll_temac_main.c: In function 'temac_start_xmit_done':
drivers/net/ll_temac_main.c:628:22: warning: cast to pointer from integer of different size

Caused by commit commit b7f080cfe223 ("net: remove mm.h inclusion from
netdevice.h").

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: include io.h in sja1000_of_platform.c for iounmap etc
Stephen Rothwell [Wed, 29 Jun 2011 09:55:28 +0000 (02:55 -0700)]
net: include io.h in sja1000_of_platform.c for iounmap etc

fixes these build errors:

drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_read_reg':
drivers/net/can/sja1000/sja1000_of_platform.c:61:2: error: implicit declaration of function 'in_8'
drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_write_reg':
drivers/net/can/sja1000/sja1000_of_platform.c:67:2: error: implicit declaration of function 'out_8'
drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_remove':
drivers/net/can/sja1000/sja1000_of_platform.c:81:2: error: implicit declaration of function 'iounmap'
drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_probe':
drivers/net/can/sja1000/sja1000_of_platform.c:113:2: error: implicit declaration of function 'ioremap_nocache'
drivers/net/can/sja1000/sja1000_of_platform.c:113:7: warning: assignment makes pointer from integer without a cast

Caused by commit b7f080cfe223 ("net: remove mm.h inclusion from
netdevice.h").

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agovmxnet3: Enable GRO support.
Jesse Gross [Fri, 24 Jun 2011 14:24:35 +0000 (14:24 +0000)]
vmxnet3: Enable GRO support.

When receiving packets from another guest on the same hypervisor, it's
generally possible to receive large packets because no segmentation is
necessary and these packets are handled by LRO.  However, when doing
routing or bridging we must disable LRO and lose this benefit.  In
these cases GRO can still be used and it is very effective because the
packets which are segmented in the hypervisor are received very close
together and can easily be merged.

CC: Shreyas Bhatewara <sbhatewara@vmware.com>
CC: Scott Goldman <scottjg@vmware.com>
CC: VMware PV-Drivers <pv-drivers@vmware.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Signed-off-by: Scott J. Goldman <scottjg@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agovxge: remove unnecessary reads of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:48:11 +0000 (07:48 +0000)]
vxge: remove unnecessary reads of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agosky2: remove unnecessary reads of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:46:56 +0000 (07:46 +0000)]
sky2: remove unnecessary reads of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.  Also, pci_is_pcie is a
better way of determining if the device is PCIE or not (as it uses the
same saved PCIE capability offset).

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Acked-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agor8169: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:46:31 +0000 (07:46 +0000)]
r8169: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  Use the
value from pci_dev instead of checking in the driver and saving it off
the the driver specific structure.  Also, it will remove an unnecessary
search in the PCI configuration space if this value is referenced
instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoniu: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:45:44 +0000 (07:45 +0000)]
niu: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2x: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:45:12 +0000 (07:45 +0000)]
bnx2x: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.  Also, pci_is_pcie is a
better way of determining if the device is PCIE or not (as it uses the
same saved PCIE capability offset).

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobnx2: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:44:43 +0000 (07:44 +0000)]
bnx2: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.  Also, pci_is_pcie is a
better way of determining if the device is PCIE or not (as it uses the
same saved PCIE capability offset).

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoigb: remove unnecessary reads of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:44:01 +0000 (07:44 +0000)]
igb: remove unnecessary reads of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoe1000e: remove unnecessary reads of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:43:47 +0000 (07:43 +0000)]
e1000e: remove unnecessary reads of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocxgb3: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:42:49 +0000 (07:42 +0000)]
cxgb3: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomlx4: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 07:42:17 +0000 (07:42 +0000)]
mlx4: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  It will
remove an unnecessary search in the PCI configuration space if this
value is referenced instead of reacquiring it.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agotg3: remove unnecessary read of PCI_CAP_ID_EXP
Jon Mason [Mon, 27 Jun 2011 12:56:50 +0000 (12:56 +0000)]
tg3: remove unnecessary read of PCI_CAP_ID_EXP

The PCIE capability offset is saved during PCI bus walking.  Use the
value from pci_dev instead of checking in the driver and saving it off
the the driver specific structure.  It will remove an unnecessary search
in the PCI configuration space if this value is referenced instead of
reacquiring it.

v2 of the patch re-adds the PCI_EXPRESS flag and adds comments
describing why it is necessary.

[ pdev->pcie_cap --> pci_pcie_cap(pdev) -DaveM ]

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: sh_eth: tidyup compile warning
Kuninori Morimoto [Thu, 23 Jun 2011 16:02:38 +0000 (16:02 +0000)]
net: sh_eth: tidyup compile warning

This patch tidyup below warning

${LINUX}/drivers/net/sh_eth.c:1773: warning:
'mdp' may be used uninitialized in this function

Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agovmxnet3: Convert to new vlan model.
Jesse Gross [Thu, 23 Jun 2011 13:04:39 +0000 (13:04 +0000)]
vmxnet3: Convert to new vlan model.

This converts the vmxnet3 driver to use the new vlan model.  In doing so
it fixes missing tags in tcpdump and failure to do checksum offload when
tx vlan offload is disabled.

CC: Shreyas Bhatewara <sbhatewara@vmware.com>
CC: VMware PV-Drivers <pv-drivers@vmware.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Signed-off-by: Scott J. Goldman <scottjg@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocan: bfin_can: auto-calculate accessor sizes
Mike Frysinger [Fri, 24 Jun 2011 04:33:02 +0000 (04:33 +0000)]
can: bfin_can: auto-calculate accessor sizes

Since we have a struct that defines the sizes of the registers, we don't
need to explicitly use the 16bit read/write helpers.  Let the code figure
out which size access to make based on the size of the C type.

There should be no functional changes here.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocan: bfin_can: simplify xmit id1 setup
Mike Frysinger [Fri, 24 Jun 2011 04:33:01 +0000 (04:33 +0000)]
can: bfin_can: simplify xmit id1 setup

If we look closely, the 4 writes to TRANSMIT_CHL.id1 can be collapsed
down into much simpler code.  So do just that.

This also fixes a build failure due to the I/O macros no longer
getting pulled in.  Their minor (and accidental) usage here gets
dropped as part of the unification.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Wolfgang Grandegger <wg@grandegger.com>
Acked-by: Kurt Van Dijck <kurt.van.dijck@eia.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomlx4: use pci_dev->revision
Sergei Shtylyov [Thu, 23 Jun 2011 04:44:30 +0000 (04:44 +0000)]
mlx4: use pci_dev->revision

Commit 725c89997e03d71b09ea3c17c997da0712b9d835 (mlx4_en: Reporting HW revision
in ethtool -i) added code to read the revision ID from the PCI configuration
register while it's already stored by PCI subsystem in the 'revision' field of
'struct pci_dev'...

While at it, move the code being changed a bit in order to not break the
initialization sequence.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet_sched: fix dequeuer fairness
jamal [Sun, 26 Jun 2011 08:13:54 +0000 (08:13 +0000)]
net_sched: fix dequeuer fairness

Results on dummy device can be seen in my netconf 2011
slides. These results are for a 10Gige IXGBE intel
nic - on another i5 machine, very similar specs to
the one used in the netconf2011 results.
It turns out - this is a hell lot worse than dummy
and so this patch is even more beneficial for 10G.

Test setup:
----------

System under test sending packets out.
Additional box connected directly dropping packets.
Installed prio qdisc on the eth device and default
netdev default length of 1000 used as is.
The 3 prio bands each were set to 100 (didnt factor in
the results).

5 packet runs were made and the middle 3 picked.

results
-------

The "cpu" column indicates the which cpu the sample
was taken on,
The "Pkt runx" carries the number of packets a cpu
dequeued when forced to be in the "dequeuer" role.
The "avg" for each run is the number of times each
cpu should be a "dequeuer" if the system was fair.

3.0-rc4      (plain)
cpu         Pkt run1        Pkt run2        Pkt run3
================================================
cpu0        21853354        21598183        22199900
cpu1          431058          473476          393159
cpu2          481975          477529          458466
cpu3        23261406        23412299        22894315
avg         11506948        11490372        11486460

3.0-rc4 with patch and default weight 64
cpu       Pkt run1        Pkt run2        Pkt run3
================================================
cpu0        13205312        13109359        13132333
cpu1        10189914        10159127        10122270
cpu2        10213871        10124367        10168722
cpu3        13165760        13164767        13096705
avg         11693714        11639405        11630008

As you can see the system is still not perfect but
is a lot better than what it was before...

At the moment we use the old backlog weight, weight_p
which is 64 packets. It seems to be reasonably fine
with that value.
The system could be made more fair if we reduce the
weight_p (as per my presentation), but we are going
to affect the shared backlog weight. Unless deemed
necessary, I think the default value is fine. If not
we could add yet another knob.

Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net...
David S. Miller [Mon, 27 Jun 2011 07:09:56 +0000 (00:09 -0700)]
Merge branch 'master' of /linux/kernel/git/jkirsher/net-next-2.6