aboutsummaryrefslogtreecommitdiff
path: root/net
AgeCommit message (Collapse)AuthorFilesLines
2011-02-23xfrm: Const'ify tmpl and address arguments to ->init_temprop()David S. Miller2-4/+4
Signed-off-by: David S. Miller <[email protected]>
2011-02-23xfrm: Pass km_event pointers around as const when possible.David S. Miller3-22/+22
Signed-off-by: David S. Miller <[email protected]>
2011-02-23Merge branch 'tipc-Feb23-2011' of ↵David S. Miller17-435/+375
git://git.kernel.org/pub/scm/linux/kernel/git/paulg/net-next-2.6
2011-02-23tipc: Avoid reliable broadcast preparation for NACK messagesAllan Stephens1-0/+1
Enhance TIPC to skip unnecessary (and, in some cases, redundant) preparation work when sending a broadcast link NACK message, since this preparation is only required for broadcast messages that are sent in a reliable manner. This change also fixes a bug that caused NACK messages to be improperly counted as "TX packets" in TIPC's broadcast link statistics. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Remove unused message header field for requested number of linksAllan Stephens5-22/+5
Eliminates support for the "number of requested links" field in a neighbor discovery message. This field was never used and has been removed from the TIPC 2.0 protocol specification. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Remove support for per-connection message sequence numberingAllan Stephens4-46/+3
Eliminates TIPC's prototype support for message sequence numbering on routable connections (i.e. connections requiring more than one hop). This capability isn't currently used, and can be removed since TIPC only supports systems in which all inter-node communication can be achieved in a single hop. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Add in missing lock during link initializationAllan Stephens1-0/+2
Ensure that the routine that starts up processing on a newly created link endpoint takes the spinlock of the node object that owns the link, to prevent possible conflicts with processing involving other links owned by that node object. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Fix port counter handling to correct congestion controlAllan Stephens2-21/+36
Modifies TIPC's congestion control between a connected port and its peer so that it works as documented. The following changes have been made: 1) The counter of the number of messages sent by a port now starts at zero, rather than one. This prevents the port from reporting port congestion one message earlier than it was supposed to. 2) The counter of the number of messages sent by a port is now incremented only if a non-empty message is sent successfully. This prevents the port from becoming permanently congested if too many send attempts are unsuccessful because of congestion (or other reasons). It also removes the risk that empty hand- shaking messages used during connection setup might cause the port to report congestion earlier than it was supposed to. 3) The counter of the number of unacknowledged messages received by a port controlled by an internal TIPC service is now incremented only if the message is non-empty, in order to be consistent with the aforementioned changes. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Minor optimization to topology service connection establishmentAllan Stephens1-3/+1
Eliminates a local iovec structure containing no data, which was previously used during the establishment of a topology service connection, since the same effect can be achieved by passing in a NULL pointer and an iovec length of zero. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Set unused probe field of link protocol messages to defined valueAllan Stephens1-0/+1
Ensures that a link reset or activate message has a "probe" field of zero. (This field is currently unused in these messages, but this could potentially change in future versions of TIPC.) Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Improve accuracy of link transmit queue maximum size statisticAllan Stephens3-20/+9
Enhances TIPC's unicast and broadcast link code to update the transmit queue maximum size counter in a single place, namely the routine that adds messages to the queue. This ensures that the maximum size statistic reported for unicast links is completely accurate, rather than being partially based on statistical sampling. The changes to link.h are just documenting the roles of the variables. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Eliminate unnecessary locking when starting topology serviceAllan Stephens1-3/+0
Modifies the initialization code for TIPC's topology service to avoid taking the spinlock protecting the subscriber list, since there is no need to do this. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Clean up tracking of node requesting a broadcast retransmitAllan Stephens3-4/+17
Allows the broadcast link to track the node that is requesting a retransmit in a new field dedicated to that purpose. This replaces the existing mechanism that (ab)uses an existing node structure linked list field to do the tracking. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Fix print statements that assume pointers are 32-bit valuesAllan Stephens1-3/+3
Corrects print statements that use %x to print pointer values to use %p instead, so that 64-bit pointer values are displayed correctly. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Improve handling of invalid link tolerance valuesAllan Stephens1-0/+3
Enhances TIPC link code to ignore an invalid link tolerance value contained in an incoming LINK_PROTOCOL message, rather than processing the value and potentially causing a divide-by-zero error. Also add a compile-time check that catches attempts to redefine TIPC's minimum link tolerance value in a manner that might result in the same divide-by-zero error at run-time. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Prevent invalid memory access when sending to configuration serviceAllan Stephens1-0/+2
Reject TIPC configuration service messages without a full message header. Previously, an application that sent a message to the configuration service that was too short could cause the validation code to access an uninitialized field in the msghdr structure, resulting in a memory access exception. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Remove unused global variable tipc_user_countAllan Stephens3-7/+3
Eliminates a global variable that was previously used by TIPC's user registry to track the number of distinct applications using TIPC. Due to the recent elimination of the user registry this variable no longer serves any purpose and can be removed. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Combine bearer structure with tipc_bearer structureAllan Stephens8-127/+119
Combines two distinct structures containing information about a TIPC bearer into a single structure. The structures were previously kept separate so that public information about a bearer could be made available to plug-in media types using TIPC's native API, while the remaining information was kept private for use by TIPC itself. However, now that the native API has been removed there is no longer any need for this arrangement. Since one of the structures was already embedded within the other, the change largely involves replacing instances of "publ.foo" with "foo". The changes do not otherwise alter the operation of TIPC bearers. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23tipc: Combine port structure with tipc_port structureAllan Stephens5-184/+175
Merge two distinct structures containing information about a TIPC port into a single structure. The structures were previously kept separate so that public information about a port could be made available to applications using TIPC's native API, while the remaining information was kept private for use by TIPC itself. However, now that the native API has been removed there is no longer any need for this somewhat confusing arrangement. Since one of the structures was already embedded within the other, the change largely involves replacing instances of "publ.foo" with "foo". The changes do not otherwise alter the operation of TIPC ports. Signed-off-by: Allan Stephens <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]>
2011-02-23net: Implement SFEATURES compatibility for not updated driversMichał Mirosław1-0/+61
Use discrete setting ops for not updated drivers. This will not make them conform to full G/SFEATURES semantics, though. Signed-off-by: Michał Mirosław <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23net: Fix ETHTOOL_GFEATURES compatibilityMichał Mirosław1-0/+14
Implement getting rx checksum state for not updated drivers. Signed-off-by: Michał Mirosław <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23net: avoid initial "Features changed" messageMichał Mirosław1-3/+5
Avoid "Features changed" message and ndo_set_features call on device registration caused by automatic enabling of GSO and GRO. Driver should have enabled hardware offloads it set in features, so the ndo_set_features() is not needed at registration time. Signed-off-by: Michał Mirosław <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23Fix "(unregistered net_device): Features changed" messageMichał Mirosław1-2/+2
Fix netdev_update_features() messages on register time by moving the call further in register_netdevice(). When netdev->reg_state != NETREG_REGISTERED, netdev_name() returns "(unregistered netdevice)" even if the dev's name is already filled. Signed-off-by: Michał Mirosław <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23em_meta: fix sparse warningstephen hemminger1-1/+1
gfp_t needs to be cast to integer. Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23mqprio: cleanupsstephen hemminger1-2/+4
* make qdisc_ops local * add sparse annotation about expected unlock/unlock in dump_class_stats * fix indentation Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23afkey: add sparse annotation about rcustephen hemminger1-0/+2
Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23socket: suppress sparse warningsstephen hemminger1-3/+5
Use __force to quiet sparse warnings for cases where the code is simulating user space pointers. Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-23net_sched: SFB flow schedulerEric Dumazet3-0/+721
This is the Stochastic Fair Blue scheduler, based on work from : W. Feng, D. Kandlur, D. Saha, K. Shin. Blue: A New Class of Active Queue Management Algorithms. U. Michigan CSE-TR-387-99, April 1999. http://www.thefengs.com/wuchang/blue/CSE-TR-387-99.pdf This implementation is based on work done by Juliusz Chroboczek General SFB algorithm can be found in figure 14, page 15: B[l][n] : L x N array of bins (L levels, N bins per level) enqueue() Calculate hash function values h{0}, h{1}, .. h{L-1} Update bins at each level for i = 0 to L - 1 if (B[i][h{i}].qlen > bin_size) B[i][h{i}].p_mark += p_increment; else if (B[i][h{i}].qlen == 0) B[i][h{i}].p_mark -= p_decrement; p_min = min(B[0][h{0}].p_mark ... B[L-1][h{L-1}].p_mark); if (p_min == 1.0) ratelimit(); else mark/drop with probabilty p_min; I did the adaptation of Juliusz code to meet current kernel standards, and various changes to address previous comments : http://thread.gmane.org/gmane.linux.network/90225 http://thread.gmane.org/gmane.linux.network/90375 Default flow classifier is the rxhash introduced by RPS in 2.6.35, but we can use an external flow classifier if wanted. tc qdisc add dev $DEV parent 1:11 handle 11: \ est 0.5sec 2sec sfb limit 128 tc filter add dev $DEV protocol ip parent 11: handle 3 \ flow hash keys dst divisor 1024 Notes: 1) SFB default child qdisc is pfifo_fast. It can be changed by another qdisc but a child qdisc MUST not drop a packet previously queued. This is because SFB needs to handle a dequeued packet in order to maintain its virtual queue states. pfifo_head_drop or CHOKe should not be used. 2) ECN is enabled by default, unlike RED/CHOKe/GRED With help from Patrick McHardy & Andi Kleen Signed-off-by: Eric Dumazet <[email protected]> CC: Juliusz Chroboczek <[email protected]> CC: Stephen Hemminger <[email protected]> CC: Patrick McHardy <[email protected]> CC: Andi Kleen <[email protected]> CC: John W. Linville <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-22net: Make flow cache paths use a const struct flowi.David S. Miller2-12/+15
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_resolve_and_create_bundle() const.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_dst_{alloc_copy,update_origin}() const.David S. Miller1-2/+2
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_bundle_create() const.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_tmpl_resolve{,_one}() const.David S. Miller1-6/+4
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_expand_policies() const.David S. Miller1-2/+2
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_policy_{lookup_by_type,match}() const.David S. Miller1-2/+2
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Kill strict arg to xfrm_bundle_ok().David S. Miller1-8/+3
Always set to "0". Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_state_find() const.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_init_tempstate() const.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_state_look_at() const.David S. Miller1-1/+1
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_selector_match() const.David S. Miller1-4/+4
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to xfrm_type->reject() const.David S. Miller2-2/+3
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to ->init_tempsel() const.David S. Miller2-2/+2
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to ->fill_dst() const.David S. Miller3-3/+3
Signed-off-by: David S. Miller <[email protected]>
2011-02-22xfrm: Mark flowi arg to ->get_tos() const.David S. Miller3-3/+3
Signed-off-by: David S. Miller <[email protected]>
2011-02-22Merge branch 'master' of ↵John W. Linville31-1452/+3849
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem
2011-02-22cls_u32: fix sparse warningsstephen hemminger1-6/+6
The variable _data is used in asm-generic to define sections which causes sparse warnings, so just rename the variable. Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-22Merge branch 'for-davem' of ↵David S. Miller1-1/+2
git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next-2.6
2011-02-22net: add __rcu annotations to sk_wq and wqEric Dumazet4-26/+40
Add proper RCU annotations/verbs to sk_wq and wq members Fix __sctp_write_space() sk_sleep() abuse (and sock->wq access) Fix sunrpc sk_sleep() abuse too Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-20sctp: fix compile warnings in sctp_tsnmap_num_gabsShan Wei1-1/+1
net/sctp/tsnmap.c: In function ‘sctp_tsnmap_num_gabs’: net/sctp/tsnmap.c:347: warning: ‘start’ may be used uninitialized in this function net/sctp/tsnmap.c:347: warning: ‘end’ may be used uninitialized in this function Signed-off-by: Shan Wei <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-02-20tcp: Remove debug macro of TCP_CHECK_TIMERShan Wei4-21/+0
Now, TCP_CHECK_TIMER is not used for debuging, it does nothing. And, it has been there for several years, maybe 6 years. Remove it to keep code clearer. Signed-off-by: Shan Wei <[email protected]> Signed-off-by: David S. Miller <[email protected]>