profile/ivi/kernel-x86-ivi.git
13 years agonet: ethtool support to configure number of channels
amit salecha [Thu, 7 Apr 2011 01:58:42 +0000 (01:58 +0000)]
net: ethtool support to configure number of channels

Ethtool support to configure RX, TX and other channels. combined field
in struct ethtool_channels to reflect set of channel (RX, TX or other).
Other channel can be link interrupts, SR-IOV coordination etc.

ETHTOOL_GCHANNELS will report max and current number of RX channels,
max and current number of TX channels, max and current number of other channel
or max and current number of combined channel.

Number of channel can be modify upto max number of channel through
ETHTOOL_SCHANNELS command.

Ben Hutchings:
o define 'combined' and 'other' types.  Most multiqueue drivers pair up RX and TX
  queues so that most channels combine RX and TX work.
o Please could you use a kernel-doc comment to describe the structure.

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: Missing 'inline' in vlan-disabled vlan_untag()
David S. Miller [Wed, 13 Apr 2011 02:27:51 +0000 (19:27 -0700)]
net: Missing 'inline' in vlan-disabled vlan_untag()

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville...
David S. Miller [Tue, 12 Apr 2011 23:16:02 +0000 (16:16 -0700)]
Merge branch 'for-davem' of git://git./linux/kernel/git/linville/wireless-next-2.6

13 years agoatm: iphase: Fix set-but-not-used warnings.
David S. Miller [Tue, 12 Apr 2011 23:14:21 +0000 (16:14 -0700)]
atm: iphase: Fix set-but-not-used warnings.

The "iavcc" and "iadev" cases are obvious.

The intr_status and frmr_intr cases are reading a register to clear
the chip status.  This driver is pretty old and creaky, and uses
volatile pointer dereferences to do register I/O when it should be
using readl() and friends.  However that it outside of the scope of
these changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago9p: Kill set but unused variable in 9p_client_{read,write}() and p9_client_readdir()
David S. Miller [Tue, 12 Apr 2011 22:58:41 +0000 (15:58 -0700)]
9p: Kill set but unused variable in 9p_client_{read,write}() and p9_client_readdir()

Fixes the following warnings:

net/9p/client.c:1305:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable]
net/9p/client.c:1370:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable]
net/9p/client.c:1769:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable]

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: vlan_features comment clarification
Michał Mirosław [Tue, 12 Apr 2011 04:07:39 +0000 (04:07 +0000)]
net: vlan_features comment clarification

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: ioc3: convert to hw_features
Michał Mirosław [Tue, 12 Apr 2011 09:48:17 +0000 (09:48 +0000)]
net: ioc3: convert to hw_features

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: bnx2x: convert to hw_features
Michał Mirosław [Tue, 12 Apr 2011 09:38:23 +0000 (09:38 +0000)]
net: bnx2x: convert to hw_features

Since ndo_fix_features callback is postponing features change when
bp->recovery_state != BNX2X_RECOVERY_DONE, netdev_update_features()
has to be called again when this condition changes. Previously,
ethtool_ops->set_flags callback returned -EBUSY in that case
(it's not possible in the new model).

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
v5: - don't delay set_features, as it's rtnl_locked - same as recovery process
v4: - complete bp->rx_csum -> NETIF_F_RXCSUM conversion
    - add check for failed ndo_set_features in ndo_open callback
v3: - include NETIF_F_LRO in hw_features
    - don't call netdev_update_features() if bnx2x_nic_load() failed
v2: - comment in ndo_fix_features callback
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: bna: convert to hw_features
Michał Mirosław [Tue, 12 Apr 2011 09:38:23 +0000 (09:38 +0000)]
net: bna: convert to hw_features

Note: looks like bnad->conf_mutex is duplicating rtnl_lock.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: ps3_gelic: convert to hw_features
Michał Mirosław [Sun, 10 Apr 2011 04:49:55 +0000 (04:49 +0000)]
net: ps3_gelic: convert to hw_features

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: sky2: convert to hw_features
Michał Mirosław [Sun, 10 Apr 2011 03:13:21 +0000 (03:13 +0000)]
net: sky2: convert to hw_features

Caveats:
 - driver modifies vlan_features on HW VLAN TX changes
 - broken RX checksum will be reenabled on features change

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: add RTNL_ASSERT in __netdev_update_features()
Michał Mirosław [Tue, 12 Apr 2011 09:56:38 +0000 (09:56 +0000)]
net: add RTNL_ASSERT in __netdev_update_features()

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: vlan: make non-hw-accel rx path similar to hw-accel
Jiri Pirko [Thu, 7 Apr 2011 19:48:33 +0000 (19:48 +0000)]
net: vlan: make non-hw-accel rx path similar to hw-accel

Now there are 2 paths for rx vlan frames. When rx-vlan-hw-accel is
enabled, skb is untagged by NIC, vlan_tci is set and the skb gets into
vlan code in __netif_receive_skb - vlan_hwaccel_do_receive.

For non-rx-vlan-hw-accel however, tagged skb goes thru whole
__netif_receive_skb, it's untagged in ptype_base hander and reinjected

This incosistency is fixed by this patch. Vlan untagging happens early in
__netif_receive_skb so the rest of code (ptype_all handlers, rx_handlers)
see the skb like it was untagged by hw.

Signed-off-by: Jiri Pirko <jpirko@redhat.com>
v1->v2:
remove "inline" from vlan_core.c functions
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoethtool: time to blink provided in seconds not jiffies
Allan, Bruce W [Mon, 11 Apr 2011 13:01:59 +0000 (13:01 +0000)]
ethtool: time to blink provided in seconds not jiffies

When blinking for a duration set by the user, the value specified is in
seconds but it is used as the number of jiffies in the timeout after which
the Physical ID indicator is deactivated.  Fix by converting the timeout
to seconds.

Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Acked-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
John W. Linville [Tue, 12 Apr 2011 20:18:44 +0000 (16:18 -0400)]
Merge branch 'master' of git://git./linux/kernel/git/linville/wireless-next-2.6 into for-davem

Conflicts:
drivers/net/wireless/ath/ar9170/main.c
drivers/net/wireless/ath/ar9170/phy.c
drivers/net/wireless/zd1211rw/zd_rf_rf2959.c

13 years agovxge: update driver version
Jon Mason [Fri, 8 Apr 2011 11:11:23 +0000 (11:11 +0000)]
vxge: update driver version

Update vxge driver version to 2.5.3

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agovxge: spin-lock issue
Jon Mason [Fri, 8 Apr 2011 11:11:22 +0000 (11:11 +0000)]
vxge: spin-lock issue

In vxge_hw_vpath_close, __vxge_hw_vp_terminate memsets the vpath which
clobbers the spin lock state, then the driver attempts to acquire the
spin lock.  Resolve this by not zeroing the lock part of vpath struct,
clean-up vpath locking in init, close, and fix locking hole in fw_api
call.

Issue found by Bob Picco <bpicco@redhat.com>

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agovxge: always enable hardware time stamp
Jon Mason [Fri, 8 Apr 2011 11:11:21 +0000 (11:11 +0000)]
vxge: always enable hardware time stamp

Hardware time stamp calculation can only be enabled by the privileged
function. Enable it always by default and simply use the ethtool
interface to set a flag to indicate whether or not the respective
function driver should indicate the timestamp along with the received
packet.

Also, make certain fields in vxge_hw_device_config bit-fields to reduce
the size of the struct.

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agos2io: Fix warnings due to -Wunused-but-set-variable.
David S. Miller [Mon, 11 Apr 2011 23:00:00 +0000 (16:00 -0700)]
s2io: Fix warnings due to -Wunused-but-set-variable.

Most of these are cases where we are trying to read back a register
after a write to ensure completion.

Simply pre-fixing the readl() or readq() with "(void)" is sufficient
because these are volatile operations and the compiler cannot eliminate
them just because no real assignment takes place.

The case of free_rxd_blk()'s assignments to "struct buffAdd *ba" is a
real spurious assignment as this variable is completely otherwise
unused.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jon Mason <jdmason@kudzu.us>
13 years agoniu: Fix warnings due to -Wunused-but-set-variable
David S. Miller [Mon, 11 Apr 2011 22:49:26 +0000 (15:49 -0700)]
niu: Fix warnings due to -Wunused-but-set-variable

Most of these were legitimate, and once case was a real bug
(not propagating errors from ->xcvr_init() methods).

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: Add BUG_ON if dev_info is missing in packet
Sjur Brændeland [Mon, 11 Apr 2011 10:43:52 +0000 (10:43 +0000)]
caif: Add BUG_ON if dev_info is missing in packet

Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: Don't resend if dev_queue_xmit fails.
Sjur Brændeland [Mon, 11 Apr 2011 10:43:51 +0000 (10:43 +0000)]
caif: Don't resend if dev_queue_xmit fails.

If CAIF Link Layer returns an error, we no longer try to re-build the
CAIF packet and resend it. Instead, we simply return any transmission
errors to the socket client.

Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: code cleanup
Stephen Hemminger [Mon, 11 Apr 2011 10:43:50 +0000 (10:43 +0000)]
caif: code cleanup

Cleanup of new CAIF code.
  * make local functions static
  * remove code that is never used
  * expand get_caif_conf() since wrapper is no longer needed
  * make args to comparison functions const
  * rename connect_req_to_link_param to keep exported names
    consistent

Compile tested only.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Mon, 11 Apr 2011 20:44:25 +0000 (13:44 -0700)]
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

Conflicts:
drivers/net/smsc911x.c

13 years agoniu: Recognise original ethtool class code for AH/ESP flow hashing
Ben Hutchings [Fri, 8 Apr 2011 13:49:15 +0000 (13:49 +0000)]
niu: Recognise original ethtool class code for AH/ESP flow hashing

When the RX network flow classification interface was originally
defined for reporting and controlling of flow hashing, AH and ESP were
not given distinct flow class codes (apparently because the Sun
Neptune hardware treats them very similarly).

For flow steering, they must be distinguished, so new and separate
flow class codes were added for AH and ESP.  But for backward-
compatibility, flow hash operations should continue to support the
original class codes.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agogianfar: Clean up implementation of RX network flow classification
Ben Hutchings [Fri, 8 Apr 2011 13:45:11 +0000 (13:45 +0000)]
gianfar: Clean up implementation of RX network flow classification

This code was cribbed from niu, so gfar_set_hash_opts() begins by
converting the ethtool flow class code into a class code for Sun
Neptune hardware, then does the same thing again for the hardware it's
really dealing with.  It may also return -1 (-EPERM) for some
unhandled ethtool flow class codes.

Remove the useless code and definitions, and fix the error code.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoqlge: use ethtool set_phys_id
stephen hemminger [Wed, 6 Apr 2011 13:47:50 +0000 (13:47 +0000)]
qlge: use ethtool set_phys_id

This is a stab at replacing old ethtool phys_id with set_phys_id
on the Qlogic 10Gb driver. Compile tested only.

Not sure if set_led_cfg will flash continuously, or needs
to be replaced by ETHTOOL_ID_ON/ETHTOOL_ID_OFF

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agov3 ethtool: add ntuple flow specifier data to network flow classifier
Alexander Duyck [Fri, 8 Apr 2011 18:01:59 +0000 (18:01 +0000)]
v3 ethtool: add ntuple flow specifier data to network flow classifier

This change is meant to add an ntuple data extensions to the rx network flow
classification specifiers.  The idea is to allow ntuple to be displayed via
the network flow classification interface.

The first patch had some left over stuff from the original flow extension
flags I had added.  That bit is removed in this patch.

The second had some left over comments that stated we ignored bits in the
masks when we actually match them.

This work is based on input from Ben Hutchings.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Reviewed-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoethtool: prevent null pointer dereference with NTUPLE set but no set_rx_ntuple
Alexander Duyck [Fri, 8 Apr 2011 12:07:22 +0000 (12:07 +0000)]
ethtool: prevent null pointer dereference with NTUPLE set but no set_rx_ntuple

This change is meant to prevent a possible null pointer dereference if
NETIF_F_NTUPLE is defined but the set_rx_ntuple function pointer is not.

The main motivation behind this patch is to eventually replace the ntuple
interfaces entirely with the network flow classifier interfaces.  This
allows the device drivers to maintain the ntuple check internally while
using the network flow classifier interface for setting up and displaying
rules.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: performance bugfix - allow radio stack to prioritize packets.
Sjur Brændeland [Mon, 11 Apr 2011 10:11:30 +0000 (10:11 +0000)]
caif: performance bugfix - allow radio stack to prioritize packets.

    In the CAIF Payload message the Packet Type indication must be set to
    UNCLASSIFIED in order to allow packet prioritization in the modem's
    network stack. Otherwise TCP-Ack is not prioritized in the modems
    transmit queue.

Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocaif: Bugfix use for_each_safe when removing list nodes.
Sjur Brændeland [Mon, 11 Apr 2011 10:11:29 +0000 (10:11 +0000)]
caif: Bugfix use for_each_safe when removing list nodes.

Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonetxen: limit skb frags for non tso packet
amit salecha [Mon, 11 Apr 2011 02:10:22 +0000 (02:10 +0000)]
netxen: limit skb frags for non tso packet

Machines are getting deadlock in four node cluster environment.
All nodes are accessing (find /gfs2 -depth -print|cpio -ocv > /dev/null)
200 GB storage on a GFS2 filesystem.
This result in memory fragmentation and driver receives 18 frags for
1448 byte packets.
For non tso packet, fw drops the tx request, if it has >14 frags.

Fixing it by pulling extra frags.

Cc: stable@kernel.org
Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobonding:fix two typos
Peter Pan(潘卫平) [Mon, 11 Apr 2011 00:16:32 +0000 (00:16 +0000)]
bonding:fix two typos

replace relpy with reply.
replace premanent with permanent.

Signed-off-by: Weiping Pan(潘卫平) <panweiping3@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: fix tranmitted/tranmitting typo
Peter Pan(潘卫平) [Mon, 11 Apr 2011 00:15:57 +0000 (00:15 +0000)]
net: fix tranmitted/tranmitting typo

replace tranmitted with transmitted.
replace tranmitting with transmitting.

Signed-off-by: Weiping Pan(潘卫平) <panweiping3@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobonding:delete unused rlb_interval_counter
Peter Pan(潘卫平) [Sun, 10 Apr 2011 22:17:25 +0000 (22:17 +0000)]
bonding:delete unused rlb_interval_counter

Now, alb_bond_info uses rx_ntt,rlb_update_delay_counter and
rlb_update_retry_counter to decide when to call rlb_update_rx_clients().

Signed-off-by: Weiping Pan(潘卫平) <panweiping3@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobonding:delete unused alb_timer
Peter Pan(潘卫平) [Sun, 10 Apr 2011 22:17:24 +0000 (22:17 +0000)]
bonding:delete unused alb_timer

Now bonding-alb uses delayed_work instead of timer_list.

Signed-off-by: Weiping Pan(潘卫平) <panweiping3@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobonding:set save_load to 0 when initializing
Peter Pan(潘卫平) [Fri, 8 Apr 2011 03:40:19 +0000 (03:40 +0000)]
bonding:set save_load to 0 when initializing

It is unnecessary to set save_load to 1 here,
as the tx_hashtbl is just kzalloced.

Signed-off-by: Weiping Pan(潘卫平) <panweiping3@gmail.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agostmmac: fix Transmit Underflow error
Giuseppe CAVALLARO [Sun, 10 Apr 2011 23:16:46 +0000 (23:16 +0000)]
stmmac: fix Transmit Underflow error

On some old MAC chips without COE sometime the
Transmit Underflow error is issued.

The driver aborted all the transmission process
and initialized it from scratch.
This breaks the network activity as raised by Nachiketa
on a SPEAr board.

The patch is to fix this rare underflow event.
The driver will only clear the interrupt and the Tx
DMA will go out the Suspend state as soon as the
descriptor is fetched again.
The driver will continue to bump-up the DMA FIFO threshold
that, indeed, helped somebody to prevent this kind of error
in the past as well.

Reported-by: Nachiketa Prachanda <nprachanda@ncomputing.com>
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agostmmac: fix open funct when exit on error
Giuseppe CAVALLARO [Sun, 10 Apr 2011 23:16:45 +0000 (23:16 +0000)]
stmmac: fix open funct when exit on error

This patch reviews the open function and fixes some
errors when exit with an error state.
It also moves the request_irq after core is initialized
when interrupts are properly masked.

Signed-off-by: Shiraz Hashim <shiraz.hashim@st.com>
Hacked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agostmmac: fixed dma lib build when turn-on the debug option
Giuseppe CAVALLARO [Sun, 10 Apr 2011 23:16:44 +0000 (23:16 +0000)]
stmmac: fixed dma lib build when turn-on the debug option

This patch fixes a compilation error when build the
dwmac_lib with the DEBUG option enabled.

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
David S. Miller [Mon, 11 Apr 2011 19:53:51 +0000 (12:53 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/linville/wireless-2.6

13 years agoiwlegacy: make iwl3945 and iwl4965 select IWLWIFI_LEGACY
John W. Linville [Mon, 11 Apr 2011 17:02:06 +0000 (13:02 -0400)]
iwlegacy: make iwl3945 and iwl4965 select IWLWIFI_LEGACY

Otherwise, IWLWIFI_LEGACY has to be selected independently before the
drivers are made available.

Reported-by: Dave Airlie <airlied@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Cc: Stanislaw Gruszka <sgruszka@redhat.com>
Cc: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agopci: fix PCI bus allocation alignment handling
Linus Torvalds [Mon, 11 Apr 2011 17:53:11 +0000 (10:53 -0700)]
pci: fix PCI bus allocation alignment handling

In commit 13583b16592a ("PCI: refactor io size calculation code") Ram
had a thinko in the refactorization of the code: the end result used the
variable 'align' for the bus alignment, but the original code used
'min_align'.

Since then, another use of that 'align' variable got introduced by
commit c8adf9a3e873 ("PCI: pre-allocate additional resources to devices
only after successful allocation of essential resources.")

Fix both of those uses to use 'min_align' as they should.

Daniel Hellstrom <daniel@gaisler.com>
Acked-by: Ram Pai <linuxram@us.ibm.com>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 11 Apr 2011 14:27:24 +0000 (07:27 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (34 commits)
  net: Add support for SMSC LAN9530, LAN9730 and LAN89530
  mlx4_en: Restoring RX buffer pointer in case of failure
  mlx4: Sensing link type at device initialization
  ipv4: Fix "Set rt->rt_iif more sanely on output routes."
  MAINTAINERS: add entry for Xen network backend
  be2net: Fix suspend/resume operation
  be2net: Rename some struct members for clarity
  pppoe: drop PPPOX_ZOMBIEs in pppoe_flush_dev
  dsa/mv88e6131: add support for mv88e6085 switch
  ipv6: Enable RFS sk_rxhash tracking for ipv6 sockets (v2)
  be2net: Fix a potential crash during shutdown.
  bna: Fix for handling firmware heartbeat failure
  can: mcp251x: Allow pass IRQ flags through platform data.
  smsc911x: fix mac_lock acquision before calling smsc911x_mac_read
  iwlwifi: accept EEPROM version 0x423 for iwl6000
  rt2x00: fix cancelling uninitialized work
  rtlwifi: Fix some warnings/bugs
  p54usb: IDs for two new devices
  wl12xx: fix potential buffer overflow in testmode nvs push
  zd1211rw: reset rx idle timer from tasklet
  ...

13 years agonet: Add support for SMSC LAN9530, LAN9730 and LAN89530
Steve Glendinning [Mon, 11 Apr 2011 01:59:27 +0000 (18:59 -0700)]
net: Add support for SMSC LAN9530, LAN9730 and LAN89530

This patch adds support for SMSC's LAN9530, LAN9730 and LAN89530 USB
ethernet controllers to the existing smsc95xx driver by adding
their new USB VID/PID pairs.

Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: bnx2: convert to hw_features
Michał Mirosław [Sun, 10 Apr 2011 04:47:46 +0000 (04:47 +0000)]
net: bnx2: convert to hw_features

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: via-velocity: convert to hw_features
Michał Mirosław [Sun, 10 Apr 2011 03:13:21 +0000 (03:13 +0000)]
net: via-velocity: convert to hw_features

Trivial conversion.

This also enables toggling TX VLAN offload and fixes TX checksumming
race with offload changes.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: ksz884x: convert to hw_features
Michał Mirosław [Sun, 10 Apr 2011 03:13:21 +0000 (03:13 +0000)]
net: ksz884x: convert to hw_features

This also fixes possible race when changing receive checksum state
and removes IPV6_CSUM_GEN_HACK as it's always set.

BTW, The claim about fake IPV6 checksum looks dubious. If that were true,
then there's a problem in networking core and should be fixed there and not
in random drivers.

BTW#2, there's no MAINTAINERS entry for this driver. I assume this driver
is supported by Micrel?

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: stmmac: convert to hw_features
Michał Mirosław [Sat, 9 Apr 2011 02:46:55 +0000 (02:46 +0000)]
net: stmmac: convert to hw_features

This also removes TSO as it's made fully in software --- better to leave this
to networking core.

If the MAC features can be detected at probe time and not at open, then
stmmac_fix_features could be simplified by limiting hw_features. That's
also better for users as they don't see offloads being togglable but
never turned on.

Redundant fallbacks for TX csum are removed as it's already handled
by network core.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: 8139cp: convert to hw_features
Michał Mirosław [Sat, 9 Apr 2011 00:58:18 +0000 (00:58 +0000)]
net: 8139cp: convert to hw_features

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: r8169: convert to hw_features
Michał Mirosław [Fri, 8 Apr 2011 06:35:56 +0000 (06:35 +0000)]
net: r8169: convert to hw_features

Simple conversion with a bit of needed cleanup.

This also fixes:
 - confusion around vlan_features in rtl8169_vlan_mode(),
 - problem with broken TSO for too big MTU (the limit is set
   at 0xFFF --- max MSS field value).

SG+IP_CSUM+TSO is left disabled by default, based on suggestion by
David Dillow.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: benet: convert to hw_features - fixup
Michał Mirosław [Fri, 8 Apr 2011 02:38:47 +0000 (02:38 +0000)]
net: benet: convert to hw_features - fixup

Fix up after merge with NETIF_F_RXHASH implementation.

This allows to toggle NETIF_F_RXHASH and NETIF_F_HW_VLAN_TX.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: Remove invalid offloads
Michał Mirosław [Fri, 8 Apr 2011 02:38:46 +0000 (02:38 +0000)]
net: Remove invalid offloads

Remove offload changing ethtool ops which drivers don't really support:

 - fs_enet
 - ucc_geth

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoDisable rp_filter for IPsec packets
Michael Smith [Thu, 7 Apr 2011 04:51:51 +0000 (04:51 +0000)]
Disable rp_filter for IPsec packets

The reverse path filter interferes with IPsec subnet-to-subnet tunnels,
especially when the link to the IPsec peer is on an interface other than
the one hosting the default route.

With dynamic routing, where the peer might be reachable through eth0
today and eth1 tomorrow, it's difficult to keep rp_filter enabled unless
fake routes to the remote subnets are configured on the interface
currently used to reach the peer.

IPsec provides a much stronger anti-spoofing policy than rp_filter, so
this patch disables the rp_filter for packets with a security path.

Signed-off-by: Michael Smith <msmith@cbnco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agofib_validate_source(): pass sk_buff instead of mark
Michael Smith [Thu, 7 Apr 2011 04:51:50 +0000 (04:51 +0000)]
fib_validate_source(): pass sk_buff instead of mark

This makes sk_buff available for other use in fib_validate_source().

Signed-off-by: Michael Smith <msmith@cbnco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agousb: plusb: Add debug to reset function
simon [Wed, 6 Apr 2011 21:40:15 +0000 (21:40 +0000)]
usb: plusb: Add debug to reset function

This patch adds some debug to the reset function to print out the
reason why it fails.

Signed-off-by: Simon Wood <simon@mungewell.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agousb: plusb: Add support for PL-25A1
simon [Wed, 6 Apr 2011 21:40:14 +0000 (21:40 +0000)]
usb: plusb: Add support for PL-25A1

This patch adds support for the PL-25A1 by adding the appropriate
USB ID's. This chip is used in the Belkin 'Windows Easy Transfer'
Cables.

Signed-off-by: Simon Wood <simon@mungewell.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agousb: plusb: Whitespace
simon [Wed, 6 Apr 2011 21:40:13 +0000 (21:40 +0000)]
usb: plusb: Whitespace

This patch cleans up a couple of instances of incorrect whitespace

Signed-off-by: Simon Wood <simon@mungewell.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Sun, 10 Apr 2011 16:56:10 +0000 (09:56 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ALSA: hda - Don't query connections for widgets have no connections
  ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E)
  ALSA: hda - HDMI: Fix MCP7x audio infoframe checksums
  ALSA: usb-audio: define another USB ID for a buggy USB MIDI cable
  ALSA: HDA: Fix dock mic for Lenovo X220-tablet
  ASoC: format_register_str: Don't clip register values
  ASoC: PXA: Fix oops in __pxa2xx_pcm_prepare
  ASoC: zylonite: set .codec_dai_name in initializer

13 years agoMerge git://git.infradead.org/mtd-2.6
Linus Torvalds [Sat, 9 Apr 2011 20:23:50 +0000 (13:23 -0700)]
Merge git://git.infradead.org/mtd-2.6

* git://git.infradead.org/mtd-2.6:
  mtd: atmel_nand: use CPU I/O when buffer is in vmalloc(ed) region
  mtd: atmel_nand: modify test case for using DMA operations
  mtd: atmel_nand: fix support for CPUs that do not support DMA access
  mtd: atmel_nand: trivial: change DMA usage information trace
  mtd: mtdswap: fix printk format warning

13 years agoMerge branch 'fix/hda' into for-linus
Takashi Iwai [Sat, 9 Apr 2011 08:05:53 +0000 (10:05 +0200)]
Merge branch 'fix/hda' into for-linus

13 years agoMerge branch 'fix/asoc' into for-linus
Takashi Iwai [Sat, 9 Apr 2011 08:05:30 +0000 (10:05 +0200)]
Merge branch 'fix/asoc' into for-linus

13 years agocxgb4vf: drop phys_id interface and implement the newer set_phys_id
Dimitris Michailidis [Fri, 8 Apr 2011 20:07:08 +0000 (13:07 -0700)]
cxgb4vf: drop phys_id interface and implement the newer set_phys_id

Signed-off-by: Dimitris Michailidis <dm@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocxgb4: drop phys_id interface and implement the newer set_phys_id
Dimitris Michailidis [Fri, 8 Apr 2011 20:06:25 +0000 (13:06 -0700)]
cxgb4: drop phys_id interface and implement the newer set_phys_id

Signed-off-by: Dimitris Michailidis <dm@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agocnic: Fix rtnl deadlock
Michael Chan [Fri, 8 Apr 2011 20:03:02 +0000 (13:03 -0700)]
cnic: Fix rtnl deadlock

When cnic_stop_hw() -> cnic_cm_stop_bnx2x_hw() is called under rtnl_lock()
from NETDEV_DOWN event, it waits for cnic_delete_task() to complete.
It will deadlock when cnic_delete_task() takes rtnl_lock() before
calling cnic_ulp_stop_one().

We fix it by removing the rtnl_lock() in cnic_delete_task().
cnic_ulp_stop_one() has mutex and atomic bit ops to prevent important
operations from being done more than once, so it is not necessary to take
rtnl_lock().

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
Linus Torvalds [Fri, 8 Apr 2011 18:47:35 +0000 (11:47 -0700)]
Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6

* 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
  NFS: Change initial mount authflavor only when server returns NFS4ERR_WRONGSEC
  NFS: Fix a signed vs. unsigned secinfo bug
  Revert "net/sunrpc: Use static const char arrays"

13 years agosignal.c: fix erroneous syscall kernel-doc
Randy Dunlap [Fri, 8 Apr 2011 17:53:46 +0000 (10:53 -0700)]
signal.c: fix erroneous syscall kernel-doc

Fix erroneous syscall kernel-doc comments in kernel/signal.c.

Reported-by: Matt Fleming <matt@console-pimps.org>
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agop54: Initialize extra_len in p54_tx_80211
Jason Conti [Thu, 7 Apr 2011 19:09:57 +0000 (21:09 +0200)]
p54: Initialize extra_len in p54_tx_80211

This patch fixes a very serious off-by-one bug in
the driver, which could leave the device in an
unresponsive state.

The problem was that the extra_len variable [used to
reserve extra scratch buffer space for the firmware]
was left uninitialized. Because p54_assign_address
later needs the value to reserve additional space,
the resulting frame could be to big for the small
device's memory window and everything would
immediately come to a grinding halt.

Reference: https://bugs.launchpad.net/bugs/722185

Cc: <stable@kernel.org>
Acked-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: Jason Conti <jason.conti@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: fix missing ath9k_ps_wakeup/ath9k_ps_restore calls
Felix Fietkau [Thu, 7 Apr 2011 17:07:17 +0000 (19:07 +0200)]
ath9k: fix missing ath9k_ps_wakeup/ath9k_ps_restore calls

These missing chip wakeups mainly cause crashes on AR5416 cards in MIPS
boards, but have also been reported to cause radio stability issues on
AR9285.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Cc: stable@kernel.org
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoMerge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Fri, 8 Apr 2011 14:36:14 +0000 (07:36 -0700)]
Merge branch 'for-linus' of git://git390.marist.edu/linux-2.6

* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
  [S390] compile fix for latest binutils
  [S390] cio: prevent purging of CCW devices in the online state
  [S390] qdio: fix init sequence
  [S390] Fix parameter passing for smp_switch_to_cpu()
  [S390] oprofile s390: prevent stack corruption

13 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux...
Linus Torvalds [Fri, 8 Apr 2011 14:35:17 +0000 (07:35 -0700)]
Merge branch 'for_linus' of git://git./linux/kernel/git/jack/linux-fs-2.6

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:
  quota: Don't write quota info in dquot_commit()
  ext3: Fix writepage credits computation for ordered mode

13 years agomlx4_en: Restoring RX buffer pointer in case of failure
Yevgeny Petrilin [Wed, 6 Apr 2011 23:25:45 +0000 (23:25 +0000)]
mlx4_en: Restoring RX buffer pointer in case of failure

If not done, second attempt to open the RX ring would cause memory corruption.

Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agomlx4: Sensing link type at device initialization
Yevgeny Petrilin [Wed, 6 Apr 2011 23:24:42 +0000 (23:24 +0000)]
mlx4: Sensing link type at device initialization

When bringing the port up, performing a SENSE_PORT command
To try and check to which physical link type (IB or Ethernet) the physical
port is connected.
In case there is no valid link partner, the port will come up as its
supported default.

Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: atl*: convert to hw_features
Michał Mirosław [Thu, 7 Apr 2011 07:32:18 +0000 (07:32 +0000)]
net: atl*: convert to hw_features

Things left as they were:
 - atl1: is RX checksum really enabled?
 - atl2: copy-paste from atl1, with-errors-on-modify I presume
 - atl1c: there's a bug: MTU can't be changed if device is not up

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: tg3: convert to hw_features
Michał Mirosław [Thu, 7 Apr 2011 03:35:07 +0000 (03:35 +0000)]
net: tg3: convert to hw_features

Cleanup hint: Some features are calculated in tg3_get_invariants() and
the rest in its caller --- tg3_init_one(). This is not changed here.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: enic: convert to hw_features
Michał Mirosław [Thu, 7 Apr 2011 02:43:48 +0000 (02:43 +0000)]
net: enic: convert to hw_features

As the driver uses GRO and not LRO, LRO settings are ignored anyway
and are removed here to avoid confusion.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agonet: benet: convert to hw_features
Michał Mirosław [Thu, 7 Apr 2011 02:43:48 +0000 (02:43 +0000)]
net: benet: convert to hw_features

Simple conversion.

This also fixes a bug in TX checksum toggling --- driver was changing
NETIF_F_HW_CSUM instead of NETIF_F_IP_CSUM+NETIF_F_IPV6_CSUM.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoskge: convert to hw_features
Michał Mirosław [Thu, 31 Mar 2011 01:01:35 +0000 (01:01 +0000)]
skge: convert to hw_features

just IP_CSUM.  This needs testing and so is not changed here.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: call FLR after setup wol in be_shutdown
Ajit Khaparde [Wed, 6 Apr 2011 18:08:43 +0000 (18:08 +0000)]
be2net: call FLR after setup wol in be_shutdown

Calling setup_wol after a reset is inconsequential.
The WOL setting should be programmed before FLR.
And yes, FLR does not erase wol information.

Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: dynamically allocate adapter->vf_cfg
Ajit Khaparde [Wed, 6 Apr 2011 18:08:30 +0000 (18:08 +0000)]
be2net: dynamically allocate adapter->vf_cfg

Instead of a fixed sized array for vf_cfg, allocate the size dynamically
depending on number of VFs the device supports.

Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: fix to get max VFs supported from adapter
Ajit Khaparde [Wed, 6 Apr 2011 18:08:17 +0000 (18:08 +0000)]
be2net: fix to get max VFs supported from adapter

The user supplied num_vfs value need not be compared
against a static BE_MAX_VF, but can be checked against
the actual VFs that the device can support.

Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: use common method to check for sriov function type
Ajit Khaparde [Wed, 6 Apr 2011 18:08:01 +0000 (18:08 +0000)]
be2net: use common method to check for sriov function type

Lancer and BE can both use SLI_INTF_REG to check a VF or a PF.

Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agobe2net: add rxhash support
Ajit Khaparde [Wed, 6 Apr 2011 18:07:43 +0000 (18:07 +0000)]
be2net: add rxhash support

Add rxhash support,
Based on initial work by Eric Dumazet.

Cc: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Thu, 7 Apr 2011 21:05:23 +0000 (14:05 -0700)]
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

Conflicts:
drivers/net/benet/be_main.c

13 years agoipv4: Fix "Set rt->rt_iif more sanely on output routes."
OGAWA Hirofumi [Thu, 7 Apr 2011 21:04:08 +0000 (14:04 -0700)]
ipv4: Fix "Set rt->rt_iif more sanely on output routes."

Commit 1018b5c01636c7c6bda31a719bda34fc631db29a ("Set rt->rt_iif more
sanely on output routes.")  breaks rt_is_{output,input}_route.

This became the cause to return "IP_PKTINFO's ->ipi_ifindex == 0".

To fix it, this does:

1) Add "int rt_route_iif;" to struct rtable

2) For input routes, always set rt_route_iif to same value as rt_iif

3) For output routes, always set rt_route_iif to zero.  Set rt_iif
   as it is done currently.

4) Change rt_is_{output,input}_route() to test rt_route_iif

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
John W. Linville [Thu, 7 Apr 2011 20:45:40 +0000 (16:45 -0400)]
Merge branch 'master' of git://git./linux/kernel/git/linville/wireless-2.6

Conflicts:
drivers/net/wireless/rtlwifi/efuse.c
drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c
net/bluetooth/mgmt.c

13 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Thu, 7 Apr 2011 20:34:41 +0000 (13:34 -0700)]
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  watchdog: mpc8xxx_wdt: fix build

13 years agowatchdog: mpc8xxx_wdt: fix build
Peter Korsgaard [Wed, 30 Mar 2011 13:48:22 +0000 (15:48 +0200)]
watchdog: mpc8xxx_wdt: fix build

Since 1c48a5c93da6313 (dt: Eliminate of_platform_{,un}register_driver)
mpc8xxx_wdt no longer builds as it tries to refer to a 'match' variable
rather than ofdev->dev.of_match that it checks just before.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
13 years agoNFS: Change initial mount authflavor only when server returns NFS4ERR_WRONGSEC
Bryan Schumaker [Thu, 7 Apr 2011 20:02:20 +0000 (16:02 -0400)]
NFS: Change initial mount authflavor only when server returns NFS4ERR_WRONGSEC

When attempting an initial mount, we should only attempt other
authflavors if AUTH_UNIX receives a NFS4ERR_WRONGSEC error.
This allows other errors to be passed back to userspace programs.

Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
13 years agocfg80211: add a timer for invalid user reg hints
Luis R. Rodriguez [Tue, 5 Apr 2011 17:49:04 +0000 (10:49 -0700)]
cfg80211: add a timer for invalid user reg hints

We have no other option but to inform userspace that we
have queued up their regulatory hint request when we are
given one given that nl80211 operates atomically on user
requests. The best we can do is accept the request, and
add a delayed work item for processing failure and cancel it
if we succeeed. Upon failure we restore the regulatory
settings and ignore the user input.

This fixes this reported bug:

https://bugzilla.kernel.org/show_bug.cgi?id=28112

Reported-by: gregoryx.alagnou@intel.com
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: fix regulatory restore upon user hints
Luis R. Rodriguez [Tue, 5 Apr 2011 17:49:03 +0000 (10:49 -0700)]
cfg80211: fix regulatory restore upon user hints

When we restore regulatory settings its possible CRDA
will not reply because of a bogus user entry. In this
case the bogus entry will prevent any further processing
on cfg80211 for regulatory domains even if we restore
regulatory settings.

To prevent this we suck out all pending requests when
restoring regulatory settings and add them back into the
queue after we have queued up the reset work.

The impact of not having this applied is that a user
with privileges can issue a userspace regulatory hint
while we are disasocciating and this would prevent any
further processing of regulatory domains.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: move IO functions out of line
Johannes Berg [Tue, 5 Apr 2011 16:42:12 +0000 (09:42 -0700)]
iwlagn: move IO functions out of line

This generates a massive reduction in module size:
with debug:
   text    data     bss     dec     hex filename
 670300   13136     420  683856   a6f50 iwlagn.ko (before)
 388347   13136     408  401891   621e3 iwlagn.ko (after)

without debug:
   text    data     bss     dec     hex filename
 528575   13072     420  542067   84573 iwlagn.ko (before)
 294192   13072     408  307672   4b1d8 iwlagn.ko (after)

This also removes all the IO debug functionality since
it can easily be replaced by tracing, and makes the
code unnecessarily complex.

I haven't done any CPU utilisation measurements, but
given that the hotpaths don't use much IO it is not
likely to have a negative impact; in fact, the size
reduction will reduce cache pressure which possibly
improves performance.

Finally, an unused function or two were removed.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove ISR ops
Johannes Berg [Tue, 5 Apr 2011 16:42:11 +0000 (09:42 -0700)]
iwlagn: remove ISR ops

The ISR (interrupt service routine) ops are now
no longer necessary since they are the same for
all devices this driver now handles.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove rxb page bookkeeping
Johannes Berg [Tue, 5 Apr 2011 16:42:10 +0000 (09:42 -0700)]
iwlagn: remove rxb page bookkeeping

We never use the value in alloc_rxb_page,
so there's no point in keeping it either.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove rev_id
Johannes Berg [Tue, 5 Apr 2011 16:42:09 +0000 (09:42 -0700)]
iwlagn: remove rev_id

The rev_id variable is only printed, we
don't need to store it.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove hw_rev
Johannes Berg [Tue, 5 Apr 2011 16:42:08 +0000 (09:42 -0700)]
iwlagn: remove hw_rev

The hw_rev variable is used only during init,
so there's no need to keep it around.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove hw_wa_rev
Johannes Berg [Tue, 5 Apr 2011 16:42:07 +0000 (09:42 -0700)]
iwlagn: remove hw_wa_rev

The variable is never used.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: remove BSM clock setting
Johannes Berg [Tue, 5 Apr 2011 16:42:06 +0000 (09:42 -0700)]
iwlagn: remove BSM clock setting

Again, a 4965 specific code path that we no
longer need in iwlagn.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: init cmd_queue earlier
Johannes Berg [Tue, 5 Apr 2011 16:42:05 +0000 (09:42 -0700)]
iwlagn: init cmd_queue earlier

We know after loading the ucode whether it will
support PAN or not, so we can also initialise
the cmd_queue variable much earlier.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: clean up alive handling
Johannes Berg [Tue, 5 Apr 2011 16:42:04 +0000 (09:42 -0700)]
iwlagn: clean up alive handling

Devices newer than 4965 don't actually send
two different versions of the ALIVE command,
so we always had a bug here since before this
patch we copy more data than we got. Remove
the iwl_init_alive_resp struct and don't use
it.

Since we also really don't need to track all
the data received in ALIVE as we only use the
error and log event tables later, we can also
save space by just keeping those and not more
data around in memory.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>