aboutsummaryrefslogtreecommitdiff
path: root/include/net
AgeCommit message (Collapse)AuthorFilesLines
2011-03-07ipv4: Cache source address in nexthop entries.David S. Miller1-2/+5
When doing output route lookups, we have to select the source address if the user has not specified an explicit one. First, if the route has an explicit preferred source address specified, then we use that. Otherwise we search the route's outgoing interface for a suitable address. This search can be precomputed and cached at route insertion time. The only missing part is that we have to refresh this precomputed value any time addresses are added or removed from the interface, and this is accomplished by fib_update_nh_saddrs(). Signed-off-by: David S. Miller <[email protected]>
2011-03-04ipv4: Remove flowi from struct rtable.David S. Miller1-9/+13
The only necessary parts are the src/dst addresses, the interface indexes, the TOS, and the mark. The rest is unnecessary bloat, which amounts to nearly 50 bytes on 64-bit. Signed-off-by: David S. Miller <[email protected]>
2011-03-04ipv4: Use passed-in protocol in ip_route_newports().David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-03-04Merge branch 'for-davem' of ↵David S. Miller2-6/+20
ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
2011-03-04Merge branch 'master' of ↵John W. Linville2-6/+20
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem
2011-03-04Merge branch 'master' of ↵John W. Linville3-33/+78
git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6
2011-03-03Merge branch 'master' of ↵David S. Miller2-1/+13
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/bnx2x/bnx2x.h
2011-03-03net_sched: reduce fifo qdisc sizeEric Dumazet1-0/+1
Because of various alignements [SLUB / qdisc], we use 512 bytes of memory for one {p|b}fifo qdisc, instead of 256 bytes on 64bit arches and 192 bytes on 32bit ones. Move the "u32 limit" inside "struct Qdisc" (no impact on other qdiscs) Change qdisc_alloc(), first trying a regular allocation before an oversized one. Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02dcbnl: add support for retrieving peer configuration - ceeShmulik Ravid1-0/+3
This patch adds the support for retrieving the remote or peer DCBX configuration via dcbnl for embedded DCBX stacks supporting the CEE DCBX standard. Signed-off-by: Shmulik Ravid <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02dcbnl: add support for retrieving peer configuration - ieeeShmulik Ravid1-0/+6
These 2 patches add the support for retrieving the remote or peer DCBX configuration via dcbnl for embedded DCBX stacks. The peer configuration is part of the DCBX MIB and is useful for debugging and diagnostics of the overall DCB configuration. The first patch add this support for IEEE 802.1Qaz standard the second patch add the same support for the older CEE standard. Diff for v2 - the peer-app-info is CEE specific. Signed-off-by: Shmulik Ravid <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02ipv4: ip_route_output_key() is better as an inline.David S. Miller1-1/+5
This avoid a stack frame at zero cost. Signed-off-by: David S. Miller <[email protected]>
2011-03-02ipv4: Make output route lookup return rtable directly.David S. Miller1-29/+29
Instead of on the stack. Signed-off-by: David S. Miller <[email protected]>
2011-03-02xfrm: Return dst directly from xfrm_lookup()David S. Miller1-6/+8
Instead of on the stack. Signed-off-by: David S. Miller <[email protected]>
2011-03-02Merge branch 'master' of ↵David S. Miller1-1/+17
git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6
2011-03-01xfrm: Handle blackhole route creation via afinfo.David S. Miller4-10/+4
That way we don't have to potentially do this in every xfrm_lookup() caller. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv6: Normalize arguments to ip6_dst_blackhole().David S. Miller1-3/+2
Return a dst pointer which is potentitally error encoded. Don't pass original dst pointer by reference, pass a struct net instead of a socket, and elide the flow argument since it is unnecessary. Signed-off-by: David S. Miller <[email protected]>
2011-03-01xfrm: Kill XFRM_LOOKUP_WAIT flag.David S. Miller1-2/+1
This can be determined from the flow flags instead. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv6: Change final dst lookup arg name to "can_sleep"David S. Miller1-2/+2
Since it indicates whether we are invoked from a sleepable context or not. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv4: Kill can_sleep arg to ip_route_output_flow()David S. Miller1-3/+3
This boolean state is now available in the flow flags. Signed-off-by: David S. Miller <[email protected]>
2011-03-01net: Add FLOWI_FLAG_CAN_SLEEP.David S. Miller2-0/+3
And set is in contexts where the route resolution can sleep. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv4: Make final arg to ip_route_output_flow to be boolean "can_sleep"David S. Miller1-3/+3
Since that is what the current vague "flags" argument means. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv4: Can final ip_route_connect() arg to boolean "can_sleep".David S. Miller1-2/+2
Since that's what the current vague "flags" thing means. Signed-off-by: David S. Miller <[email protected]>
2011-03-01ipv6: Consolidate route lookup sequences.David S. Miller1-3/+8
Route lookups follow a general pattern in the ipv6 code wherein we first find the non-IPSEC route, potentially override the flow destination address due to ipv6 options settings, and then finally make an IPSEC search using either xfrm_lookup() or __xfrm_lookup(). __xfrm_lookup() is used when we want to generate a blackhole route if the key manager needs to resolve the IPSEC rules (in this case -EREMOTE is returned and the original 'dst' is left unchanged). Otherwise plain xfrm_lookup() is used and when asynchronous IPSEC resolution is necessary, we simply fail the lookup completely. All of these cases are encapsulated into two routines, ip6_dst_lookup_flow and ip6_sk_dst_lookup_flow. The latter of which handles unconnected UDP datagram sockets. Signed-off-by: David S. Miller <[email protected]>
2011-03-01udp: Switch to ip_finish_skbHerbert Xu2-0/+23
This patch converts UDP to use the new ip_finish_skb API. This would then allows us to more easily use ip_make_skb which allows UDP to run without a socket lock. Signed-off-by: Herbert Xu <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-01inet: Add ip_make_skb and ip_finish_skbHerbert Xu1-0/+16
This patch adds the helper ip_make_skb which is like ip_append_data and ip_push_pending_frames all rolled into one, except that it does not send the skb produced. The sending part is carried out by ip_send_skb, which the transport protocol can call after it has tweaked the skb. It is meant to be called in cases where corking is not used should have a one-to-one correspondence to sendmsg. This patch also adds the helper ip_finish_skb which is meant to be replace ip_push_pending_frames when corking is required. Previously the protocol stack would peek at the socket write queue and add its header to the first packet. With ip_finish_skb, the protocol stack can directly operate on the final skb instead, just like the non-corking case with ip_make_skb. Signed-off-by: Herbert Xu <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-01inet: Remove explicit write references to sk/inet in ip_append_dataHerbert Xu1-9/+14
In order to allow simultaneous calls to ip_append_data on the same socket, it must not modify any shared state in sk or inet (other than those that are designed to allow that such as atomic counters). This patch abstracts out write references to sk and inet_sk in ip_append_data and its friends so that we may use the underlying code in parallel. Signed-off-by: Herbert Xu <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-01cfg80211: add a field for the bitrate of the last rx data packet from a stationFelix Fietkau1-1/+4
Also fix a typo in the STATION_INFO_TX_BITRATE description Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2011-02-27xfrm: Pass const xfrm_mark to xfrm_mark_put().David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-27xfrm: Pass const xfrm_address_t objects to xfrm_state_lookup* and xfrm_find_acq.David S. Miller1-5/+5
Signed-off-by: David S. Miller <[email protected]>
2011-02-27xfrm: Pass const arg to xfrm_alg_len and xfrm_alg_auth_len.David S. Miller1-2/+2
Signed-off-by: David S. Miller <[email protected]>
2011-02-27xfrm: Pass name as const to xfrm_*_get_byname().David S. Miller1-4/+4
Signed-off-by: David S. Miller <[email protected]>
2011-02-27Bluetooth: Move index to common header in management interfaceSzymon Janc1-40/+3
Most mgmt commands and event are related to hci adapter. Moving index to common header allow to easily use it in command status while reporting errors. For those not related to adapter use MGMT_INDEX_NONE (0xFFFF) as index. Signed-off-by: Szymon Janc <[email protected]> Acked-by: Johan Hedberg <[email protected]> Signed-off-by: Gustavo F. Padovan <[email protected]>
2011-02-25mac80211: support direct offchannel TX offloadJohannes Berg1-0/+10
For devices supported by iwlwifi sometimes off-channel transmissions need to be handled by the device completely. To support this mac80211 needs to pass the frame directly to the driver and not through the TX path as the driver needs the frame and channel information at the same time. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2011-02-25mac80211: make tx() operation return voidJohannes Berg1-1/+1
The return value of the tx operation is commonly misused by drivers, leading to errors. All drivers will drop frames if they fail to TX the frame, and they must also properly manage the queues (if they didn't, mac80211 would already warn). Removing the ability for drivers to return a BUSY value also allows significant cleanups of the TX TX handling code in mac80211. Note that this also fixes a bug in ath9k_htc, the old "return -1" there was wrong. Signed-off-by: Johannes Berg <[email protected]> Tested-by: Sedat Dilek <[email protected]> [ath5k] Acked-by: Gertjan van Wingerde <[email protected]> [rt2x00] Acked-by: Larry Finger <[email protected]> [b43, rtl8187, rtlwifi] Acked-by: Luciano Coelho <[email protected]> [wl12xx] Signed-off-by: John W. Linville <[email protected]>
2011-02-25Phonet: fix flawed "SYN/ACK" logicRémi Denis-Courmont1-0/+1
* Do not fail if the peer supports more or less than 3 algorithms. * Ignore unknown congestion control algorithms instead of failing. * Simplify congestion algorithm negotiation (largest is best). * Do not use a static buffer. * Fix off-by-two read overflow. * Avoid extra memory copy (in addition to skb_copy_bits()). The previous code really made no sense. Signed-off-by: Rémi Denis-Courmont <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-25Phonet: don't bother with transaction IDs (especially for indications)Rémi Denis-Courmont1-11/+0
Signed-off-by: Rémi Denis-Courmont <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-25Phonet: remove redumdant pep->pipe_stateRémi Denis-Courmont1-9/+0
sk->sk_state already contains the pipe state. Signed-off-by: Rémi Denis-Courmont <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-25Phonet: use socket destination in pipe protocolRémi Denis-Courmont1-1/+0
Signed-off-by: Rémi Denis-Courmont <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-25Phonet: implement per-socket destination/peer addressRémi Denis-Courmont1-0/+1
Signed-off-by: Rémi Denis-Courmont <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-24Merge branch 'for-davem' of ↵David S. Miller6-36/+542
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
2011-02-25ipvs: unify the formula to estimate the overhead of processing connectionsChangli Gao1-0/+14
lc and wlc use the same formula, but lblc and lblcr use another one. There is no reason for using two different formulas for the lc variants. The formula used by lc is used by all the lc variants in this patch. Signed-off-by: Changli Gao <[email protected]> Acked-by: Wensong Zhang <[email protected]> Signed-off-by: Simon Horman <[email protected]>
2011-02-24ipv4: Rearrange how ip_route_newports() gets port keys.David S. Miller1-8/+11
ip_route_newports() is the only place in the entire kernel that cares about the port members in the routing cache entry's lookup flow key. Therefore the only reason we store an entire flow inside of the struct rtentry is for this one special case. Rewrite ip_route_newports() such that: 1) The caller passes in the original port values, so we don't need to use the rth->fl.fl_ip_{s,d}port values to remember them. 2) The lookup flow is constructed by hand instead of being copied from the routing cache entry's flow. Signed-off-by: David S. Miller <[email protected]>
2011-02-24Merge 2.6.38-rc6 into tty-nextGreg Kroah-Hartman3-4/+4
This was to resolve a merge issue with drivers/char/Makefile and drivers/tty/serial/68328serial.c Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-02-23xfrm: Const'ify xfrm_address_t args to xfrm_state_find.David S. Miller1-2/+2
This required a const'ification in xfrm_init_tempstate() too. Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify ptr args to xfrm_state_*_check and xfrm_state_kern.David S. Miller1-12/+12
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify xfrm_tmpl and xfrm_state args to xfrm_state_addr_cmp.David S. Miller1-3/+3
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify policy arg to xp_net.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify selector args in xfrm_migrate paths.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify pointer args to km_migrate() and implementations.David S. Miller1-4/+8
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Const'ify address argument to xfrm_addr_any()David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>