platform/kernel/linux-3.10.git
16 years ago[NET_SCHED]: act_api: fix netlink API conversion bug
Patrick McHardy [Thu, 24 Jan 2008 04:32:42 +0000 (20:32 -0800)]
[NET_SCHED]: act_api: fix netlink API conversion bug

Fix two invalid attribute accesses, indices start at 1 with the new
netlink API.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: sch_netem: use nla_parse_nested_compat
Patrick McHardy [Thu, 24 Jan 2008 04:32:21 +0000 (20:32 -0800)]
[NET_SCHED]: sch_netem: use nla_parse_nested_compat

Replace open coded equivalent of nla_parse_nested_compat().

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: sch_atm: fix format string warning
Patrick McHardy [Thu, 24 Jan 2008 04:32:06 +0000 (20:32 -0800)]
[NET_SCHED]: sch_atm: fix format string warning

Fix format string warning introduces by the netlink API conversion:

net/sched/sch_atm.c:250: warning: format '%lu' expects type 'long unsigned int', but argument 3 has type 'int'.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace for ICMP replying code.
Denis V. Lunev [Wed, 23 Jan 2008 07:50:57 +0000 (23:50 -0800)]
[NETNS]: Add namespace for ICMP replying code.

All needed API is done, the namespace is available when required from
the device on the DST entry from the incoming packet. So, just replace
init_net with proper namespace.

Other protocols will follow.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Routing cache virtualization.
Denis V. Lunev [Wed, 23 Jan 2008 07:50:25 +0000 (23:50 -0800)]
[NETNS]: Routing cache virtualization.

Basically, this piece looks relatively easy. Namespace is already
available on the dst entry via device and the device is safe to
dereferrence. Compare it with one of a searcher and skip entry if
appropriate.

The only exception is ip_rt_frag_needed. So, add namespace parameter to it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Correct namespace for connect-time routing.
Denis V. Lunev [Wed, 23 Jan 2008 07:49:35 +0000 (23:49 -0800)]
[NETNS]: Correct namespace for connect-time routing.

ip_route_connect and ip_route_newports are a part of routing API
presented to the socket layer. The namespace is available inside them
through a socket.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: Convert actions from rtnetlink to new netlink API
Patrick McHardy [Wed, 23 Jan 2008 06:11:50 +0000 (22:11 -0800)]
[NET_SCHED]: Convert actions from rtnetlink to new netlink API

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: Convert classifiers from rtnetlink to new netlink API
Patrick McHardy [Wed, 23 Jan 2008 06:11:33 +0000 (22:11 -0800)]
[NET_SCHED]: Convert classifiers from rtnetlink to new netlink API

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: Convert packet schedulers from rtnetlink to new netlink API
Patrick McHardy [Wed, 23 Jan 2008 06:11:17 +0000 (22:11 -0800)]
[NET_SCHED]: Convert packet schedulers from rtnetlink to new netlink API

Convert packet schedulers to use the netlink API. Unfortunately a gradual
conversion is not possible without breaking compilation in the middle or
adding lots of casts, so this patch converts them all in one step. The
patch has been mostly generated automatically with some minor edits to
at least allow seperate conversion of classifiers and actions.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETLINK]: Add nla_append()
Patrick McHardy [Wed, 23 Jan 2008 06:10:59 +0000 (22:10 -0800)]
[NETLINK]: Add nla_append()

Used to append data to a message without a header or padding.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: mark classifier ops __read_mostly
Patrick McHardy [Wed, 23 Jan 2008 06:10:42 +0000 (22:10 -0800)]
[NET_SCHED]: mark classifier ops __read_mostly

Additionally remove unnecessary NULL initilizations of the next pointer.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NET_SCHED]: Move EXPORT_SYMBOL next to exported symbol
Patrick McHardy [Wed, 23 Jan 2008 06:10:23 +0000 (22:10 -0800)]
[NET_SCHED]: Move EXPORT_SYMBOL next to exported symbol

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace parameter to ip_route_output_key.
Denis V. Lunev [Wed, 23 Jan 2008 06:07:34 +0000 (22:07 -0800)]
[NETNS]: Add namespace parameter to ip_route_output_key.

Needed to propagate it down to the ip_route_output_flow.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace parameter to ip_route_output_flow.
Denis V. Lunev [Wed, 23 Jan 2008 06:07:10 +0000 (22:07 -0800)]
[NETNS]: Add namespace parameter to ip_route_output_flow.

Needed to propagate it down to the __ip_route_output_key.

Signed_off_by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace parameter to __ip_route_output_key.
Denis V. Lunev [Wed, 23 Jan 2008 06:06:48 +0000 (22:06 -0800)]
[NETNS]: Add namespace parameter to __ip_route_output_key.

This is only required to propagate it down to the
ip_route_output_slow.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace parameter to ip_route_output_slow.
Denis V. Lunev [Wed, 23 Jan 2008 06:06:19 +0000 (22:06 -0800)]
[NETNS]: Add namespace parameter to ip_route_output_slow.

This function needs a net namespace to lookup devices, fib tables,
etc. in, so pass it there.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add namespace parameter to ip_dev_find.
Denis V. Lunev [Wed, 23 Jan 2008 06:04:30 +0000 (22:04 -0800)]
[NETNS]: Add namespace parameter to ip_dev_find.

in_dev_find() need a namespace to pass it to fib_get_table(), so add
an argument.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add netns parameter to fib_select_default.
Denis V. Lunev [Wed, 23 Jan 2008 06:04:04 +0000 (22:04 -0800)]
[NETNS]: Add netns parameter to fib_select_default.

Currently fib_select_default calls fib_get_table() with the
init_net. Prepare it to provide a correct namespace to lookup default
route.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4]: Consolidate fib_select_default.
Denis V. Lunev [Wed, 23 Jan 2008 06:03:33 +0000 (22:03 -0800)]
[IPV4]: Consolidate fib_select_default.

The difference in the implementation of the fib_select_default when
CONFIG_IP_MULTIPLE_TABLES is (not) defined looks
negligible. Consolidate it and place into fib_frontend.c.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4]: Declarations cleanup in ip_fib.h.
Denis V. Lunev [Wed, 23 Jan 2008 06:03:03 +0000 (22:03 -0800)]
[IPV4]: Declarations cleanup in ip_fib.h.

Two small issues fixed:
- fib_select_multipath is exported from fib_semantics.c rather than from
  fib_frontend.c. So, move the declaration below appropriate comment.
- struct rt_entry declaration is not used. Drop it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: avoid rescan on dump
Stephen Hemminger [Wed, 23 Jan 2008 05:57:22 +0000 (21:57 -0800)]
[IPV4] fib_trie: avoid rescan on dump

This converts dumping (and flushing) of large route tables form O(N^2)
to O(N). If the route dump took multiple pages then the dump routine
gets called again. The old code kept track of location by counter, the
new code instead uses the last key.

This is a really big win ( 0.3 sec vs 12 sec) for big route tables.

One side effect is that if the table changes during the dump, then the
last key will not be found, and we will return -EBUSY.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: avoid extra search on delete
Stephen Hemminger [Wed, 23 Jan 2008 05:56:34 +0000 (21:56 -0800)]
[IPV4] fib_trie: avoid extra search on delete

Get rid of extra search that made route deletion O(n).

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: dump table in sorted order
Stephen Hemminger [Wed, 23 Jan 2008 05:56:11 +0000 (21:56 -0800)]
[IPV4] fib_trie: dump table in sorted order

It is easier with TRIE to dump the data traversal rather than
interating over every possible prefix. This saves some time and makes
the dump come out in sorted order.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: iterator recode
Stephen Hemminger [Wed, 23 Jan 2008 05:55:32 +0000 (21:55 -0800)]
[IPV4] fib_trie: iterator recode

Remove the complex loop structure of nextleaf() and replace it with a
simpler tree walker. This improves the performance and is much
cleaner.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: dump message multiple part flag
Stephen Hemminger [Wed, 23 Jan 2008 05:55:01 +0000 (21:55 -0800)]
[IPV4] fib_trie: dump message multiple part flag

Match fib_hash, and set NLM_F_MULTI to handle multiple part messages.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: use hash list
Stephen Hemminger [Wed, 23 Jan 2008 05:54:37 +0000 (21:54 -0800)]
[IPV4] fib_trie: use hash list

The code to dump can use the existing hash chain rather than doing
repeated lookup.

Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: compute size when needed
Stephen Hemminger [Wed, 23 Jan 2008 05:54:05 +0000 (21:54 -0800)]
[IPV4] fib_trie: compute size when needed

Compute the number of prefixes when needed, rather than doing bookeeping.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: style cleanup
Stephen Hemminger [Wed, 23 Jan 2008 05:53:36 +0000 (21:53 -0800)]
[IPV4] fib_trie: style cleanup

Style cleanups:
      * make check_leaf return -1 or plen, rather than by reference
      * Get rid of #ifdef that is always set
      * split out embedded function calls in if statements.
      * checkpatch warnings

Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4] fib_trie: put leaf nodes in a slab cache
Stephen Hemminger [Wed, 23 Jan 2008 05:51:50 +0000 (21:51 -0800)]
[IPV4] fib_trie: put leaf nodes in a slab cache

This improves locality for operations that touch all the leaves.  Save
space since these entries don't need to be hardware cache aligned.

Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[AF_X25]: constify function pointer tables
Jan Engelhardt [Wed, 23 Jan 2008 02:30:06 +0000 (18:30 -0800)]
[AF_X25]: constify function pointer tables

Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IrDA]: LMP discovery timer not started by default
Ross Burton [Wed, 23 Jan 2008 02:27:53 +0000 (18:27 -0800)]
[IrDA]: LMP discovery timer not started by default

By default, LMP sets up a 3 seconds timer for discovery.
We don't need it until discovery is set to 1.

Signed-off-by: Ross Burton <ross@openedhand.com>
Signed-off-by: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoath5k: always extend rx timestamp with tsf
Bruno Randolf [Mon, 21 Jan 2008 02:09:46 +0000 (11:09 +0900)]
ath5k: always extend rx timestamp with tsf

always extend the rx timestamp with the local TSF, since this information is
also needed for proper IBSS merging. this is done in the tasklet for now, maybe
has to be moved to the interrupt handler like in madwifi.

drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: configure backoff for IBSS beacon queue
Bruno Randolf [Sat, 19 Jan 2008 09:18:41 +0000 (18:18 +0900)]
ath5k: configure backoff for IBSS beacon queue

in "11.1.2.2 Beacon generation in an IBSS" the IEEE802.11 standard says, each
STA should... "b) Calculate a random delay uniformly distributed in the range
between zero and twice aCWmin × aSlotTime,".

configure cwmin and cwmax of the beacon queue in IBSS mode according to this.
unfortunately beacon backoff does not work reliably yet, so i suspect we have a
problem somewhere else, since the same settings (and similar beacon timer
configuration) work for madwifi.

drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: use SWBA to detect IBSS HW merges
Bruno Randolf [Sat, 19 Jan 2008 09:18:21 +0000 (18:18 +0900)]
ath5k: use SWBA to detect IBSS HW merges

use SWBA (software beacon alert) interrupts to keep track of the next beacon
time und check if a HW merge (automatic TSF update) has happened on every
received beacon with the same BSSID.

this is necessary because the atheros hardware will silently update the local
TSF in IBSS mode, but not its beacon timers. if the TSF is ahead of the beacon
timers no beacons are sent until the timers wrap around (typically after about
1 minute).

this solution is not very nice, since we have to look into every beacon, but
there is apparently no other way to detect HW merges.

drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/base.h:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: better beacon timer calculation
Bruno Randolf [Sat, 19 Jan 2008 09:17:59 +0000 (18:17 +0900)]
ath5k: better beacon timer calculation

update ath5k_beacon_update_timers() for better beacon timer calculation in a
variety of situations. most important is the possibility to call it with the
timestamp of a received beacon, when we detected that a HW merge has happened
and we need to reconfigure the beacon timers based on that.

we call this from the mac80211 callback reset_tsf now instead of beacon_update,
and there will be more use of it in the next patch.

drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: beacon interval is in TU
Bruno Randolf [Fri, 18 Jan 2008 12:51:40 +0000 (21:51 +0900)]
ath5k: beacon interval is in TU

the beacon interval is passed by mac80211 in TU already, so we can directly use
it without conversion. also update the comments about TU (1 TU is defined by
802.11 as 1024usec).

drivers/net/wireless/ath5k/ath5k.h:     Changes-licensed-under: ISC
drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/base.h:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: use 3 instead of 0x00000003
Bruno Randolf [Fri, 18 Jan 2008 12:51:19 +0000 (21:51 +0900)]
ath5k: use 3 instead of 0x00000003

reviewed beacon timer initialization with register traces from madwifi: what we
are doing is correct :). one minor fix: use 3 instead of 0x00000003 - it's more
readable.

drivers/net/wireless/ath5k/hw.c:        Changes-licensed-under: ISC

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agob43: Fix MAC control and microcode init
Michael Buesch [Tue, 22 Jan 2008 19:23:34 +0000 (20:23 +0100)]
b43: Fix MAC control and microcode init

This zeros out all microcode related memory before loading
the microcode.

This also fixes initialization of the MAC control register.
The _only_ place where we overwrite the contents of the MAC control
register is at the beginning of b43_chip_init().
All other places must do read() -> mask/set -> write() to not
overwrite existing bits.

This also adds a longer delay for waiting for the microcode
to initialize itself. It seems that the current timeout is sufficient
on all available devices, but there's no real reason why we shouldn't
wait for up to one second. Slow embedded devices might exist.
Better safe than sorry.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoWEXT: remove unused variable
Masakazu Mokuno [Tue, 22 Jan 2008 06:22:29 +0000 (15:22 +0900)]
WEXT: remove unused variable

As event_type_pk_size[] is not used,  Remove it.

Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: reset key cache after resume
John W. Linville [Mon, 21 Jan 2008 20:36:05 +0000 (15:36 -0500)]
ath5k: reset key cache after resume

Otherwise it may be impossible to connected to an open network after a
resume.

This is a modified version of an original patch by
Alex Eskin <alexeskin@yahoo.com>:

https://bugzilla.redhat.com/show_bug.cgi?id=425950#c8

Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: use AR5K_KEYTABLE_SIZE when initializing key table
John W. Linville [Mon, 21 Jan 2008 20:36:04 +0000 (15:36 -0500)]
ath5k: use AR5K_KEYTABLE_SIZE when initializing key table

...instead of using AR5K_KEYCACHE_SIZE, which would seem to be a
typo/thinko...

Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agob43: Fix firmware caching
Michael Buesch [Mon, 21 Jan 2008 18:55:09 +0000 (19:55 +0100)]
b43: Fix firmware caching

We must also store the ID string (filename) for the cached firmware blobs
and verify that we really have the right firmware cached before using it.
If we don't have the right fw cached, we must free it and request the
correct blobs.

This fixes bandswitch on A/B/G multi-PHY devices.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: fix rx flow sparse errors, make functions static
Ron Rindjunsky [Mon, 21 Jan 2008 10:39:12 +0000 (12:39 +0200)]
mac80211: fix rx flow sparse errors, make functions static

This patch adds static declarations to functions in the Rx flow in order to
eliminate sparse errors

Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: fixing ieee80211_bar types
Ron Rindjunsky [Mon, 21 Jan 2008 10:39:11 +0000 (12:39 +0200)]
mac80211: fixing ieee80211_bar types

This patch changes ieee80211_bar control and start_seq_num to
match the proper bitwise attribute expected from ieee 802.11 frame

Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agob43: Add more N-PHY init code
Michael Buesch [Fri, 18 Jan 2008 00:09:25 +0000 (01:09 +0100)]
b43: Add more N-PHY init code

This also adds lots of TODOs. Oh well. Lots of work. :)

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agorc80211-pid: fix last_sample initialization
Stefano Brivio [Wed, 16 Jan 2008 23:38:29 +0000 (00:38 +0100)]
rc80211-pid: fix last_sample initialization

Fix last_sample initialization. kzalloc'ing the per-STA data wasn't enough,
as jiffies can assume negative values as well. This fixes a bug which
prevented correct PID operation for a while after booting.

Thanks to Michael Buesch for reporting this.

Reported-and-tested-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: fix RCU locking in __ieee80211_rx_handle_packet
Johannes Berg [Wed, 16 Jan 2008 20:47:40 +0000 (21:47 +0100)]
mac80211: fix RCU locking in __ieee80211_rx_handle_packet

Commit c7a51bda ("mac80211: restructure __ieee80211_rx") extracted
__ieee80211_rx_handle_packet out of __ieee80211_rx and hence changed
the locking rules for __ieee80211_rx_handle_packet(), it is now
invoked under RCU lock. There is, however, one instance left where
it contains an rcu_read_unlock() in an error path, which is a bug.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agob43legacy: Remove the PHY spinlock
Michael Buesch [Wed, 9 Jan 2008 19:15:31 +0000 (20:15 +0100)]
b43legacy: Remove the PHY spinlock

This fixes a sparse warning about weird locking.
The spinlock is not needed, so simply remove it.
This also adds some sanity checks to the PHY and radio locking
to protect against recursive locking.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: Assign correct TID for local bridged packets
Guy Cohen [Wed, 9 Jan 2008 17:12:48 +0000 (19:12 +0200)]
mac80211: Assign correct TID for local bridged packets

This patch assigns correct TID to frames transmitted between
two stations in the same BSS in AP mode.
The problem is that skb->protocol is not set to ETH_P_IP and it is wrong
to use that field at this stage.
The fix compares the LLC/Protocol headers explicitly to check if the
encapsulated frame is IP frame

Signed-off-by: Guy Cohen <guy.cohen@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years ago[DST]: shrinks sizeof(struct rtable) by 64 bytes on x86_64
Eric Dumazet [Tue, 22 Jan 2008 14:18:34 +0000 (06:18 -0800)]
[DST]: shrinks sizeof(struct rtable) by 64 bytes on x86_64

On x86_64, sizeof(struct rtable) is 0x148, which is rounded up to
0x180 bytes by SLAB allocator.

We can reduce this to exactly 0x140 bytes, without alignment overhead,
and store 12 struct rtable per PAGE instead of 10.

rate_tokens is currently defined as an "unsigned long", while its
content should not exceed 6*HZ. It can safely be converted to an
unsigned int.

Moving tclassid right after rate_tokens to fill the 4 bytes hole
permits to save 8 bytes on 'struct dst_entry', which finally permits
to save 8 bytes on 'struct rtable'

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the pernet subsystem for fragments.
Pavel Emelyanov [Tue, 22 Jan 2008 14:12:39 +0000 (06:12 -0800)]
[NETNS][FRAGS]: Make the pernet subsystem for fragments.

On namespace start we mainly prepare the ctl variables.

When the namespace is stopped we have to kill all the fragments that
point to this namespace.  The inet_frags_exit_net() handles it.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the LRU list per namespace.
Pavel Emelyanov [Tue, 22 Jan 2008 14:11:48 +0000 (06:11 -0800)]
[NETNS][FRAGS]: Make the LRU list per namespace.

The inet_frags.lru_list is used for evicting only, so we have
to make it per-namespace, to evict only those fragments, who's
namespace exceeded its high threshold, but not the whole hash.
Besides, this helps to avoid long loops  in evictor.

The spinlock is not per-namespace because it protects the
hash table as well, which is global.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Isolate the secret interval from namespaces.
Pavel Emelyanov [Tue, 22 Jan 2008 14:11:04 +0000 (06:11 -0800)]
[NETNS][FRAGS]: Isolate the secret interval from namespaces.

Since we have one hashtable to lookup the fragment, having
different secret_interval-s for hash rebuild doesn't make
sense, so move this one to inet_frags.

The inet_frags_ctl becomes empty after this, so remove it.
The appropriate ctl table is kept read-only in namespaces.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make thresholds work in namespaces.
Pavel Emelyanov [Tue, 22 Jan 2008 14:10:13 +0000 (06:10 -0800)]
[NETNS][FRAGS]: Make thresholds work in namespaces.

This is the same as with the timeout variable.

Currently, after exceeding the high threshold _all_
the fragments are evicted, but it will be fixed in
later patch.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the net.ipv4.ipfrag_timeout work in namespaces.
Pavel Emelyanov [Tue, 22 Jan 2008 14:09:37 +0000 (06:09 -0800)]
[NETNS][FRAGS]: Make the net.ipv4.ipfrag_timeout work in namespaces.

Move it to the netns_frags, adjust the usage and
make the appropriate ctl table writable.

Now fragment, that live in different namespaces can
live for different times.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Duplicate sysctl tables for new namespaces.
Pavel Emelyanov [Tue, 22 Jan 2008 14:08:36 +0000 (06:08 -0800)]
[NETNS][FRAGS]: Duplicate sysctl tables for new namespaces.

Each namespace has to have own tables to tune their
different parameters, so duplicate the tables and
register them.

All the tables in sub-namespaces are temporarily made
read-only.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the mem counter per-namespace.
Pavel Emelyanov [Tue, 22 Jan 2008 14:07:25 +0000 (06:07 -0800)]
[NETNS][FRAGS]: Make the mem counter per-namespace.

This is also simple, but introduces more changes, since
then mem counter is altered in more places.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the nqueues counter per-namespace.
Pavel Emelyanov [Tue, 22 Jan 2008 14:06:23 +0000 (06:06 -0800)]
[NETNS][FRAGS]: Make the nqueues counter per-namespace.

This is simple - just move the variable from struct inet_frags
to struct netns_frags and adjust the usage appropriately.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Make the inet_frag_queue lookup work in namespaces.
Pavel Emelyanov [Tue, 22 Jan 2008 14:02:14 +0000 (06:02 -0800)]
[NETNS][FRAGS]: Make the inet_frag_queue lookup work in namespaces.

Since fragment management code is consolidated, we cannot have the
pointer from inet_frag_queue to struct net, since we must know what
king of fragment this is.

So, I introduce the netns_frags structure. This one is currently
empty, but will be eventually filled with per-namespace
attributes. Each inet_frag_queue is tagged with this one.

The conntrack_reasm is not "netns-izated", so it has one static
netns_frags instance to keep working in init namespace.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS][FRAGS]: Move ctl tables around.
Pavel Emelyanov [Tue, 22 Jan 2008 13:58:31 +0000 (05:58 -0800)]
[NETNS][FRAGS]: Move ctl tables around.

This is a preparation for sysctl netns-ization.
Move the ctl tables to the files, where the tuning
variables reside. Plus make the helpers to register
the tables.

This will simplify the later patches and will keep
similar things closer to each other.

ipv4, ipv6 and conntrack_reasm are patched differently,
but the result is all the tables are in appropriate files.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoigb: PCI-Express 82575 Gigabit Ethernet driver
Auke Kok [Thu, 24 Jan 2008 10:22:38 +0000 (02:22 -0800)]
igb: PCI-Express 82575 Gigabit Ethernet driver

We are pleased to announce a new Gigabit Ethernet product and its
driver to the linux community. This product is the Intel(R) 82575
Gigabit Ethernet adapter family. Physical adapters will be available
to the public soon. These adapters come in 2- and 4-port versions
(copper PHY) currently. Other variants will be available later.

The 82575 chipset supports significantly different features that
warrant a new driver. The descriptor format is (just like the
ixgbe driver) different. The device can use multiple MSI-X vectors
and multiple queues for both send and receive. This allows us to
optimize some of the driver code specifically as well compared to
the e1000-supported devices.

This version of the igb driver no lnger uses fake netdevices and
incorporates napi_struct members for each ring to do the multi-
queue polling. multi-queue is enabled by default and the driver
supports NAPI mode only.

All the namespace collisions should be gone in this version too. The
register macro's have been condensed to improve readability.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agobnx2 annotations
Al Viro [Sat, 22 Dec 2007 19:44:51 +0000 (19:44 +0000)]
bnx2 annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
16 years agoannotate netxen
Al Viro [Sat, 22 Dec 2007 19:44:00 +0000 (19:44 +0000)]
annotate netxen

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
16 years agoannotate myri10ge
Al Viro [Sat, 22 Dec 2007 18:56:43 +0000 (18:56 +0000)]
annotate myri10ge

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
16 years agoannotate cxgb3
Al Viro [Sat, 22 Dec 2007 18:56:23 +0000 (18:56 +0000)]
annotate cxgb3

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
16 years agoannotate chelsio
Al Viro [Sat, 22 Dec 2007 18:56:33 +0000 (18:56 +0000)]
annotate chelsio

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
16 years ago[IPV6] NDISC: Sparse: Use different variable name for local use.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:32:53 +0000 (17:32 +0900)]
[IPV6] NDISC: Sparse: Use different variable name for local use.

Fix the following sparse warnings:
| net/ipv6/ndisc.c:1300:21: warning: symbol 'opt' shadows an earlier one
| net/ipv6/ndisc.c:1078:7: originally declared here

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV6] ADDRCONF: Sparse: Make inet6_dump_addr() code paths more straight-forward.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:29:40 +0000 (17:29 +0900)]
[IPV6] ADDRCONF: Sparse: Make inet6_dump_addr() code paths more straight-forward.

Fix the following sparse warning:
| net/ipv6/addrconf.c:3384:2: warning: context imbalance in 'inet6_dump_addr' - different lock contexts for basic block

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV6]: Sparse: Declare non-static ipv6_{route,icmp,frag}_sysctl_init() in header.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:18:38 +0000 (17:18 +0900)]
[IPV6]: Sparse: Declare non-static ipv6_{route,icmp,frag}_sysctl_init() in header.

Fix the following sparse warnings:
| net/ipv6/route.c:2491:18: warning: symbol 'ipv6_route_sysctl_init' was not declared. Should it be static?
| net/ipv6/icmp.c:922:18: warning: symbol 'ipv6_icmp_sysctl_init' was not declared. Should it be static?
| net/ipv6/reassembly.c:628:6: warning: symbol 'ipv6_frag_sysctl_init' was not declared. Should it be static?

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV6] ADDRLABEL: Sparse: Make several functions static.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:12:50 +0000 (17:12 +0900)]
[IPV6] ADDRLABEL: Sparse: Make several functions static.

Fix following sparse warnings:
| net/ipv6/addrlabel.c:172:25: warning: symbol 'ip6addrlbl_alloc' was not declared. Should it be static?
| net/ipv6/addrlabel.c:219:5: warning: symbol '__ip6addrlbl_add' was not declared. Should it be static?
| net/ipv6/addrlabel.c:260:5: warning: symbol 'ip6addrlbl_add' was not declared. Should it be static?
| net/ipv6/addrlabel.c:285:5: warning: symbol '__ip6addrlbl_del' was not declared. Should it be static?
| net/ipv6/addrlabel.c:311:5: warning: symbol 'ip6addrlbl_del' was not declared. Should it be static?

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV6] UDPLITE: Sparse: Declare non-static symbols in header.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:25:46 +0000 (17:25 +0900)]
[IPV6] UDPLITE: Sparse: Declare non-static symbols in header.

Fix the following sparse warnings:
| net/ipv6/udplite.c:45:14: warning: symbol 'udplitev6_prot' was not declared. Should it be static?
| net/ipv6/udplite.c:80:12: warning: symbol 'udplitev6_init' was not declared. Should it be static?
| net/ipv6/udplite.c:99:6: warning: symbol 'udplitev6_exit' was not declared. Should it be static?

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV6] UDP,UDPLITE: Sparse: {__udp6_lib,udp,udplite}_err() are of void.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:09:55 +0000 (17:09 +0900)]
[IPV6] UDP,UDPLITE: Sparse: {__udp6_lib,udp,udplite}_err() are of void.

Fix following sparse warnings:
| net/ipv6/udp.c:262:2: warning: returning void-valued expression
| net/ipv6/udplite.c:29:2: warning: returning void-valued expression

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[IPV4] UDP,UDPLITE: Sparse: {__udp4_lib,udp,udplite}_err() are of void.
YOSHIFUJI Hideaki [Tue, 22 Jan 2008 08:05:31 +0000 (17:05 +0900)]
[IPV4] UDP,UDPLITE: Sparse: {__udp4_lib,udp,udplite}_err() are of void.

Fix following sparse warnings:
| net/ipv4/udp.c:421:2: warning: returning void-valued expression
| net/ipv4/udplite.c:38:2: warning: returning void-valued expression

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
16 years ago[BNX2]: Fix driver phy_flags name space.
Michael Chan [Tue, 22 Jan 2008 03:51:35 +0000 (19:51 -0800)]
[BNX2]: Fix driver phy_flags name space.

Prefix "bp->phy_flags" names with BNX2_PHY_FLAG_* for consistency.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Pass correct namespace in ip_rt_get_source.
Denis V. Lunev [Tue, 22 Jan 2008 01:35:06 +0000 (17:35 -0800)]
[NETNS]: Pass correct namespace in ip_rt_get_source.

ip_rt_get_source is the infamous place for which dst_ifdown kludges
have been implemented. This means that rt->u.dst.dev can be safely
dereferrenced obtain nd_net.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Pass correct namespace in ip_route_input_slow.
Denis V. Lunev [Tue, 22 Jan 2008 01:34:35 +0000 (17:34 -0800)]
[NETNS]: Pass correct namespace in ip_route_input_slow.

The packet on the input path always has a referrence to an input
network device it is passed from. Extract network namespace from it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Pass correct namespace in context fib_check_nh.
Denis V. Lunev [Tue, 22 Jan 2008 01:34:00 +0000 (17:34 -0800)]
[NETNS]: Pass correct namespace in context fib_check_nh.

Correct network namespace is already used in fib_check_nh. Re-work its
usage for better readability and pass into fib_lookup &
inetdev_by_index.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Pass correct namespace in fib_validate_source.
Denis V. Lunev [Tue, 22 Jan 2008 01:33:15 +0000 (17:33 -0800)]
[NETNS]: Pass correct namespace in fib_validate_source.

Correct network namespace is available inside fib_validate_source. It
can be obtained from the device passed in. The device is not NULL as
in_device is obtained from it just above.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add netns parameter to inetdev_by_index.
Denis V. Lunev [Tue, 22 Jan 2008 01:32:38 +0000 (17:32 -0800)]
[NETNS]: Add netns parameter to inetdev_by_index.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[NETNS]: Add netns parameter to fib_lookup.
Denis V. Lunev [Tue, 22 Jan 2008 01:31:55 +0000 (17:31 -0800)]
[NETNS]: Add netns parameter to fib_lookup.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4]: ipmr sparse warnings
Stephen Hemminger [Tue, 22 Jan 2008 01:28:59 +0000 (17:28 -0800)]
[IPV4]: ipmr sparse warnings

Get rid of some of the sparse warnings.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[IPV4]: igmp sparse warnings
Stephen Hemminger [Tue, 22 Jan 2008 01:28:31 +0000 (17:28 -0800)]
[IPV4]: igmp sparse warnings

Partial sparse warning fix.  The other conditional locking
is too much for sparse to handle.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[VLAN]: sparse warning fix
Stephen Hemminger [Tue, 22 Jan 2008 01:27:44 +0000 (17:27 -0800)]
[VLAN]: sparse warning fix

Minor sparse warning fix.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[BNX2]: Fix driver software flag namespace.
David S. Miller [Tue, 22 Jan 2008 01:15:40 +0000 (17:15 -0800)]
[BNX2]: Fix driver software flag namespace.

Prefix "bnx2->flags" names with BNX2_* for consistency.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[BNX2] Update version to 1.7.2.
Michael Chan [Tue, 22 Jan 2008 01:07:29 +0000 (17:07 -0800)]
[BNX2] Update version to 1.7.2.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[BNX2]: Add link-down workaround on 5706 serdes.
Michael Chan [Tue, 22 Jan 2008 01:07:06 +0000 (17:07 -0800)]
[BNX2]: Add link-down workaround on 5706 serdes.

In some blade systems using the 5706 serdes, the hardware sometimes
does not properly generate link down interrupts.  We add a workaround
in the driver's timer to force a link-down when some PHY registers
report loss of SYNC.

The parallel detect logic is cleaned up slightly to better integrate
the workaround.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[BNX2]: Fix minor bug in bnx2_has_work().
Michael Chan [Tue, 22 Jan 2008 01:06:41 +0000 (17:06 -0800)]
[BNX2]: Fix minor bug in bnx2_has_work().

It is more correct to get the status block from the bnx2_napi struct
instead of the bnx2 struct.  It happens that they are the same in this
case because we are using the first MSIX vector.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[BNX2]: Disable jumbo rx paging on 5709 Ax.
Michael Chan [Tue, 22 Jan 2008 01:06:09 +0000 (17:06 -0800)]
[BNX2]: Disable jumbo rx paging on 5709 Ax.

The chip has problem running in this mode and needs to be disabled.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agob43/nphy.c: include headers to avoid build breakage on some platforms
John W. Linville [Thu, 17 Jan 2008 21:57:10 +0000 (16:57 -0500)]
b43/nphy.c: include headers to avoid build breakage on some platforms

Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agodrivers/net/wireless/rt2x00/rt2x00usb.c: fix uninitialized var warning
Andrew Morton [Wed, 16 Jan 2008 10:58:24 +0000 (02:58 -0800)]
drivers/net/wireless/rt2x00/rt2x00usb.c: fix uninitialized var warning

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agodrivers/net/wireless/iwlwifi/iwl-3945.c: fix printk warning
Andrew Morton [Wed, 16 Jan 2008 10:56:33 +0000 (02:56 -0800)]
drivers/net/wireless/iwlwifi/iwl-3945.c: fix printk warning

drivers/net/wireless/iwlwifi/iwl-3945.c: In function 'iwl3945_add_radiotap':
drivers/net/wireless/iwlwifi/iwl-3945.c:269: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int'

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agob43legacy: fix use-after-free rfkill bug
Stefano Brivio [Sun, 13 Jan 2008 17:35:52 +0000 (18:35 +0100)]
b43legacy: fix use-after-free rfkill bug

Fix rfkill code which caused a use-after-free bug. Thanks to David
Woodhouse for spotting this out.

Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: A-MPDU Rx remove stop_rx_ba_session warning print
Ron Rindjunsky [Sun, 13 Jan 2008 16:25:43 +0000 (18:25 +0200)]
mac80211: A-MPDU Rx remove stop_rx_ba_session warning print

This patch removes a warning print from ieee80211_sta_stop_rx_ba_session
in case the tid is inactive when interface goes down.

Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: A-MPDU Rx stop aggregation on proper dev
Ron Rindjunsky [Sun, 13 Jan 2008 16:21:58 +0000 (18:21 +0200)]
mac80211: A-MPDU Rx stop aggregation on proper dev

This patch adds a check to insure that Rx A-MPDU will be stopped only
for the proper device.

Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: Initialize vif pointer
Ivo van Doorn [Sun, 13 Jan 2008 13:16:47 +0000 (14:16 +0100)]
mac80211: Initialize vif pointer

Before calling update_beacon() mac80211 must
initialize the control.vif pointer so it can
be used by the driver to determine which
interface is trying to send the beacon.

v2: ieee80211_beacon_get() should also initialize the
vif pointer since it can be called by mac80211 internally
before calling config_interface().

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolibertas: pepper main with debug statement
Holger Schurig [Wed, 16 Jan 2008 14:59:52 +0000 (15:59 +0100)]
libertas: pepper main with debug statement

libertas: re-pepper debug statementThe recent fluff of updates
didn't put proper lbs_deb_enter/leave calls into the source code.
Add them where appropriate.

Also contains some whitespace changes.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolibertas: don't blindly try mesh
Holger Schurig [Wed, 16 Jan 2008 14:57:44 +0000 (15:57 +0100)]
libertas: don't blindly try mesh

The CF card only has a very old firmware (5.0.16p0). This firmware doesn't
know anything about mesh config. However, current code blindly calls
mesh_config when the card is inserted. So check the firmware version before
issuing this command.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolibertas: always show firmware release
Holger Schurig [Wed, 16 Jan 2008 14:55:22 +0000 (15:55 +0100)]
libertas: always show firmware release

Always shows the firmware release.

Also converts the firmware release into something that is easily comparable.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolibertas: move cardspecific data to driver
Holger Schurig [Wed, 16 Jan 2008 14:52:58 +0000 (15:52 +0100)]
libertas: move cardspecific data to driver

boot2_version is purely USB specific, so move it to struct if_usb_card.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolibertas cs/sdio: fix 'NOHZ: local_softirq_pending 08' message
Holger Schurig [Wed, 16 Jan 2008 14:48:44 +0000 (15:48 +0100)]
libertas cs/sdio: fix 'NOHZ: local_softirq_pending 08' message

netif_rx should be called only from interrupt context. if_cs and if_sdio receive
packets from other contexts, and thus should call netif_rx_ni.

Signed-off-by: Marc Pignat <marc.pignat@hevs.ch>
Acked-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>