6bf15191f666c5965d212561d7a5c7b78b808dfa |
06-May-2013 |
Dan Carpenter <dan.carpenter@oracle.com> |
tipc: potential divide by zero in tipc_link_recv_fragment() The worry here is that fragm_sz could be zero since it comes from skb->data. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
cb4b102f0ab29fcbaf945c6b1f85ef006cdb8edc |
06-May-2013 |
Dan Carpenter <dan.carpenter@oracle.com> |
tipc: add a bounds check in link_recv_changeover_msg() The bearer_id here comes from skb->data and it can be a number from 0 to 7. The problem is that the ->links[] array has only 2 elements so I have added a range check. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
488fc9af8267d0cd9036bc9db9f5dbbfde6de208 |
01-May-2013 |
Gerlando Falauto <gerlando.falauto@keymile.com> |
tipc: pskb_copy() buffers when sending on more than one bearer When sending packets, TIPC bearers use skb_clone() before writing their hardware header. This will however NOT copy the data buffer. So when the same packet is sent over multiple bearers (to reach multiple nodes), the same socket buffer data will be treated by multiple tipc_media drivers which will write their own hardware header through dev_hard_header(). Most of the time this is not a problem, because by the time the packet is processed by the second media, it has already been sent over the first one. However, when the first transmission is delayed (e.g. because of insufficient bandwidth or through a shaper), the next bearer will overwrite the hardware header, resulting in the packet being sent: a) with the wrong source address, when bearers of the same type, e.g. ethernet, are involved b) with a completely corrupt header, or even dropped, when bearers of different types are involved. So when the same socket buffer is to be sent multiple times, send a pskb_copy() instead (from the second instance on), and release it afterwards (the bearer will skb_clone() it anyway). Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
77861d9c00900c0105b9d66ecf9fa612a43f8df5 |
01-May-2013 |
Gerlando Falauto <gerlando.falauto@keymile.com> |
tipc: tipc_bcbearer_send(): simplify bearer selection Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
e616071094c214a274fb66d0b297f8b25a1a34d7 |
01-May-2013 |
Gerlando Falauto <gerlando.falauto@keymile.com> |
tipc: cosmetic: clean up comments and break a long line Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
a29a194a15df9840b24c6c383a9a9a1236979db5 |
17-Apr-2013 |
Patrick McHardy <kaber@trash.net> |
tipc: add InfiniBand media type Add InfiniBand media type based on the ethernet media type. The only real difference is that in case of InfiniBand, we need the entire 20 bytes of space reserved for media addresses, so the TIPC media type ID is not explicitly stored in the packet payload. Sample output of tipc-config: # tipc-config -v -addr -netid -nt=all -p -m -b -n -ls node address: <10.1.4> current network id: 4711 Type Lower Upper Port Identity Publication Scope 0 167776257 167776257 <10.1.1:1855512577> 1855512578 cluster 167776260 167776260 <10.1.4:1216454657> 1216454658 zone 1 1 1 <10.1.4:1216479235> 1216479236 node Ports: 1216479235: bound to {1,1} 1216454657: bound to {0,167776260} Media: eth ib Bearers: ib:ib0 Nodes known: <10.1.1>: up Link <broadcast-link> Window:20 packets RX packets:0 fragments:0/0 bundles:0/0 TX packets:0 fragments:0/0 bundles:0/0 RX naks:0 defs:0 dups:0 TX naks:0 acks:0 dups:0 Congestion bearer:0 link:0 Send queue max:0 avg:0 Link <10.1.4:ib0-10.1.1:ib0> ACTIVE MTU:2044 Priority:10 Tolerance:1500 ms Window:50 packets RX packets:80 fragments:0/0 bundles:0/0 TX packets:40 fragments:0/0 bundles:0/0 TX profile sample:22 packets average:54 octets 0-64:100% -256:0% -1024:0% -4096:0% -16384:0% -32768:0% -66000:0% RX states:410 probes:213 naks:0 defs:0 dups:0 TX states:410 probes:197 naks:0 acks:0 dups:0 Congestion bearer:0 link:0 Send queue max:1 avg:0 Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
config
akefile
earer.c
earer.h
ore.c
b_media.c
|
76f5c6f359a18abd3359ad8523cb23fbf58602b7 |
17-Apr-2013 |
Patrick McHardy <kaber@trash.net> |
tipc: set skb->protocol in eth_media packet transmission The skb->protocol field is used by packet classifiers and for AF_PACKET cooked format, TIPC needs to set it properly. Fixes packet classification and ethertype of 0x0000 in cooked captures: Out 20:c9:d0:43:12:d9 ethertype Unknown (0x0000), length 56: 0x0000: 5b50 0028 0000 30d4 0100 1000 0100 1001 [P.(..0......... 0x0010: 0000 03e8 0000 0001 20c9 d043 12d9 0000 ...........C.... 0x0020: 0000 0000 0000 0000 ........ Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
8aeb89f214cdb4c3d9e43213d52d4c5b0fb93bbb |
17-Apr-2013 |
Patrick McHardy <kaber@trash.net> |
tipc: move bcast_addr from struct tipc_media to struct tipc_bearer Some network protocols, like InfiniBand, don't have a fixed broadcast address but one that depends on the configuration. Move the bcast_addr to struct tipc_bearer and initialize it with the broadcast address of the network device when the bearer is enabled. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
earer.h
iscover.c
th_media.c
|
ccc4ba2ea23e4507c174620405c5de7bee328f99 |
17-Apr-2013 |
Patrick McHardy <kaber@trash.net> |
tipc: remove unused str2addr media callback Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.h
th_media.c
|
d978a6361ad13f1f9694fcb7b5852d253a544d92 |
08-Apr-2013 |
David S. Miller <davem@davemloft.net> |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net Conflicts: drivers/nfc/microread/mei.c net/netfilter/nfnetlink_queue_core.c Pull in 'net' to get Eric Biederman's AF_UNIX fix, upon which some cleanups are going to go on-top. Signed-off-by: David S. Miller <davem@davemloft.net>
|
60085c3d009b0df252547adb336d1ccca5ce52ec |
07-Apr-2013 |
Mathias Krause <minipli@googlemail.com> |
tipc: fix info leaks via msg_name in recv_msg/recv_stream The code in set_orig_addr() does not initialize all of the members of struct sockaddr_tipc when filling the sockaddr info -- namely the union is only partly filled. This will make recv_msg() and recv_stream() -- the only users of this function -- leak kernel stack memory as the msg_name member is a local variable in net/socket.c. Additionally to that both recv_msg() and recv_stream() fail to update the msg_namelen member to 0 while otherwise returning with 0, i.e. "success". This is the case for, e.g., non-blocking sockets. This will lead to a 128 byte kernel stack leak in net/socket.c. Fix the first issue by initializing the memory of the union with memset(0). Fix the second one by setting msg_namelen to 0 early as it will be updated later if we're going to fill the msg_name member. Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
573ce260b385a4d14a1ef046558fad9f1daeee42 |
27-Mar-2013 |
Hong zhi guo <honkiko@gmail.com> |
net-next: replace obsolete NLMSG_* with type safe nlmsg_* Signed-off-by: Hong Zhiguo <honkiko@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
b67bfe0d42cac56c512dd5da4b1b347a23f4b70a |
28-Feb-2013 |
Sasha Levin <sasha.levin@oracle.com> |
hlist: drop the node parameter from iterators I'm not sure why, but the hlist for each entry iterators were conceived list_for_each_entry(pos, head, member) The hlist ones were greedy and wanted an extra parameter: hlist_for_each_entry(tpos, pos, head, member) Why did they need an extra pos parameter? I'm not quite sure. Not only they don't really need it, it also prevents the iterator from looking exactly like the list iterator, which is unfortunate. Besides the semantic patch, there was some manual work required: - Fix up the actual hlist iterators in linux/list.h - Fix up the declaration of other iterators based on the hlist ones. - A very small amount of places were using the 'node' parameter, this was modified to use 'obj->member' instead. - Coccinelle didn't handle the hlist_for_each_entry_safe iterator properly, so those had to be fixed up manually. The semantic patch which is mostly the work of Peter Senna Tschudin is here: @@ iterator name hlist_for_each_entry, hlist_for_each_entry_continue, hlist_for_each_entry_from, hlist_for_each_entry_rcu, hlist_for_each_entry_rcu_bh, hlist_for_each_entry_continue_rcu_bh, for_each_busy_worker, ax25_uid_for_each, ax25_for_each, inet_bind_bucket_for_each, sctp_for_each_hentry, sk_for_each, sk_for_each_rcu, sk_for_each_from, sk_for_each_safe, sk_for_each_bound, hlist_for_each_entry_safe, hlist_for_each_entry_continue_rcu, nr_neigh_for_each, nr_neigh_for_each_safe, nr_node_for_each, nr_node_for_each_safe, for_each_gfn_indirect_valid_sp, for_each_gfn_sp, for_each_host; type T; expression a,c,d,e; identifier b; statement S; @@ -T b; <+... when != b ( hlist_for_each_entry(a, - b, c, d) S | hlist_for_each_entry_continue(a, - b, c) S | hlist_for_each_entry_from(a, - b, c) S | hlist_for_each_entry_rcu(a, - b, c, d) S | hlist_for_each_entry_rcu_bh(a, - b, c, d) S | hlist_for_each_entry_continue_rcu_bh(a, - b, c) S | for_each_busy_worker(a, c, - b, d) S | ax25_uid_for_each(a, - b, c) S | ax25_for_each(a, - b, c) S | inet_bind_bucket_for_each(a, - b, c) S | sctp_for_each_hentry(a, - b, c) S | sk_for_each(a, - b, c) S | sk_for_each_rcu(a, - b, c) S | sk_for_each_from -(a, b) +(a) S + sk_for_each_from(a) S | sk_for_each_safe(a, - b, c, d) S | sk_for_each_bound(a, - b, c) S | hlist_for_each_entry_safe(a, - b, c, d, e) S | hlist_for_each_entry_continue_rcu(a, - b, c) S | nr_neigh_for_each(a, - b, c) S | nr_neigh_for_each_safe(a, - b, c, d) S | nr_node_for_each(a, - b, c) S | nr_node_for_each_safe(a, - b, c, d) S | - for_each_gfn_sp(a, c, d, b) S + for_each_gfn_sp(a, c, d) S | - for_each_gfn_indirect_valid_sp(a, c, d, b) S + for_each_gfn_indirect_valid_sp(a, c, d) S | for_each_host(a, - b, c) S | for_each_host_safe(a, - b, c, d) S | for_each_mesh_entry(a, - b, c, d) S ) ...+> [akpm@linux-foundation.org: drop bogus change from net/ipv4/raw.c] [akpm@linux-foundation.org: drop bogus hunk from net/ipv6/raw.c] [akpm@linux-foundation.org: checkpatch fixes] [akpm@linux-foundation.org: fix warnings] [akpm@linux-foudnation.org: redo intrusive kvm changes] Tested-by: Peter Senna Tschudin <peter.senna@gmail.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: Sasha Levin <sasha.levin@oracle.com> Cc: Wu Fengguang <fengguang.wu@intel.com> Cc: Marcelo Tosatti <mtosatti@redhat.com> Cc: Gleb Natapov <gleb@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ame_table.c
ode.c
|
06991c28f37ad68e5c03777f5c3b679b56e3dac1 |
21-Feb-2013 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core Pull driver core patches from Greg Kroah-Hartman: "Here is the big driver core merge for 3.9-rc1 There are two major series here, both of which touch lots of drivers all over the kernel, and will cause you some merge conflicts: - add a new function called devm_ioremap_resource() to properly be able to check return values. - remove CONFIG_EXPERIMENTAL Other than those patches, there's not much here, some minor fixes and updates" Fix up trivial conflicts * tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits) base: memory: fix soft/hard_offline_page permissions drivercore: Fix ordering between deferred_probe and exiting initcalls backlight: fix class_find_device() arguments TTY: mark tty_get_device call with the proper const values driver-core: constify data for class_find_device() firmware: Ignore abort check when no user-helper is used firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER firmware: Make user-mode helper optional firmware: Refactoring for splitting user-mode helper code Driver core: treat unregistered bus_types as having no devices watchdog: Convert to devm_ioremap_resource() thermal: Convert to devm_ioremap_resource() spi: Convert to devm_ioremap_resource() power: Convert to devm_ioremap_resource() mtd: Convert to devm_ioremap_resource() mmc: Convert to devm_ioremap_resource() mfd: Convert to devm_ioremap_resource() media: Convert to devm_ioremap_resource() iommu: Convert to devm_ioremap_resource() drm: Convert to devm_ioremap_resource() ...
|
6338a53a2bd02d5878ab449371323364b7cc7694 |
19-Feb-2013 |
David S. Miller <davem@davemloft.net> |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net into net Pull in 'net' to take in the bug fixes that didn't make it into 3.8-final. Also, deal with the semantic conflict of the change made to net/ipv6/xfrm6_policy.c A missing rt6->n neighbour release was added to 'net', but in 'net-next' we no longer cache the neighbour entries in the ipv6 routes so that change is not appropriate there. Signed-off-by: David S. Miller <davem@davemloft.net>
|
97f8b87e9108485a0b7070645662253561304458 |
31-Jan-2013 |
Ying Xue <ying.xue@windriver.com> |
tipc: remove redundant checking for the number of iovecs in a send request As the number of iovecs in a send request is already limited within UIO_MAXIOV(i.e. 1024) in __sys_sendmsg(), it's unnecessary to check it again in TIPC stack. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
aba79f332f46ca8529f3e62a9fc2926c8fe75e44 |
20-Jan-2013 |
Ying Xue <ying.xue@windriver.com> |
tipc: byte-based overload control on socket receive queue Change overload control to be purely byte-based, using sk->sk_rmem_alloc as byte counter, and compare it to a calculated upper limit for the socket receive queue. For all connection messages, irrespective of message importance, the overload limit is set to a constant value (i.e, 67MB). This limit should normally never be reached because of the lower limit used by the flow control algorithm, and is there only as a last resort in case a faulty peer doesn't respect the send window limit. For datagram messages, message importance is taken into account when calculating the overload limit. The calculation is based on sk->sk_rcvbuf, and is hence configurable via the socket option SO_RCVBUF. Cc: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
57467e56293796f780e91a24600a732516f534ac |
20-Jan-2013 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate duplicated discard_rx_queue routine The tipc function discard_rx_queue() is just a duplicated implementation of __skb_queue_purge(). Remove the former and directly invoke __skb_queue_purge(). In doing so, the underscores convey to the code reader, more information about the current locking state that is assumed. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
c5c73dca596894c47760e4e955877b731ffabf57 |
14-Feb-2013 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: fix missing spinlock init in broadcast code After commit 3c294cb3 "tipc: remove the bearer congestion mechanism", we try to grab the broadcast bearer lock when sending multicast messages over the broadcast link. This will cause an oops because the lock is never initialized. This is an old bug, but the lock was never actually used before commit 3c294cb3, so that why it was not visible until now. The oops will look something like: BUG: spinlock bad magic on CPU#2, daemon/147 lock: bcast_bearer+0x48/0xffffffffffffd19a [tipc], .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0 Pid: 147, comm: daemon Not tainted 3.8.0-rc3+ #206 Call Trace: spin_dump+0x8a/0x8f spin_bug+0x21/0x26 do_raw_spin_lock+0x114/0x150 _raw_spin_lock_bh+0x19/0x20 tipc_bearer_blocked+0x1f/0x40 [tipc] tipc_link_send_buf+0x82/0x280 [tipc] ? __alloc_skb+0x9f/0x2b0 tipc_bclink_send_msg+0x77/0xa0 [tipc] tipc_multicast+0x11b/0x1b0 [tipc] send_msg+0x225/0x530 [tipc] sock_sendmsg+0xca/0xe0 The above can be triggered by running the multicast demo program. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
f887cc48c6464af20058e81544e73e33daacbd52 |
02-Oct-2012 |
Kees Cook <keescook@chromium.org> |
net/tipc: remove depends on CONFIG_EXPERIMENTAL The CONFIG_EXPERIMENTAL config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it from any "depends on" lines in Kconfigs. CC: Jon Maloy <jon.maloy@ericsson.com> CC: Allan Stephens <allan.stephens@windriver.com> CC: "David S. Miller" <davem@davemloft.net> Signed-off-by: Kees Cook <keescook@chromium.org> Acked-by: David S. Miller <davem@davemloft.net>
config
|
0fef8f205f6f4cdff1869e54e44f317a79902785 |
04-Dec-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: refactor accept() code for improved readability In TIPC's accept() routine, there is a large block of code relating to initialization of a new socket, all within an if condition checking if the allocation succeeded. Here, we simply flip the check of the if, so that the main execution path stays at the same indentation level, which improves readability. If the allocation fails, we jump to an already existing exit label. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
258f8667a29d72b1c220065632b39c0faeb061ca |
03-Dec-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: add lock nesting notation to quiet lockdep warning TIPC accept() call grabs the socket lock on a newly allocated socket while holding the socket lock on an old socket. But lockdep worries that this might be a recursive lock attempt: [ INFO: possible recursive locking detected ] --------------------------------------------- kworker/u:0/6 is trying to acquire lock: (sk_lock-AF_TIPC){+.+.+.}, at: [<c8c1226c>] accept+0x15c/0x310 [tipc] but task is already holding lock: (sk_lock-AF_TIPC){+.+.+.}, at: [<c8c12138>] accept+0x28/0x310 [tipc] other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(sk_lock-AF_TIPC); lock(sk_lock-AF_TIPC); *** DEADLOCK *** May be due to missing lock nesting notation [...] Tell lockdep that this locking is safe by using lock_sock_nested(). This is similar to what was done in commit 5131a184a3458d9 for SCTP code ("SCTP: lock_sock_nested in sctp_sock_migrate"). Also note that this is isn't something that is seen normally, as it was uncovered with some experimental work-in-progress code not yet ready for mainline. So no need for stable backports or similar of this commit. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
cbab368790f23bc917d97fcf7a338c5ba5336ee0 |
29-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate connection setup for implied connect in recv_msg() As connection setup is now completed asynchronously in BH context, in the function filter_connect(), the corresponding code in recv_msg() becomes redundant. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
584d24b3960e4c877fc623214815f278708f127c |
30-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: introduce non-blocking socket connect TIPC has so far only supported blocking connect(), meaning that a call to connect() doesn't return until either the connection is fully established, or an error occurs. This has proved insufficient for many users, so we now introduce non-blocking connect(), analogous to how this is done in TCP and other protocols. With this feature, if a connection cannot be established instantly, connect() will return the error code "-EINPROGRESS". If the user later calls connect() again, he will either have the return code "-EALREADY" or "-EISCONN", depending on whether the connection has been established or not. The user must have explicitly set the socket to be non-blocking (SOCK_NONBLOCK or O_NONBLOCK, depending on method used), so unless for some reason they had set this already (the socket would anyway remain blocking in current TIPC) this change should be completely backwards compatible. It is also now possible to call select() or poll() to wait for the completion of a connection. An effect of the above is that the actual completion of a connection may now be performed asynchronously, independent of the calls from user space. Therefore, we now execute this code in BH context, in the function filter_rcv(), which is executed upon reception of messages in the socket. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> [PG: minor refactoring for improved connect/disconnect function names] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
7e6c131e1568dcc2033736739a9880dce1976886 |
30-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: consolidate connection-oriented message reception in one function Handling of connection-related message reception is currently scattered around at different places in the code. This makes it harder to verify that things are handled correctly in all possible scenarios. So we consolidate the existing processing of connection-oriented message reception in a single routine. In the process, we convert the chain of if/else into a switch/case for improved readability. A cast on the socket_state in the switch is needed to avoid compile warnings on 32 bit, like "net/tipc/socket.c:1252:2: warning: case value ‘4294967295’ not in enumerated type". This happens because existing tipc code pseudo extends the default linux socket state values with: #define SS_LISTENING -1 /* socket is listening */ #define SS_READY -2 /* socket is connectionless */ It may make sense to add these as _positive_ values to the existing socket state enum list someday, vs. these already existing defines. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> [PG: add cast to fix warning; remove returns from middle of switch] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
bc879117d4cf2a6fcf5c5a43f157143bbbe88e84 |
29-Nov-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: standardize across connect/disconnect function naming Currently we have tipc_disconnect and tipc_disconnect_port. It is not clear from the names alone, what they do or how they differ. It turns out that tipc_disconnect just deals with the port locking and then calls tipc_disconnect_port which does all the work. If we rename as follows: tipc_disconnect_port --> __tipc_disconnect then we will be following typical linux convention, where: __tipc_disconnect: "raw" function that does all the work. tipc_disconnect: wrapper that deals with locking and then calls the real core __tipc_disconnect function With this, the difference is immediately evident, and locking violations are more apt to be spotted by chance while working on, or even just while reading the code. On the connect side of things, we currently only have the single "tipc_connect2port" function. It does both the locking at enter/exit, and the core of the work. Pending changes will make it desireable to have the connect be a two part locking wrapper + worker function, just like the disconnect is already. Here, we make the connect look just like the updated disconnect case, for the above reason, and for consistency. In the process, we also get rid of the "2port" suffix that was on the original name, since it adds no descriptive value. On close examination, one might notice that the above connect changes implicitly move the call to tipc_link_get_max_pkt() to be within the scope of tipc_port_lock() protected region; when it was not previously. We don't see any issues with this, and it is in keeping with __tipc_connect doing the work and tipc_connect just handling the locking. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
ort.h
ocket.c
ubscr.c
|
e643df156ade104b0430588562d25b8638683fc1 |
27-Nov-2012 |
Jon Maloy <jon.maloy@ericsson.com> |
tipc: change sk_receive_queue upper limit The sk_recv_queue upper limit for connectionless sockets has empirically turned out to be too low. When we double the current limit we get much fewer rejected messages and no noticable negative side-effects. Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
9da3d475874f4da49057767913af95ce01063ba3 |
27-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate aggregate sk_receive_queue limit As a complement to the per-socket sk_recv_queue limit, TIPC keeps a global atomic counter for the sum of sk_recv_queue sizes across all tipc sockets. When incremented, the counter is compared to an upper threshold value, and if this is reached, the message is rejected with error code TIPC_OVERLOAD. This check was originally meant to protect the node against buffer exhaustion and general CPU overload. However, all experience indicates that the feature not only is redundant on Linux, but even harmful. Users run into the limit very often, causing disturbances for their applications, while removing it seems to have no negative effects at all. We have also seen that overall performance is boosted significantly when this bottleneck is removed. Furthermore, we don't see any other network protocols maintaining such a mechanism, something strengthening our conviction that this control can be eliminated. As a result, the atomic variable tipc_queue_size is now unused and so it can be deleted. There is a getsockopt call that used to allow reading it; we retain that but just return zero for maximum compatibility. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Cc: Neil Horman <nhorman@tuxdriver.com> [PG: phase out tipc_queue_size as pointed out by Neil Horman] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
c008413850d1d48cc02c940280bf2dcf76160f4c |
07-Nov-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: remove obsolete flush of stale reassembly buffer Each link instance has a periodic job checking if there is a stale ongoing message reassembly associated to the link. If no new fragment has been received during the last 4*[link_tolerance] period, it is assumed the missing fragment will never arrive. As a consequence, the reassembly buffer is discarded, and a gap in the message sequence occurs. This assumption is wrong. After we abandoned our ambition to develop packet routing for multi-cluster networks, only single-hop packet transfer remains as an option. For those, all packets are guaranteed to be delivered in sequence to the defragmentation layer. Any failure to achieve sequenced delivery will eventually lead to link reset, and the reassembly buffer will be flushed anyway. So we just remove this periodic check, which is now obsolete. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Acked-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> [PG: also delete get/inc_timer count, since they are now unused] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
94fc9c4719f53264c7cce62ee558781fee7b7128 |
22-Nov-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: delete TIPC_ADVANCED Kconfig variable There used to be a time when TIPC had lots of Kconfig knobs the end user could alter, but they have all been made automatic or obsolete, with the exception of CONFIG_TIPC_PORTS. This previously existing set of options was all hidden under the TIPC_ADVANCED setting, which does not exist in any code, but only in Kconfig scope. Having this now, just to hide the one remaining "advanced" option no longer makes sense. Remove it. Also get rid of the ifdeffery in the TIPC code that allowed for TIPC_PORTS to be possibly undefined. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
config
ore.c
|
4cb7d55ab4c4726c5d966d5a19e7b304345e74ca |
16-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate an unnecessary cast of node variable As the variable:node is currently defined to u32 type, it is unnecessary to cast its type to u32 again when using it. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
c64f7a6a1fb13565687ae5415736095f82557880 |
16-Nov-2012 |
Jon Maloy <jon.maloy@ericsson.com> |
tipc: introduce message to synchronize broadcast link Upon establishing a first link between two nodes, there is currently a risk that the two endpoints will disagree on exactly which sequence number reception and acknowleding of broadcast packets should start. The following scenarios may happen: 1: Node A sends an ACTIVATE message to B, telling it to start acking packets from sequence number N. 2: Node A sends out broadcast N, but does not expect an acknowledge from B, since B is not yet in its broadcast receiver's list. 3: Node A receives ACK for N from all nodes except B, and releases packet N. 4: Node B receives the ACTIVATE, activates its link endpoint, and stores the value N as sequence number of first expected packet. 5: Node B sends a NAME_DISTR message to A. 6: Node A receives the NAME_DISTR message, and activates its endpoint. At this moment B is added to A's broadcast receiver's set. Node A also sets sequence number 0 as the first broadcast packet to be received from B. 7: Node A sends broadcast N+1. 8: B receives N+1, determines there is a gap in the sequence, since it is expecting N, and sends a NACK for N back to A. 9: Node A has already released N, so no retransmission is possible. The broadcast link in direction A->B is stale. In addition to, or instead of, 7-9 above, the following may happen: 10: Node B sends broadcast M > 0 to A. 11: Node A receives M, falsely decides there must be a gap, since it is expecting packet 0, and asks for retransmission of packets [0,M-1]. 12: Node B has already released these packets, so the broadcast link is stale in direction B->A. We solve this problem by introducing a new unicast message type, BCAST_PROTOCOL/STATE, to convey the sequence number of the next sent broadcast packet to the other endpoint, at exactly the moment that endpoint is added to the own node's broadcast receivers list, and before any other unicast messages are permitted to be sent. Furthermore, we don't allow any node to start receiving and processing broadcast packets until this new synchronization message has been received. To maintain backwards compatibility, we still open up for broadcast reception if we receive a NAME_DISTR message without any preceding broadcast sync message. In this case, we must assume that the other end has an older code version, and will never send out the new synchronization message. Hence, for mixed old and new nodes, the issue arising in 7-12 of the above may happen with the same probability as before. Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ode.c
|
389dd9bcf65e10929cedfeb79c49bd02069b8899 |
16-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: rename supported flag to recv_permitted Rename the "supported" flag in bclink structure to "recv_permitted" to better reflect what it is used for. When this flag is set for a given node, we are permitted to receive and acknowledge broadcast messages from that node. Convert it to a bool at the same time, since it is not used to store any numerical values. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ink.c
ode.c
ode.h
|
818f4da526656a100c637b098be06316fd4624e4 |
16-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: remove supportable flag from bclink structure The "supportable" flag in bclink structure is a compatibility flag indicating whether a peer node is capable of receiving TIPC broadcast messages. However, all TIPC versions since tipc-1.5, and after the inclusion in the upstream Linux kernel in 2006, support this capability. It is highly unlikely that anybody is still using such an old version of TIPC, let alone that they want to mix it with TIPC-2.0 nodes. Therefore, we now remove the "supportable" flag. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ode.c
ode.h
|
3c294cb374bf7ad6f5c2763f994d75935fb7814d |
15-Nov-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: remove the bearer congestion mechanism Currently at the TIPC bearer layer there is the following congestion mechanism: Once sending packets has failed via that bearer, the bearer will be flagged as being in congested state at once. During bearer congestion, all packets arriving at link will be queued on the link's outgoing buffer. When we detect that the state of bearer congestion has relaxed (e.g. some packets are received from the bearer) we will try our best to push all packets in the link's outgoing buffer until the buffer is empty, or until the bearer is congested again. However, in fact the TIPC bearer never receives any feedback from the device layer whether a send was successful or not, so it must always assume it was successful. Therefore, the bearer congestion mechanism as it exists currently is of no value. But the bearer blocking state is still useful for us. For example, when the physical media goes down/up, we need to change the state of the links bound to the bearer. So the code maintaing the state information is not removed. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
earer.h
iscover.c
ink.c
ink.h
|
7503115107e5862870eaf5133627051b2e23ac0a |
29-Oct-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: wake up all waiting threads at socket shutdown When a socket is shut down, we should wake up all thread sleeping on it, instead of just one of them. Otherwise, when several threads are polling the same socket, and one of them does shutdown(), the remaining threads may end up sleeping forever. Also, to align socket usage with common practice in other stacks, we use one of the common socket callback handlers, sk_state_change(), to wake up pending users. This is similar to the usage in e.g. inet_shutdown(). [net/ipv4/af_inet.c]. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
c4fc298ab44011a7f7a391bf00350acf481eeaeb |
16-Oct-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: return POLLOUT for sockets in an unconnected state If an implied connect is attempted on a nonblocking STREAM/SEQPACKET socket during link congestion, the connect message will be discarded and sendmsg will return EAGAIN. This is normal behavior, and the application is expected to poll the socket until POLLOUT is set, after which the connection attempt can be retried. However, the POLLOUT flag is never set for unconnected sockets and poll() always returns a zero mask. The application is then left without a trigger for when it can make another attempt at sending the message. The solution is to check if we're polling on an unconnected socket and set the POLLOUT flag if the TIPC port owned by this socket is not congested. The TIPC ports waiting on a specific link will be marked as 'not congested' when the link congestion have abated. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
f288bef46443eb3a0b212c1c57b222c0497e06f6 |
21-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: fix race/inefficiencies in poll/wait behaviour When an application blocks at poll/select on a TIPC socket while requesting a specific event mask, both the filter_rcv() and wakeupdispatch() case will wake it up unconditionally whenever the state changes (i.e an incoming message arrives, or congestion has subsided). No mask is used. To avoid this, we populate sk->sk_data_ready and sk->sk_write_space with tipc_data_ready and tipc_write_space respectively, which makes tipc more in alignment with the rest of the networking code. These pass the exact set of possible events to the waker in fs/select.c hence avoiding waking up blocked processes unnecessarily. In doing so, we uncover another issue -- that there needs to be a memory barrier in these poll/receive callbacks, otherwise we are subject to the the same race as documented above wq_has_sleeper() [in commit a57de0b4 "net: adding memory barrier to the poll and receive callbacks"]. So we need to replace poll_wait() with sock_poll_wait() and use rcu protection for the sk->sk_wq pointer in these two new functions. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
d145f7ec23b6366e2b75442eaefafa11077ed568 |
30-Oct-2012 |
Xiaotian Feng <xtfeng@gmail.com> |
tipc: do not use tasklet_disable before tasklet_kill If tasklet_disable() is called before related tasklet handled, tasklet_kill will never be finished. tasklet_kill is enough. Signed-off-by: Xiaotian Feng <dannyfeng@tencent.com> Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: Allan Stephens <allan.stephens@windriver.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: netdev@vger.kernel.org Cc: tipc-discussion@lists.sourceforge.net Signed-off-by: David S. Miller <davem@davemloft.net>
andler.c
|
e57edf6b6dba975eceede20b4b13699d4e88cd78 |
04-Oct-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: prevent dropped connections due to rcvbuf overflow When large buffers are sent over connected TIPC sockets, it is likely that the sk_backlog will be filled up on the receiver side, but the TIPC flow control mechanism is happily unaware of this since that is based on message count. The sender will receive a TIPC_ERR_OVERLOAD message when this occurs and drop it's side of the connection, leaving it stale on the receiver end. By increasing the sk_rcvbuf to a 'worst case' value, we avoid the overload caused by a full backlog queue and the flow control will work properly. This worst case value is the max TIPC message size times the flow control window, multiplied by two because a sender will transmit up to double the window size before a port is marked congested. We multiply this by 2 to account for the sk_buff and other overheads. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
adccff34de1ef81564b7e6c436f762e7a1caf807 |
18-Sep-2012 |
Peter Senna Tschudin <peter.senna@gmail.com> |
net/tipc/name_table.c: Remove unecessary semicolon Found by http://coccinelle.lip6.fr/ Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
15e473046cb6e5d18a4d0057e61d76315230382b |
07-Sep-2012 |
Eric W. Biederman <ebiederm@xmission.com> |
netlink: Rename pid to portid to avoid confusion It is a frequent mistake to confuse the netlink port identifier with a process identifier. Try to reduce this confusion by renaming fields that hold port identifiers portid instead of pid. I have carefully avoided changing the structures exported to userspace to avoid changing the userspace API. I have successfully built an allyesconfig kernel with this change. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Acked-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
e6a04b1d3ff9d5af219b2fcaebe0ef04733d597c |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate configuration for maximum number of name publications Gets rid of the need for users to specify the maximum number of name publications supported by TIPC. TIPC now automatically provides support for the maximum number of name publications to 65535. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ore.c
ore.h
ame_table.c
|
34f256cc7962a44537a0d33877cd93c89873098e |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: eliminate configuration for maximum number of name subscriptions Gets rid of the need for users to specify the maximum number of name subscriptions supported by TIPC. TIPC now automatically provides support for the maximum number of name subscriptions to 65535. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ore.c
ore.h
ubscr.c
|
61cdd4d80b29cfdee45920238eea2d1fbb51f922 |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: add __read_mostly annotations to several global variables Added to the following: - tipc_random - tipc_own_addr - tipc_max_ports - tipc_net_id - tipc_remote_management - handler_enabled The above global variables are read often, but written rarely. Use __read_mostly to prevent them being on the same cacheline as another variable which is written to often, which would cause cacheline bouncing. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ore.h
andler.c
|
f046e7d9be1cbb3335694c7f9a31d18e1f998ff5 |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: convert tipc_nametbl_size type from variable to macro There is nothing changing this variable dynamically, so change it to a macro to make that more obvious when reading the code. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
379c0456afc170d56ceb712a5689ede91d293e88 |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: change tipc_net_start routine return value type Since now tipc_net_start() always returns a success code - 0, its return value type should be changed from integer to void, which can avoid unnecessary check for its return value. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
et.c
et.h
|
381294331ed2858f8e75223310f873d580921366 |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: manually inline single use media_name_valid routine After eliminating the mechanism which checks whether all letters in media name string are within a given character set, the media_name_valid routine becomes trivial. It is also only used once, so it is unnecessary to keep it as a separate function. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
|
fc0739385ba10f59105e87a46cc93d9d9a10553c |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: remove pointless name sanity check and tipc_alphabet array There is no real reason to check whether all letters in the given media name and network interface name are within the character set defined in tipc_alphabet array. Even if we eliminate the checking, the rest of checking conditions in tipc_enable_bearer() can ensure we do not enable an invalid or illegal bearer. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
ore.c
ore.h
ink.c
|
4225a398c1352a7a5c14dc07277cb5cc4473983b |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: fix lockdep warning during bearer initialization When the lockdep validator is enabled, it will report the below warning when we enable a TIPC bearer: [ INFO: possible irq lock inversion dependency detected ] --------------------------------------------------------- Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(ptype_lock); local_irq_disable(); lock(tipc_net_lock); lock(ptype_lock); <Interrupt> lock(tipc_net_lock); *** DEADLOCK *** the shortest dependencies between 2nd lock and 1st lock: -> (ptype_lock){+.+...} ops: 10 { [...] SOFTIRQ-ON-W at: [<c1089418>] __lock_acquire+0x528/0x13e0 [<c108a360>] lock_acquire+0x90/0x100 [<c1553c38>] _raw_spin_lock+0x38/0x50 [<c14651ca>] dev_add_pack+0x3a/0x60 [<c182da75>] arp_init+0x1a/0x48 [<c182dce5>] inet_init+0x181/0x27e [<c1001114>] do_one_initcall+0x34/0x170 [<c17f7329>] kernel_init+0x110/0x1b2 [<c155b6a2>] kernel_thread_helper+0x6/0x10 [...] ... key at: [<c17e4b10>] ptype_lock+0x10/0x20 ... acquired at: [<c108a360>] lock_acquire+0x90/0x100 [<c1553c38>] _raw_spin_lock+0x38/0x50 [<c14651ca>] dev_add_pack+0x3a/0x60 [<c8bc18d2>] enable_bearer+0xf2/0x140 [tipc] [<c8bb283a>] tipc_enable_bearer+0x1ba/0x450 [tipc] [<c8bb3a04>] tipc_cfg_do_cmd+0x5c4/0x830 [tipc] [<c8bbc032>] handle_cmd+0x42/0xd0 [tipc] [<c148e802>] genl_rcv_msg+0x232/0x280 [<c148d3f6>] netlink_rcv_skb+0x86/0xb0 [<c148e5bc>] genl_rcv+0x1c/0x30 [<c148d144>] netlink_unicast+0x174/0x1f0 [<c148ddab>] netlink_sendmsg+0x1eb/0x2d0 [<c1456bc1>] sock_aio_write+0x161/0x170 [<c1135a7c>] do_sync_write+0xac/0xf0 [<c11360f6>] vfs_write+0x156/0x170 [<c11361e2>] sys_write+0x42/0x70 [<c155b0df>] sysenter_do_call+0x12/0x38 [...] } -> (tipc_net_lock){+..-..} ops: 4 { [...] IN-SOFTIRQ-R at: [<c108953a>] __lock_acquire+0x64a/0x13e0 [<c108a360>] lock_acquire+0x90/0x100 [<c15541cd>] _raw_read_lock_bh+0x3d/0x50 [<c8bb874d>] tipc_recv_msg+0x1d/0x830 [tipc] [<c8bc195f>] recv_msg+0x3f/0x50 [tipc] [<c146a5fa>] __netif_receive_skb+0x22a/0x590 [<c146ab0b>] netif_receive_skb+0x2b/0xf0 [<c13c43d2>] pcnet32_poll+0x292/0x780 [<c146b00a>] net_rx_action+0xfa/0x1e0 [<c103a4be>] __do_softirq+0xae/0x1e0 [...] } >From the log, we can see three different call chains between CPU0 and CPU1: Time 0 on CPU0: kernel_init()->inet_init()->dev_add_pack() At time 0, the ptype_lock is held by CPU0 in dev_add_pack(); Time 1 on CPU1: tipc_enable_bearer()->enable_bearer()->dev_add_pack() At time 1, tipc_enable_bearer() first holds tipc_net_lock, and then wants to take ptype_lock to register TIPC protocol handler into the networking stack. But the ptype_lock has been taken by dev_add_pack() on CPU0, so at this time the dev_add_pack() running on CPU1 has to be busy looping. Time 2 on CPU0: netif_receive_skb()->recv_msg()->tipc_recv_msg() At time 2, an incoming TIPC packet arrives at CPU0, hence tipc_recv_msg() will be invoked. In tipc_recv_msg(), it first wants to hold tipc_net_lock. At the moment, below scenario happens: On CPU0, below is our sequence of taking locks: lock(ptype_lock)->lock(tipc_net_lock) On CPU1, our sequence of taking locks looks like: lock(tipc_net_lock)->lock(ptype_lock) Obviously deadlock may happen in this case. But please note the deadlock possibly doesn't occur at all when the first TIPC bearer is enabled. Before enable_bearer() -- running on CPU1 does not hold ptype_lock, so the TIPC receive handler (i.e. recv_msg()) is not registered successfully via dev_add_pack(), so the tipc_recv_msg() cannot be called by recv_msg() even if a TIPC message comes to CPU0. But when the second TIPC bearer is registered, the deadlock can perhaps really happen. To fix it, we will push the work of registering TIPC protocol handler into workqueue context. After the change, both paths taking ptype_lock are always in process contexts, thus, the deadlock should never occur. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
fa7f86f1bb5d8f08d10442a546252d2670b26f41 |
16-Aug-2012 |
Ying Xue <ying.xue@windriver.com> |
tipc: optimize the initialization of network device notifier Ethernet media initialization is only done when TIPC is started or switched to network mode. So the initialization of the network device notifier structure can be moved out of this function and done statically instead. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
869dd4662f90514cb92b44a389e85c737b464e25 |
29-Jun-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: remove print_buf and deprecated log buffer code The internal log buffer handling functions can now safely be removed since there is no code using it anymore. Requests to interact with the internal tipc log buffer over netlink (in config.c) will report 'obsolete command'. This represents the final removal of any references to a struct print_buf, and the removal of the struct itself. We also get rid of a TIPC specific Kconfig in the process. Finally, log.h is removed since it is not needed anymore. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
config
onfig.c
ore.c
ore.h
ink.h
og.c
og.h
|
dc1aed37d17b4fe4f28a74d804c065b877bc7bed |
29-Jun-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: phase out most of the struct print_buf usage The tipc_printf is renamed to tipc_snprintf, as the new name describes more what the function actually does. It is also changed to take a buffer and length parameter and return number of characters written to the buffer. All callers of this function that used to pass a print_buf are updated. Final removal of the struct print_buf itself will be done synchronously with the pending removal of the deprecated logging code that also was using it. Functions that build up a response message with a list of ports, nametable contents etc. are changed to return the number of characters written to the output buffer. This information was previously hidden in a field of the print_buf struct, and the number of chars written was fetched with a call to tipc_printbuf_validate. This function is removed since it is no longer referenced nor needed. A generic max size ULTRA_STRING_MAX_LEN is defined, named in keeping with the existing TIPC_TLV_ULTRA_STRING, and the various definitions in port, link and nametable code that largely duplicated this information are removed. This means that amount of link statistics that can be returned is now increased from 2k to 32k. The buffer overflow check is now done just before the reply message is passed over netlink or TIPC to a remote node and the message indicating a truncated buffer is changed to a less dramatic one (less CAPS), placed at the end of the message. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
earer.h
onfig.c
ore.h
iscover.c
ink.c
og.c
ame_table.c
ort.c
|
e2dbd601346aeb64b1b387168b217fd5c301644e |
29-Jun-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: simplify print buffer handling in tipc_printf tipc_printf was previously used both to construct debug traces and to append data to buffers that should be sent over netlink to the tipc-config application. A global print_buffer was used to format the string before it was copied to the actual output buffer. This could lead to concurrent access of the global print_buffer, which then had to be lock protected. This is simplified by changing tipc_printf to append data directly to the output buffer using vscnprintf. With the new implementation of tipc_printf, there is no longer any risk of concurrent access to the internal log buffer, so the lock (and the comments describing it) are no longer strictly necessary. However, there are still a few functions that do grab this lock before resizing/dumping the log buffer. We leave the lock, and these functions untouched since they will be removed with a subsequent commit that drops the deprecated log buffer handling code Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
og.c
|
5deedde9fa65c494c9747dd66b1721be90991b64 |
12-Jul-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: simplify link_print by divorcing it from using tipc_printf To pave the way for a pending cleanup of tipc_printf, and removal of struct print_buf entirely, we make that task simpler by converting link_print to issue its messages with standard printk infrastructure. [Original idea separated from a larger patch from Erik Hugne <erik.hugne@ericsson.com>] Cc: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
568fc588fce85602e4e2c7573f6f912311306b72 |
29-Jun-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: remove TIPC packet debugging functions and macros The link queue traces and packet level debug functions served a purpose during early development, but are now redundant since there are other, more capable tools available for debugging at the packet level. The TIPC_DEBUG Kconfig option is removed since it does not provide any extra debugging features anymore. This gets rid of a lot of tipc_printf usages, which will make the pending cleanup work of that function easier. Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
config
ore.h
ink.c
sg.c
|
2cf8aa19fe8bec578b707daa383ebff80e3f81a1 |
29-Jun-2012 |
Erik Hugne <erik.hugne@ericsson.com> |
tipc: use standard printk shortcut macros (pr_err etc.) All messages should go directly to the kernel log. The TIPC specific error, warning, info and debug trace macro's are removed and all references replaced with pr_err, pr_warn, pr_info and pr_debug. Commonly used sub-strings are explicitly declared as a const char to reduce .text size. Note that this means the debug messages (changed to pr_debug), are now enabled through dynamic debugging, instead of a TIPC specific Kconfig option (TIPC_DEBUG). The latter will be phased out completely Signed-off-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> [PG: use pr_fmt as suggested by Joe Perches <joe@perches.com>] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
onfig.c
ore.c
ore.h
iscover.c
andler.c
ink.c
ame_distr.c
ame_table.c
et.c
etlink.c
ode.c
ode_subscr.c
ort.c
ef.c
ocket.c
ubscr.c
|
f705ab956b3a0377181c9d73b235ad5bf4020937 |
11-Jul-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: limit error messages relating to memory leak to one line With the default name table size of 1024, it is possible that the sanity check in tipc_nametbl_stop could spam out 1024 essentially identical error messages if memory was corrupted or similar. Limit it to issuing no more than a single message. The actual chain number (i.e. 0 --> 1023) wouldn't provide any useful insight if/when such an instance happened, so don't bother printing out that value. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
7e9cab58e8e0b5e52af28145ffa70de329adc459 |
11-Jul-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: factor stats struct out of the larger link struct This is done to improve readability, and so that we can give the struct a name that will allow us to declare a local pointer to it in code, instead of having to always redirect through the link struct to get to it. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.h
|
ae86b9e3846f6fc5509dee721f2bdba1db8ab96a |
10-Jul-2012 |
Ben Hutchings <bhutchings@solarflare.com> |
net: Fix non-kernel-doc comments with kernel-doc start marker Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
2c53040f018b6c36a46eec75b9b937aaa5f78e6d |
10-Jul-2012 |
Ben Hutchings <bhutchings@solarflare.com> |
net: Fix (nearly-)kernel-doc comments for various functions Fix incorrect start markers, wrapped summary lines, missing section breaks, incorrect separators, and some name mismatches. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
earer.h
ink.c
ame_table.c
ort.c
ort.h
|
e3192690a3c889767d1161b228374f4926d92af0 |
03-Jun-2012 |
Joe Perches <joe@perches.com> |
net: Remove casts to same type Adding casts of objects to the same type is unnecessary and confusing for a human reader. For example, this cast: int y; int *p = (int *)&y; I used the coccinelle script below to find and remove these unnecessary casts. I manually removed the conversions this script produces of casts with __force and __user. @@ type T; T *p; @@ - (T *)p + p Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ocket.c
|
617d3c7a50b3dc15f558d60013047aede79dc055 |
30-Apr-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: compress out gratuitous extra carriage returns Some of the comment blocks are floating in limbo between two functions, or between blocks of code. Delete the extra line feeds between any comment and its associated following block of code, to be consistent with the majority of the rest of the kernel. Also delete trailing newlines at EOF and fix a couple trivial typos in existing comments. This is a 100% cosmetic change with no runtime impact. We get rid of over 500 lines of non-code, and being blank line deletes, they won't even show up as noise in git blame. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
akefile
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
onfig.c
ore.c
ore.h
iscover.c
th_media.c
andler.c
ink.c
ink.h
og.c
og.h
sg.c
sg.h
ame_distr.c
ame_table.c
ame_table.h
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ocket.c
ubscr.c
ubscr.h
|
aad585473fe1e4b07f2ec1e2432475937f90c385 |
27-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reject payload messages with invalid message type Adds check to ensure TIPC sockets reject incoming payload messages that have an unrecognized message type. Remove the old open question about whether TIPC_ERR_NO_PORT is the proper return value. It is appropriate here since there are valid instances where another node can make use of the reply, and at this point in time the host is already broadcasting TIPC data, so there are no real security concerns. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
8f1778969359a71f398c9ac6d3a9a3e61439b466 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhance error checking of published names Consolidates validation of scope and name sequence range values into a single routine where it applies both to local name publications and to name publications issued by other nodes in the network. This change means that the scope value for non-local publications is now validated and the name sequence range for local publications is now validated only once. Additionally, a publication attempt that fails validation now creates an entry in the system log file only if debugging capabilities have been enabled; this prevents the system log from being cluttered up with messages caused by a defective application or network node. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
ort.c
|
f7fb9d20ade55e538efe91477014b6b367ecd802 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Create helper routine to delete unused name sequence structure Replaces two identical chunks of code that delete an unused name sequence structure from TIPC's name table with calls to a new routine that performs this operation. This change is cosmetic and doesn't impact the operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
bbe6a295d0a987068c89ca7e7b7291b754995754 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: remove redundant memset and stale comment from subscr.c Eliminate code to zero-out the main topology service structure, which is already zeroed-out. Get rid of a comment documenting a field of the main topology service structure that no longer exists. Both are cosmetic changes with no impact on runtime behaviour. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ubscr.c
|
2d98abb9fe132898d17b56fb4765687aff82c093 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize initialization of network topology service Initialization now occurs in the calling thread of control, rather than being deferred to the TIPC tasklet. With the current codebase, the deferral is no longer necessary. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
|
eb3865a99dc38396a403ef82f99f4c51dd34f0bf |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhance re-initialization of network topology service Streamlines the job of re-initializing TIPC's network topology service when a node's network address is first assigned. Rather than destroying the topology server port and breaking its connections to existing subscribers, TIPC now simply lets the service continue running (since the change to the port identifier of each port used by the topology service no longer impacts the flow of messages between the service and its subscribers). This enhancement means that applications that utilize the topology service prior to the assignment of TIPC's network address no longer need to re-establish their subscriptions when the address is finally assigned. However, it is worth noting that any subsequent events for existing subscriptions report the new port identifier of the publishing port, rather than the original port identifier. (For example, a name that was previously reported as being published by <0.0.0:ref> may be subsequently withdrawn by <Z.C.N:ref>.) This doesn't impact any of the existing known userspace in tipc-utils, since (a) TIPC continues to treat references to the original port ID correctly and (b) normal use cases assign an address before active use. However if there does happen to be some rare/custom application out there that was relying on this, they can simply bypass the enhancement by issuing a subscription to {0,0} and break its connection to the topology service, if an associated withdrawal event occurs. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
|
eb323b075a360d59fabbbd58c0d7aeb951bfc647 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize termination of configuration service Termination no longer tests to see if the configuration service port was successfully created or not. In the unlikely event that the port was not created, attempting to delete the non-existent port is detected gracefully and causes no harm. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
|
861d3a0e5bbc93b79b5739cfb4ea0fb553fe9407 |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize initialization of configuration service Initialization now occurs in the calling thread of control, rather than being deferred to the TIPC tasklet. With the current codebase, the deferral is no longer necessary. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
|
a2cfd45b52006893fc0d0e850d187d30f86a39dc |
26-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize re-initialization of configuration service Streamlines the job of re-initializing TIPC's configuration service when a node's network address is first assigned. Rather than destroying the configuration server port and then recreating it, TIPC now simply withdraws the existing {0,<0.0.0>} name publication and creates a new {0,<Z.C.N>} name publication that identifies the node's network address to interested subscribers. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
onfig.h
et.c
|
872f24dbc604ef585ea7eec73020dcdfaffd1956 |
23-Apr-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: remove inline instances from C source files. Untie gcc's hands and let it do what it wants within the individual source files. There are two files, node.c and port.c -- only the latter effectively changes (gcc-4.5.2). Objdump shows gcc deciding to not inline port_peernode(). Suggested-by: David S. Miller <davem@davemloft.net> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
ort.c
|
f545a38f74584cc7424cb74f792a00c6d2589485 |
23-Apr-2012 |
Eric Dumazet <edumazet@google.com> |
net: add a limit parameter to sk_add_backlog() sk_add_backlog() & sk_rcvqueues_full() hard coded sk_rcvbuf as the memory limit. We need to make this limit a parameter for TCP use. No functional change expected in this patch, all callers still using the old sk_rcvbuf limit. Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Neal Cardwell <ncardwell@google.com> Cc: Tom Herbert <therbert@google.com> Cc: Maciej Żenczykowski <maze@google.com> Cc: Yuchung Cheng <ycheng@google.com> Cc: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Cc: Rick Jones <rick.jones2@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
9d52ce4bd3fa9e0cf1658791f2c680e20e0598a1 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure network address change doesn't impact configuration service Enhances command validation done by TIPC's configuration service so that it works properly even if the node's network address is changed in mid-operation. The default node address of <0.0.0> is now recognized as an alias for "this node" even after a new network address has been assigned. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
|
630d920dcae546c4e8ef6c01e7c49b2f42822c5f |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure network address change doesn't impact rejected message Revises handling of a rejected message to ensure that a locally originated message is returned properly even if the node's network address is changed in mid-operation. The routine now treats the default node address of <0.0.0> as an alias for "this node" when determining where to send a returned message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
8a55fe74b1a767cb00d6248a847068c9d886d710 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: handle <0.0.0> as an alias for this node on outgoing msgs Revises handling of send routines for payload messages to ensure that they are processed properly even if the node's network address is changed in mid-operation. The routines now treat the default node address of <0.0.0> as an alias for "this node" when determining where to send an outgoing message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
b8f683d126c1cb757e794d6d904cbe7cf5954797 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: properly handle off-node send requests with invalid addr There are two send routines that might conceivably be asked by an application to send a message off-node when the node is still using the default network address. These now have an added check that detects this and rejects the message gracefully. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
974a5a864bf959b7f3412a31ee8ce001c6628451 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: take lock while updating node network address The routine that changes the node's network address now takes TIPC's network lock in write mode while the main address variable and associated data structures are being changed; this is needed to ensure that the link subsystem won't attempt to send a message off-node until the sending port's message header template has been updated with the node's new network address. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
|
f0712e86b75f4839773abbc01d5baa7e36e378c2 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure network address change doesn't impact local connections Revises routines that deal with connections between two ports on the same node to ensure the connection is not impacted if the node's network address is changed in mid-operation. The routines now treat the default node address of <0.0.0> as an alias for "this node" in the following situations: 1) Incoming messages destined to a connected port now handle the alias properly when validating that the message was sent by the expected peer port, ensuring that the message will be accepted regardless of whether it specifies the node's old network address or it's current one. 2) The code which completes connection establishment now handles the alias properly when determining if the peer port is on the same node as the connected port. An added benefit of addressing issue 1) is that some peer port validation code has been relocated to TIPC's socket subsystem, which means that validation is no longer done twice when a message is sent to a non-socket port (such as TIPC's configuration service or network topology service). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode_subscr.c
ort.c
ort.h
ocket.c
|
d0e17fedc2aeb0c4db09434787ef6d432582e050 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: delete duplicate peerport/peernode helper functions Prior to commit 23dd4cce387124ec3ea06ca30d17854ae4d9b772 "tipc: Combine port structure with tipc_port structure" there was a need for the two sets of helper functions. But now they are just duplicates. Remove the globally visible ones, and mark the remaining ones as inline. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
ort.h
|
f21536d1e73c36b37c50f71013c67f19db77d4b8 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure network address change doesn't impact new port Re-orders port creation logic so that the initialization of a new port's message header template occurs while the port list lock is held. This ensures that a change to the node's network address that occurs at the same time as the port is being created does not result in the template identifying the sender using the former network address. The new approach guarantees that the new port's template is using the current network address or that it will be updated when the address changes. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
5eb0a291fbde1842b8e3f241183a0e2c1399c600 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize re-initialization of port message header templates Removes an unnecessary check in the logic that updates the message header template for existing ports when a node's network address is first assigned. There is no longer any need to check to see if the node's network address has actually changed since the calling routine has already verified that this is so. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
d4f5c12cdf43ce70731d5abfb6400bfb1be392d3 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure network address change doesn't impact name table updates Revises routines that add and remove an entry from a node's name table so that the publication scope lists are updated properly even if the node's network address is changed in mid-operation. The routines now recognize the default node address of <0.0.0> as an alias for "this node" even after a new network address has been assigned. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
336ebf5bf524e447227cb1d785b22ca722e6afa7 |
18-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add routines for safe checking of node's network address Introduces routines that test whether a given network address is equal to a node's own network address or if it lies within the node's own network cluster, and which work properly regardless of whether the node is using the default network address <0.0.0> or a non-zero network address that is assigned later on. In essence, these routines ensure that address <0.0.0> is treated as an alias for "this node", regardless of which network address the node is actually using. Old users of the pre-existing more strict match in_own_cluster() have been accordingly redirected to what is now called in_own_cluster_exact() --- which does not extend matching to <0,0,0>. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ddr.h
earer.c
ame_table.c
ode.c
|
fd6eced8a482986784eb1f3aa0838dbdd725e71c |
09-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Don't record failed publication attempt as a success No longer increments counter of number of publications by a node if an attempt to add a new publication fails. This prevents TIPC from incorrectly blocking future publications because the configured maximum number of publications has been reached. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
1110b8d33a54d1b91131e2a70ef0c3c26425b800 |
17-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update node-scope publications when network address is assigned Ensures that node-scope name publications that exist prior to the configuration of a node's network address are properly re-initialized with that address when it is assigned. TIPC's node-scope publications are now tracked using a publications list like the lists used for cluster-scope and zone-scope publications so they can be easily updated when required. The inclusion of node scope name publications in a conventional publication list means that they must now also be withdrawn, just like cluster and zone scope publications are currently withdrawn. So some conditional tests on scope ==/!= TIPC_NODE_SCOPE are inserted/removed accordingly. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
ame_table.c
|
a909804f7c6cb83b7365ed23e9fd4c1267ee9ef0 |
17-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Separate cluster-scope and zone-scope names into distinct lists Utilizes distinct lists to track zone-scope and cluster-scope names published by a node. For now, TIPC continues to process the entries in both lists in the same way; however, an upcoming patch will utilize the existence of the lists to prevent the sending of cluster-scope names to nodes that are not part of the local cluster. To achieve this, an array of publication lists is introduced, so that they can be iterated over and accessed via publ->scope as an index where convenient. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
e11aa059715e2bacd4e62d57be5557dda697af8e |
17-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Factor out name publication code to a separate function This is done so that it can be reused with differing publication lists, instead of being hard coded to the cluster publicaton list. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
3f8375fee30cbf7fb0bd67f044e3406daa16fa3e |
17-Apr-2012 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: introduce publication lists struct There is currently a single list that is containing both cluster-scope and zone-scope publications, and the list count is a separate free floating variable. Create a struct to bind the count to the list, and to pave the way for factoring out the publications into zone/cluster/node scope. The current "publ_root" most matches what will be the cluster scope list, so it is named accordingly in this commit. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
95c961747284a6b83a5e2d81240e214b0fa3464d |
15-Apr-2012 |
Eric Dumazet <eric.dumazet@gmail.com> |
net: cleanup unsigned to unsigned int Use of "unsigned int" is preferred to bare "unsigned" in net tree. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ocket.c
|
9bbbc59dbd4e69da078b65a7f708c4250984dd29 |
09-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize setting of immutable payload message header fields Optimizes routines that send payload messages so that they no longer update the "originating node" and "originating port" fields of the outgoing message header template, since these fields are initialized when the sending port is created and never change thereafter. Also optimizes the routine which updates the message header template when a connection to a port is established, for the same reason. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
e8ec1ae756de320644c69194898c53d247925586 |
09-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate obsolete code for re-sending a message Removes code that updated the "previous node" field of an out-going message over TIPC's links. Such updating is unnecessary since the removal of the prototype multi-cluster capability means that all outgoing messages are generated locally and already have this field populated correctly. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
9b641251aee1a804169a17fe4236a50188894994 |
09-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Un-inline port routine for processing incoming messages Converts a non-trivial routine from inline to non-inline form to avoid bloating the TIPC code base with 6 copies of its body. This change is essentially cosmetic, and doesn't change existing TIPC behavior. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
ort.h
|
b58343f9ea75f02ef48b984767511c6b3ba76eaf |
08-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate support for tipc_mode global variable Removes all references to the global variable that records whether TIPC is running in "single node" mode or "network" mode, since this information can be easily deduced from the global variable that records TIPC's network address. (i.e. a non-zero network address means that TIPC is running in network mode.) The changes made update most existing mode-based checks to use the network address global variable. A few checks that are no longer needed are removed entirely, along with any associated code lying on non-executable control paths. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
onfig.c
ore.c
ore.h
et.c
ode.c
|
077a26f029e76a5918edf9c1d44d5566eec719fc |
08-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate obsolete support for "not running" mode Removes all references to TIPC's "not running" mode, since the removal of support for the native API means that there is no longer any way to interact with TIPC if it has not been initialized. The changes made consist of removing mode-based checks that are no longer needed, along with any associated code lying on non-executable control paths. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
ore.c
ore.h
|
bc9f8143ecf96c17a56635d2ef4c3c6b6ec27947 |
07-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Revert name table translation optimization Restores name table translation using a non-zero domain that is "out of scope", which was broken by an earlier commit (5d9c54c1e9ececcf7e99c4f014f9bec7ee3a7def). Comments have now been added to the name table translation routine to make it clear that there are actually three possible outcomes to a translation request (found/not found/deferred), rather than just two (found/not found). Note that a straightforward revert of the earlier commit is not possible, as other changes to the name table translation logic have occurred since the incorrect optimization was made. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
ort.c
|
75aba9af2410ae8fc70600d9dcda0651f20e091e |
04-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimization to broadcast link synchronization logic Optimizes processing done when contact with a neighboring node is established to avoid recording the current state of outgoing broadcast messages if the neighboring node isn't a valid broadcast link destination, since this state information isn't needed for such nodes. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
|
1cc35df847f7dba4ba06cb65bc41713df5d41404 |
04-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete comments about routing table updates Eliminates a block of comments that describe how routing table updates are to be handled. These comments no longer apply following the removal of TIPC's prototype multi-cluster support. Note that these changes are essentially cosmetic in nature, and have no impact on the actual operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
|
5f6d9123f1c7ef7297b0da1620988fe16c738e75 |
04-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate trivial buffer manipulation helper routines Gets rid of two inlined routines that simply call existing sk_buff manipulation routines, since there is no longer any extra processing done by the helper routines. Note that these changes are essentially cosmetic in nature, and have no impact on the actual operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ore.h
iscover.c
ink.c
sg.c
ame_distr.c
et.c
ode.c
ort.c
ocket.c
|
a635b46bd884efc1fc98819cb5a200da255d575c |
04-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Hide internal details of node table implementation Relocates information about the size of TIPC's node table index and its associated hash function, since only node subsystem routines need to have access to this information. Note that these changes are essentially cosmetic in nature, and have no impact on the actual operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
ode.h
|
9efde4a0bd2f21dec0c7b40da2bf2c3e189e98e2 |
03-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate a test for negative unsigned quantities Simplifies a comparison operation to eliminate a useless test that checks if an unsigned value is less than zero. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
|
732efba4d77e1b0857984c401a7b18784f51b075 |
23-Feb-2012 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: nuke the delimit static inline function. This "shortform" is actually longer than typing out what it is really trying to do, and just makes reading the code more difficult, so lets simply shoot it in the head. In the case of log.c - the comparison is on a u32, so we can drop the check for < 0 at the same time. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
ore.h
og.c
|
f80c24d9964c8a15c55d1afc2dea327c5eff7d6b |
03-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add check to prevent insertion of duplicate name table entries Adds a new check to TIPC's name table logic to reject any attempt to create a new name publication that is identical to an existing one. (Such an attempt will never happen under normal circumstances, but could arise if another network node malfunctions and issues a duplicate name publication message.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
c422f1bdc3d3f9f637b3d288a6601668e26111d6 |
02-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Simplify enforcement of reserved name type prohibition Streamlines the logic that prevents an application from binding a reserved TIPC name type to a port by moving the check to the code that handles a socket bind() operation. This allows internal TIPC subsystems to bind a reserved name without having to set an atomic flag to gain permission to use such a name. (This simplification is now possible due to the elimination of support for TIPC's native API.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
ame_table.c
ame_table.h
ocket.c
ubscr.c
|
c74a46110fd5f97bf9299e68e9ed0453bdacb181 |
02-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove duplicate check of message destination node Eliminates a check in the processing of TIPC messages arriving from off node that ensures the message is destined for this node, since this check duplicates an earlier check. (The check would be necessary if TIPC needed to be able to route incoming messages to another node, but the elimination of multi-cluster support means that this never happens and all incoming messages are consumed by the receiving node.) Note: This change involves the elimination of a single "if" statement with a large "then" clause; consequently, a significant number of lines end up getting re-indented. In addition, a simple message header access routine that is no longer referenced is eliminated. However, the only functional change is the elimination of the single check described above. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.h
|
97878a405c0ffe0f6433e1fb51834d4619ece025 |
28-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Detect duplicate nodes using different network interfaces Utilizes the new "node signature" field in neighbor discovery messages to ensure that all links TIPC associates with a given <Z.C.N> network address belong to the same neighboring node. (Previously, TIPC could not tell if link setup requests arriving on different interfaces were from the same node or from two different nodes that has mistakenly been assigned the same network address.) The revised algorithm for detecting a duplicate node considers both the node signature and the network interface adddress specified in a request message when deciding how to respond to a link setup request. This prevents false alarms that might otherwise arise during normal network operation under the following scenarios: a) A neighboring node reboots. (The node's signature changes, but the network interface address remains unchanged.) b) A neighboring node's network interface is replaced. (The node's signature remains unchanged, but the network interface address changes.) c) A neighboring node is completely replaced. (The node's signature and network interface address both change.) The algorithm also handles cases in which a node reboots and re-establishes its links to TIPC (or begins re-establishing those links) before TIPC detects that it is using a new node signature. In such cases of "delayed rediscovery" TIPC simply accepts the new signature without disrupting communication that is already underway over the links. Thanks to Laser [gotolaser@gmail.com] for his contributions to the development of this enhancement. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
fc0eea691a06ba8516795fb7a198239fb9db1cfc |
28-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Introduce node signature field in neighbor discovery message Adds support for the new "node signature" in neighbor discovery messages, which is a 16 bit identifier chosen randomly when TIPC is initialized. This field makes it possible for nodes receiving a neighbor discovery message to detect if multiple neighboring nodes are using the same network address (i.e. <Z.C.N>), even when the messages are arriving on different interfaces. This first phase of node signature support creates the signature, incorporates it into outgoing neighbor discovery messages, and tracks the signature used by valid neighbors. An upcoming patch builds on this foundation to implement the improved duplicate neighbor detection checking. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
sg.h
ode.c
ode.h
|
dff10e9e637663c8c5dd0bae1a8f0e899cbb4a36 |
02-Nov-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimization to rejection of connection-based messages Modifies message rejection logic so that TIPC doesn't attempt to send a FIN message to the rejecting port if it is known in advance that there is no such message because the rejecting port doesn't exist. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
3175bd9add570f3b5c06877369897b334556a2ff |
28-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate alteration of publication key during name table purging Removes code that alters the publication key of a name table entry that is being forcibly purged from TIPC's name table after contact with the publishing node has been lost. Current TIPC ensures that all defunct names are purged before re-establishing contact with a failed node. There used to be a risk that the publication might be accidentally deleted because it might be re-added to the name table before the purge operation was completed. But now there is no longer a need to ensure that the new key is different than the old one. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
63e7f1ac2855ba56f15d8189694ca9bd16ae4107 |
27-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent loss of fragmented messages over broadcast link Modifies broadcast link so that an incoming fragmented message is not lost if reassembly cannot begin because there currently is no buffer big enough to hold the entire reassembled message. The broadcast link now ignores the first fragment completely, which causes the sending node to retransmit the first fragment so that reassembly can be re-attempted. Previously, the sender would have had no reason to retransmit the 1st fragment, so we would never have a chance to re-try the allocation. To do this cleanly without duplicaton, a new bclink_accept_pkt() function is introduced. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
b76b27cad5ade1d483d4b94df6b35976bccf1055 |
27-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent loss of fragmented messages over unicast links Modifies unicast link endpoint logic so an incoming fragmented message is not lost if reassembly cannot begin because there is no buffer big enough to hold the entire reassembled message. The link endpoint now ignores the first fragment completely, which causes the sending node to retransmit the first fragment so that reassembly can be re-attempted. Previously, the sender would have had no reason to retransmit the 1st fragment, so we would never have a chance to re-try the allocation. Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
ink.c
|
1ec2bb08407b377e5954b3f9479c2bf67fc925a9 |
27-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete broadcast tag capability Eliminates support for the broadcast tag field, which is no longer used by broadcast link NACK messages. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ode.c
ode.h
|
7a54d4a99dcbbfdf1d4550faa19b615091137953 |
27-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Major redesign of broadcast link ACK/NACK algorithms Completely redesigns broadcast link ACK and NACK mechanisms to prevent spurious retransmit requests in dual LAN networks, and to prevent the broadcast link from stalling due to the failure of a receiving node to acknowledge receiving a broadcast message or request its retransmission. Note: These changes only impact the timing of when ACK and NACK messages are sent, and not the basic broadcast link protocol itself, so inter- operability with nodes using the "classic" algorithms is maintained. The revised algorithms are as follows: 1) An explicit ACK message is still sent after receiving 16 in-sequence messages, and implicit ACK information continues to be carried in other unicast link message headers (including link state messages). However, the timing of explicit ACKs is now based on the receiving node's absolute network address rather than its relative network address to ensure that the failure of another node does not delay the ACK beyond its 16 message target. 2) A NACK message is now typically sent only when a message gap persists for two consecutive incoming link state messages; this ensures that a suspected gap is not confirmed until both LANs in a dual LAN network have had an opportunity to deliver the message, thereby preventing spurious NACKs. A NACK message can also be generated by the arrival of a single link state message, if the deferred queue is so big that the current message gap cannot be the result of "normal" mis-ordering due to the use of dual LANs (or one LAN using a bonded interface). Since link state messages typically arrive at different nodes at different times the problem of multiple nodes issuing identical NACKs simultaneously is inherently avoided. 3) Nodes continue to "peek" at NACK messages sent by other nodes. If another node requests retransmission of a message gap suspected (but not yet confirmed) by the peeking node, the peeking node forgets about the gap and does not generate a duplicate retransmit request. (If the peeking node subsequently fails to receive the lost message, later link state messages will cause it to rediscover and confirm the gap and send another NACK.) 4) Message gap "equality" is now determined by the start of the gap only. This is sufficient to deal with the most common cases of message loss, and eliminates the need for complex end of gap computations. 5) A peeking node no longer tries to determine whether it should send a complementary NACK, since the most common cases of message loss don't require it to be sent. Consequently, the node no longer examines the "broadcast tag" field of a NACK message when peeking. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
ink.c
ode.c
ode.h
|
b98158e3b36645305363a598d91c544fa31446f1 |
26-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add missing locks in broadcast link statistics accumulation Ensures that all attempts to update broadcast link statistics are done only while holding the lock that protects the link's main data structures, to prevent interference by simultaneous updates caused by messages arriving on other interfaces. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
0232c5a566ff52d5c9fc1dda70253c942628ca66 |
26-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bug in broadcast link duplicate message statistics Modifies broadcast link so that it increments the "received duplicate message" count if an incoming message cannot be added to the deferred message queue because it is already present in the queue. (The aligns broadcast link behavior with that of TIPC's unicast links.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
8a275a6a30ba871eb34ea41c1fbb507039f4c0dc |
26-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix node lock reclamation issues in broadcast link reception Fixes a pair of problems in broadcast link message reception code relating to the reclamation of the node lock after consuming an in-sequence message. 1) Now retests to see if the sending node is still up after reclaiming the node lock, and bails out if it is non-operational. 2) Now manipulates the node's deferred message queue only after reclaiming the node lock, rather than using queue head pointer information that was cached previously. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
57732560d1aa7d454d10e557f8959d19d1454174 |
26-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add missing broadcast link lock when sending NACK Ensures that any attempt to send a NACK message over TIPC's broadcast link has exclusive access to the link's main data structures, to prevent interference with a simultaneous attempt to send other broadcast link traffic (such as application-generated multicast messages). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
47361c87c504d89f1ba50b4230d56ef67792c258 |
26-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix problem with broadcast link synchronization between nodes Corrects a problem in which a link endpoint that activates as the result of receiving a RESET/STATE sequence of link protocol messages fails to properly record the broadcast link status information about the node to which it is now communicating with. (The problem does not occur with the more common RESET/ACTIVATE sequence of messages.) The fix ensures that the broadcast link status info is updated after the RESET message resets the link endpoint, rather than before, thereby preventing new information from being overwritten by the reset operation. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
934993137199ffb56fef50664f87e71cdb3471b0 |
25-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure broadcast link re-acquires node after link failure Fix a bug that can prevent TIPC from sending broadcast messages to a node if contact with the node is lost and then regained. The problem occurs if the broadcast link first clears the flag indicating the node is part of the link's distribution set (when it loses contact with the node), and later fails to restore the flag (when contact is regained); restoration fails if contact with the node is regained by implicit unicast link activation triggered by the arrival of a data message, rather than explicitly by the arrival of a link activation message. The broadcast link now uses separate fields to track whether a node is theoretically capable of receiving broadcast messages versus whether it is actually part of the link's distribution set. The former member is updated by the receipt of link protocol messages, which can occur at any time; the latter member is updated only when contact with the node is gained or lost. This change also permits the simplification of several conditional expressions since the broadcast link's "supported" field can now only be set if there are working links to the associated node. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ode.c
ode.h
|
4d75313ce9b832efc4efb487f080b5ed72beae2c |
25-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent broadcast link stalling in dual LAN environments Ensure that sequence number information about incoming broadcast link messages is initialized only by the activation of the first link to a given cluster node. Previously, a race condition allowed reset and/or activation messages for a second link to re-initialize this sequence number information with obsolete values. This could trigger TIPC to request the retransmission of previously acknowledged broadcast link messages from that node, resulting in broadcast link processing becoming stalled if the node had already released one or more of those messages and was unable to perform the required retransmission. Thanks to Laser <gotolaser@gmail.com> for identifying this problem and assisting in the development of this fix. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
92d2c905b404d8d056ce35a0ce645e23529742c2 |
25-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent transmission of outdated link protocol messages Ensures that a link endpoint discards any previously deferred link protocol message whenever it attempts to send a new one. Previously, it was possible for a link protocol message that was unsent due to congestion to be transmitted after newer protocol messages had been sent. The stale link protocol message might then cause the receiving link endpoint to malfunction because of its outdated conent. Thanks to Osamu Kaminuma [okaminum@avaya.com] for diagnosing the problem and contributing a prototype patch. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
8809b255a9fca8c3179491d3bc9268c42e23ba97 |
25-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: improve the link deferred queue insertion algorithm Re-code the algorithm for inserting an out-of-sequence message into a unicast or broadcast link's deferred message queue. It remains functionally equivalent but should be easier to understand/maintain. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
f19765f4f7dc3cb118cf5f151ed56e01063082ed |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct bearer_name to struct tipc_bearer_names The addition of the "s" to indicate pluralization is intentional, since the struct actually contains two name variants. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
|
a18c4bc3ea3c23f658655b1eee4f62cb71d51efd |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct link* to struct tipc_link* This converts the following: struct link -> struct tipc_link struct link_req -> struct tipc_link_req struct link_name -> struct tipc_link_name Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
earer.h
iscover.c
iscover.h
ink.c
ink.h
ame_distr.c
ode.c
ode.h
|
7f9ab6ac2e79b9658eba7c8e3ad8a4392d308057 |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct bcbearer* to tipc_bcbearer* This changes both the struct bcbearer and struct bcbearer_pair to have the "tipc_" prefix. Runtime behaviour is unchanged. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
6765fd677168df46dbed3cb4c32b9104ce2d3e83 |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct bclink to struct tipc_bclink Make this rename so that it is consistent with the majority of the other tipc structs and to assist in removing any ambiguity with other similar names in other subsystems. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
11f9990604637e08f163f919ab37d8834dff5583 |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct subscriber to struct tipc_subscriber Make this rename so that it is consistent with the majority of the other tipc structs and to assist in removing any ambiguity with other similar names in other subsystems. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ubscr.c
|
fead39098badacbfb5890de9a10e5b265788a524 |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct subscription to struct tipc_subscription Make this rename so that it is consistent with the majority of the other tipc structs and to assist in removing any ambiguity with other similar names in other subsystems. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
ame_table.h
ubscr.c
ubscr.h
|
4584310b4a787c9b70e5507a8b5288ba32b0a909 |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct port_list to struct tipc_port_list Make this rename so that it is consistent with the majority of the other tipc structs and to assist in removing any ambiguity with other similar names in other subsystems. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
ame_table.c
ame_table.h
ort.c
ort.h
|
358a0d1c9edcf6ff041776d65cdc2bc59887ab9c |
30-Dec-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: rename struct media to struct tipc_media Give it a meaningful prefix, as suggested by DaveM, so that it is consistent with things like struct tipc_bearer, and so it isn't confused with anything else. This has no impact on the actual runtime code behaviour. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
earer.h
th_media.c
ink.c
|
f905730c7ed97dc2dfcbf6af894acd6ce70a62e7 |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Allow use of buf_seqno() helper routine by unicast links Migrates the buf_seqno() helper routine from broadcast link level to unicast link level so that it can be used both types of TIPC links. This is a cosmetic change only, and does not affect the operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ink.c
ink.h
|
3655959143ebf1fd32e28a448d204be2f7f13e99 |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ignore broadcast acknowledgements that are out-of-range Adds checks to TIPC's broadcast link so that it ignores any acknowledgement message containing a sequence number that does not correspond to an unacknowledged message currently in the broadcast link's transmit queue. This change prevents the broadcast link from becoming stalled if a newly booted node receives stale broadcast link acknowledgement information from another node that has not yet fully synchronized its end of the broadcast link to reflect the current state of the new node's end. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ink.c
ink.h
ode.c
|
10745cd5990542447268f60078133df8b1ee960b |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Flush unsent broadcast messages when contact with last node is lost Adds code to release any unsent broadcast messages in the broadcast link transmit queue if TIPC loses contact with its only neighboring node. Previously, a broadcast link that was in the congested state would hold on to the unsent messages, even though the messages were now undeliverable. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
9157bafb44637a2cfefc222d6551100ead40e79e |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimization of broadcast link transmit queue statistic The two broadcast link statistics fields that are used to derive the average length of that link's transmit queue are now updated only after a successful attempt to send a broadcast message, since there is no need to update these values when an unsuccessful send attempt leaves the queue unchanged. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
2b78f9a002dccc587912af4da3bf1db86909de91 |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Handle broadcast attempt when no neighboring nodes exist Adds a check to detect when an attempt is made to send a message via the broadcast link and no neighboring nodes are currently available to receive it. Rather than wasting effort passing the message to the broadcast link and broadcast bearer, who will only throw it away, TIPC now frees the message immediately and reports success (i.e. the message has been delivered to all available destinations). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
cd3decdfd1dbab8a585eafe2e5b9866f193de99e |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure broadcast link spinlock is held when updating node map Fixes oversight that allowed broadcast link node map to be updated without first taking the broadcast link spinlock that protects the map. As part of this fix the node map has been incorporated into the broadcast link structure to make the need for such protection more evident. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
ode.c
|
c47e9b918844ab7bb139eada7b085c576ddf0afb |
24-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate dynamic allocation of broadcast link data structures Creates global variables to hold the broadcast link's pseudo-bearer and pseudo-link structures, rather than allocating them dynamically. There is only a single instance of each structure, and changing over to static allocation allows elimination of code to handle the cases where dynamic allocation was unsuccessful. The memset in the teardown code may look like they aren't used, but the same teardown code is run when there is a non-fatal error at init-time, so that stale data isn't present when the user fixes the cause of the soft error. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
et.c
|
945af1c39df00a1e5873e38145432ba752ec49a0 |
14-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate useless check when network address is assigned Gets rid of an unnecessary check in the routine that updates the port id of a node's name publications when the node is assigned a network address, since the routine is only invoked if the new address is different from the existing one. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
97f1b625d133b44d38b8b55ec2cbe35d7ef94f3a |
20-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor correction to TIPC module unloading Modifies TIPC's module unloading logic to switch itself into "single node" mode before starting to terminate networking support. This helps to ensure that no operations that require TIPC to be in "networking" mode can initiate once unloading starts. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
|
d47ce2ece33eac5c2b12d52622d1b17fe6a34ce9 |
19-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate useless memset operations in Ethernet media support Gets rid of two pointless operations that zero out the array used to record information about TIPC's Ethernet bearers. There is no need to initialize the array on start up since it is a global variable that is already zero'd out, and there is no need to zero it out on exit because the array is never referenced again. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
th_media.c
|
64b32f7e38627a325c825087318c09075a5edc42 |
19-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Do timely cleanup of disabled Ethernet bearer resources Modifies Ethernet bearer disable logic to break the association between the bearer and its device driver at the time the bearer is disabled, rather than when the TIPC module is unloaded. This allows the array entry used by the disabled bearer to be re-used if the same bearer (or a different one) is subsequently enabled. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
th_media.c
|
8c12118db77dce5a7abf1a0e87af56592fdd7c09 |
19-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimization to deactivation of Ethernet media suppot Change TIPC's shutdown code to deactivate generic networking support before terminating Ethernet media support. The deactivation of generic networking support causes all existing bearers to be destroyed, meaning the Ethernet media termination routine no longer has to bother marking them as unavailable. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
th_media.c
|
bfec73d7e45cdf570d649a547050295789e1e6fb |
18-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Revise comment justifying release of configuration spinlock Comment-only change to better explain why TIPC's configuration lock is temporarily released while activating support for network interfaces, and why the existing activation code doesn't require rework. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.c
|
5c216e1d28c82332db0fa53e30536577fb6130c6 |
18-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Allow run-time alteration of default link settings Permits run-time alteration of default link settings on a per-media and per-bearer basis, in addition to the existing per-link basis. The following syntax can now be used: tipc-config -lt=<link-name|bearer-name|media-name>/<tolerance> tipc-config -lp=<link-name|bearer-name|media-name>/<priority> tipc-config -lw=<link-name|bearer-name|media-name>/<window> Note that changes to the default settings for a given media type has no effect on the default settings used by existing bearers. Similarly, changes to default bearer settings has no effect on existing link endpoints that utilize that interface. Thanks to Florian Westphal <fw@strlen.de> for his contributions to the development of this enhancement. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
ink.c
|
d6d4577ae48bcfde06894540ea793abf076e1643 |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ignore neighbor discovery messages containing invalid address Adds a check to ensure that TIPC ignores an incoming neighbor discovery message that specifies an invalid media address as its source. The check ensures that the source address is a valid, non-broadcast address that could legally be used by a neighboring link endpoint. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
3d749a6a26b0811b4b2bb4ec2c47cd630a6bbf88 |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Hide media-specific addressing details from generic bearer code Reworks TIPC's media address data structure and associated processing routines to transfer all media-specific details of address conversion to the associated TIPC media adaptation code. TIPC's generic bearer code now only needs to know which media type an address is associated with and whether or not it is a broadcast address, and totally ignores the "value" field that contains the actual media-specific addressing info. These changes eliminate the need for a number of endianness conversion operations and will make it easier for TIPC to support new media types in the future. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
iscover.c
th_media.c
sg.c
sg.h
|
4d163a326fa4868cce1bb75dd95855d40e5497c6 |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add new address conversion routines for Ethernet media Enhances TIPC's Ethernet media support to provide 3 new address conversion routines, which allow TIPC to interpret an address that is in string form and to convert an address to and from the 20 byte format used in TIPC's neighbor discovery messages. These routines are pre-requisites to a follow on commit that hides all media-specific addressing details from TIPC's generic bearer code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.h
th_media.c
|
c61b666e260d5cc2e0203b21c689321e6ab0d676 |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Improve handling of media address printing errors Enhances conversion of a media address to printable form so that an unconvertable address will be displayed as a string of hex digits, rather than not being displayed at all. (Also removes a pointless check for the existence of the media-specific address conversion routine, since the routine is not optional.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
th_media.c
|
6c349210101352103d9055636845155bc801ae9b |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Streamline media registration error checking Simplifies error handling performed during media registration, since TIPC no longer supports the dynamic addition of new media types that are potentially error-prone. These simplifications include the following: 1) No longer check for premature registration of a new media type. 2) No longer check for negative link priority values (which was pointless since such values are unsigned, and could cause a compiler warning). 3) No longer generate a warning describing the exact cause of any registration failure (just warns that overall registration failed). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
|
a31abe8daee5dd618aecb1484dbe9bf68c5c8a4a |
07-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate duplication of media structures Changes TIPC's list of registered media types from an array of media structures to an array of pointers to media structures. This eliminates the need to copy of the contents of the structure passed in during media registration. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
|
c79be4549ae39edc026aa67eb64a25424542943f |
06-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize detection of duplicate media registration Streamlines the detection of an attempt to register a TIPC media structure using an already registered name or type identifier. The revised logic now reuses an existing routine to detect an existing name and no longer unnecessarily manipulates the media type counter during an unsuccessful registration attempt. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
|
706767da1bd0726d8fbc62e4818cb29193676a74 |
06-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Register new media using pre-compiled structure Speeds up the registration of TIPC media types by passing in a structure containing the required information, rather than by passing in the various fields describing the media type individually. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
th_media.c
|
2060a5774452e35b4a1dc4371abbb5ffd691355f |
06-Oct-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enable use by containers having their own network namespace Permits a Linux container to use TIPC sockets even when it has its own network namespace defined by removing the check that prohibits such use. This makes it possible for users who wish to isolate their container network traffic from normal network traffic to utilize TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
966567b7644b540962d90a0878706f59ae22c7e1 |
19-Dec-2011 |
Eric Dumazet <eric.dumazet@gmail.com> |
net: two vzalloc() cleanups We can use vzalloc() helper now instead of __vmalloc() trick Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ef.c
|
bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf |
15-Jul-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules These files are non modular, but need to export symbols using the macros now living in export.h -- call out the include so that things won't break when we remove the implicit presence of module.h from everywhere. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
3a9a231d977222eea36eae091df2c358e03ac839 |
27-May-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
net: Fix files explicitly needing to include module.h With calls to modular infrastructure, these files really needs the full module.h header. Call it out so some of the cleanups of implicit and unrequired includes elsewhere can be cleaned up. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
|
94362c7e49b2eccf9fe86112b8090939aa2f5355 |
09-Aug-2011 |
Ying Xue <ying.xue@windriver.com> |
tipc: Remove unused link event tracking code Elimintes prototype link event tracking functionality that has never been fleshed out and doesn't do anything useful at the current time. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
onfig.h
ink.c
|
7e2447763c28b8b67af67e757508c1a05c2c85b9 |
19-Jul-2011 |
Ying Xue <ying.xue@windriver.com> |
tipc: Remove callback field from subscription structure Eliminate the "event_cb" member from TIPC's "subscription" structure since the function pointer it holds always points to subscr_send_event(). Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ubscr.c
ubscr.h
|
245f3d342dccad293d0cd0bbe231051b2daa695f |
06-Jul-2011 |
Ying Xue <ying.xue@windriver.com> |
tipc: Simplify prohibition of listen and accept for connectionless sockets Modifies the proto_ops structure used by TIPC DGRAM and RDM sockets so that calls to listen() and accept() are handled by existing kernel "unsupported operation" routines, and eliminates the related checks in the listen and accept routines used by SEQPACKET and STREAM sockets that are no longer needed. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
1d835874af143a5c8273268d09e2f259b4c1ba89 |
06-Jul-2011 |
Ying Xue <ying.xue@windriver.com> |
tipc: Add support for SO_SNDTIMEO socket option Adds support for the SO_SNDTIMEO socket option. (This complements the existing support for SO_RCVTIMEO that is already present.) Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
9aa88c2a509e11e6efc466c88b386e0e01bef731 |
31-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhance sending of bulk name table messages Modifies the initial transfer of name table entries to a new neighboring node so that the messages are enqueued as a unit, rather than individually. The revised algorithm now locates the link carrying the message only once, and eliminates unnecessary checks for link congestion, message fragmentation, and message bundling that are not required when sending these messages. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ink.h
ame_distr.c
|
1c553bb52eb4c58333a843c0a5888d2329909f62 |
02-Sep-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: relocate/coalesce node cast in tipc_named_node_up Functions like this are called using unsigned longs from function pointers. In this case, the function is passed in a node which is normally internally treated as a u32 by TIPC. Rather than add more casts into this function in the future for each added use of node within, move the cast to a single place on a local. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
149ce37c8de72c64fc4f66c1b4cf7a0fb66b7ee9 |
31-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent fragmented messages during initial name table exchange Reduces the maximum size of messages sent during the initial exchange of name table information between two nodes to be no larger than the MTU of the first link established between the nodes. This ensures that messages will never need to be fragmented, which would add unnecessary overhead to the name table synchronization mechanism. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
|
909234cdd2b5954374e346c105b648f6c2800f55 |
27-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Lower limits for number of bearers and media types Reduces the number of bearers a node can support to 2, which can use identical or non-identical media. This change won't impact users, since they are currently limited to a maximum of 2 Ethernet bearers, and will save memory by eliminating a number of unused entries in TIPC's media and bearer arrays. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.h
th_media.c
|
18abf0fb6b8f05be2a289abbbc054d4869281476 |
27-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove redundant search when enabling bearer Removes obsolete code that searches for an Ethernet bearer structure entry to use for a newly enabled bearer, since this search is now performed at the start of the enabling algorithm. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
th_media.c
|
bcd326e844c46e0533a79f91e75dea160469cf86 |
27-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix unsafe device list search when enabling bearer Ensures that the device list lock is held while trying to locate the Ethernet device used by a newly enabled bearer, so that the addition or removal of a device does not cause problems. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
th_media.c
|
b4b5610223f17790419b03eaa962b0e3ecf930d7 |
27-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure both nodes recognize loss of contact between them Enhances TIPC to ensure that a node that loses contact with a neighboring node does not allow contact to be re-established until it sees that its peer has also recognized the loss of contact. Previously, nodes that were connected by two or more links could encounter a situation in which node A would lose contact with node B on all of its links, purge its name table of names published by B, and then fail to repopulate those names once contact with B was restored. This would happen because B was able to re-establish one or more links so quickly that it never reached a point where it had no links to A -- meaning that B never saw a loss of contact with A, and consequently didn't re-publish its names to A. This problem is now prevented by enhancing the cleanup done by TIPC following a loss of contact with a neighboring node to ensure that node A ignores all messages sent by B until it receives a LINK_PROTOCOL message that indicates B has lost contact with A, thereby preventing the (re)establishment of links between the nodes. The loss of contact is recognized when a RESET or ACTIVATE message is received that has a "redundant link exists" field of 0, indicating that B's sending link endpoint is in a reset state and that B has no other working links. Additionally, TIPC now suppresses the sending of (most) link protocol messages to a neighboring node while it is cleaning up after an earlier loss of contact with that node. This stops the peer node from prematurely activating its link endpoint, which would prevent TIPC from later activating its own end. TIPC still allows outgoing RESET messages to occur during cleanup, to avoid problems if its own node recognizes the loss of contact first and tries to notify the peer of the situation. Finally, TIPC now recognizes an impending loss of contact with a peer node as soon as it receives a RESET message on a working link that is the peer's only link to the node, and ensures that the link protocol suppression mentioned above goes into effect right away -- that is, even before its own link endpoints have failed. This is necessary to ensure correct operation when there are redundant links between the nodes, since otherwise TIPC would send an ACTIVATE message upon receiving a RESET on its first link and only begin suppressing when a RESET on its second link was received, instead of initiating suppression with the first RESET message as it needs to. Note: The reworked cleanup code also eliminates a check that prevented a link endpoint's discovery object from responding to incoming messages while stale name table entries are being purged. This check is now unnecessary and would have slowed down re-establishment of communication between the nodes in some situations. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
ink.c
ode.c
ode.h
|
4b3743ef2ca67e1f8ef7e9d4c551d6ba6ee85584 |
26-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure congested links receive bearer status updates Modifies code that disables a bearer to ensure that all of its links are deleted, not just its uncongested links. Similarly, modifies code that blocks a bearer to ensure that all of its links are reset, not just its uncongested links. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
|
a0f40f02ef0783688233caf737a17f1f56283e2b |
26-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent rounding issues when saving connect timeout option Saves a socket's TIPC_CONN_TIMEOUT socket option value in its original form (milliseconds), rather than jiffies. This ensures that the exact value set using setsockopt() is always returned by getsockopt(), without being subject to rounding issues introduced by a ms->jiffies->ms conversion sequence. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
ff60af8c16aa3b8ee51a0a6b4c4ea42342d1607d |
26-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate redundant check when sending messages Eliminates code in tipc_send_buf_fast() that handles messages sent to a destination on the current node, since the only caller of the routine only passes in messages destined for other nodes. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
0f38513d22e14f607fc791364856b08cac9f91c9 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete congestion handling when sending a broadcast NACK Eliminates obsolete code that handles broadcast bearer congestion when the broadast link sends a NACK message, since the broadcast pseudo-bearer never becomes blocked. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
9f6bdcd4286145e812058e4111e906e9830514d8 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Discard incoming broadcast messages that are unexpected Modifies TIPC's incoming broadcast packet handler to discard messages that cannot legally be sent over the broadcast link, including: - broadcast protocol messages that do no contain state information - payload messages that are not named multicast messages - any other form of message except for bundled messages, fragmented messages, and name distribution messages. These checks are needed to prevent TIPC from handing an unexpected message to a routine that isn't prepared to handle it, which could lead to incorrect processing (up to and including invalid memory references caused by attempts to access message fields that aren't present in the message). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
693d03ae3c2bafd7caca1cf4ade9f23f107e33c1 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove deferred queue head caching during broadcast message reception Modifies TIPC's incoming broadcast packet handler so that it no longer pre-reads information about the deferred packet queue, since the cached value is unreliable once the associated node lock has been released. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
5d3c488dfe5f797d9f3cee2e8928aad8a2f6e44f |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix node lock problems during broadcast message reception Modifies TIPC's incoming broadcast packet handler to ensure that the node lock associated with the sender of the packet is held whenever node-related data structure fields are accessed. The routine is also restructured with a single exit point, making it easier to ensure the node lock is properly released and the incoming packet is properly disposed of. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
169073db442cb9e5aa2b70a2e4158d4f35a3b810 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent broadcast link stalling when another node fails Ensure that broadcast link messages that have not been acknowledged by a newly failed node do not get an implied acknowledgement until the failed node is removed from the broadcast link's map of reachable nodes. Previously, a race condition allowed a new broadcast link message to be sent after the implicit acknowledgement processing was completed, but before the map of reachable nodes was updated, resulting in the message having an expected acknowledgement count that required the failed node to explicitly acknowledge the message. Since this would never occur the new message would remain in the broadcast link's transmit queue forever, eventually causing the link to become congested and "stall". Delaying the implicit acknowledgement processing until after the update of the map of reachable nodes eliminates this race condition and prevents stalling. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
|
c5bd4d85d356199ebdbc2c8bbfff86a292c65a9f |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhance cleanup of broadcast link when contact with node is lost Enhances cleanup of broadcast link-related information when contact with a node is lost. 1) All broadcast link-related cleanup now occurs only if the lost node was capable of communicating over the broadcast link. 2) Following cleanup, the lost node is marked as no longer supporting the broadcast link, ensuring that any remaining broadcast messages received from that node prior to the re-establishment of a normal communication link are ignored. Thanks to Surya [Suryanarayana.Garlapati@emerson.com] for contributing a prototype version of this patch. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
|
23f0ff906af93be6edb579824474117b232c7cc0 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove non-executable code to handle broadcast bearer congestion Eliminates code associated with the sending of unsent broadcast link traffic when the broadcast pseudo-bearer becomes unblocked following a temporary congestion situation. This code is non-executable because the broadcast pseudo-bearer never becomes blocked [see tipc_bcbearer_send()]. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
earer.c
|
2ff9f924a565aa22c06169c89fcd2133d820a9d2 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Cosmetic changes to broadcast bearer send routine Updates the comments in the broadcast bearer send routine to more accurately describe the processing done by the routine. Also replaces the improper use of a TIPC payload message error status symbol (in a place that has nothing to do with such errors) with its numeric equivalent. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
2e2d9be8454e295374dfbddd7ceaba2e4fc01c76 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update obsolete references to multicast link Updates TIPC's broadcast link in a couple of places that were missed during the transition from its former name ("multicast-link") to its current name ("broadcast-link"). These changes are essentially cosmetic and do not affect the overall operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
641c218d120b03bdea4f658ab44930587cff9158 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhance filtering of out-dated link reset messages Ensure TIPC ignores an out-dated link reset message whose session number predates the current session number. (Previously, TIPC only ignored an out-date reset message whose session number was equal to the current link session number.) Out-dated link reset messages should not occur under normal circumstances; however, they can be generated if a link endpoint is unable to send a link reset message right away and queues it for later delivery, but the queued message is not sent until after the link is established. Thanks to Laser [gotolaser@gmail.com] for diagnosing the problem and contributing a prototype patch. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
f882cb7684cf54d4f5d3e25443a80a039e1b4bd7 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Initialize peer session field of newly created link endpoint Initializes the peer session number field of a newly created link endpoint to an invalid value. This eliminates the remote possibility that it will accidentally match the session number used by the peer the first time the link is activated, and cause the link to ignore a valid RESET message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
062b4c99fe70f95e07e8af15617750d2a6fb6789 |
07-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Display meaningful peer interface name during link creation Sets the peer interface portion of the name of a newly created link endpoint to "unknown". This ensures that state and statistics information can be properly displayed during the time between the link endpoint's creation and the time handshaking with its peer is completed. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
ed33a9c4e354b08630bcf4cea70596f690487108 |
05-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate obsolete filter for unexpected unicast messages Removes a test that ensures unicast link endpoints discard an incoming message if it will not be consumed by the node itself and cannot be forwarded to another node, since the preceding test already ensures that the message is destined for this node and single-cluster TIPC no longer performs message forwarding. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
5adeb17c936d2dca155e4c93e2c6ea70419a6033 |
05-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete manipulation of message re-route count field Eliminates code that increments and validates the re-route count field of payload messages, since the elimination of multi-cluster support means that it is no longer necessary for TIPC to forward incoming messages to another node. (The obsolete code was incorrect anyway, since it incorrectly incremented the re-route count field of messages that originated on the node that forwarded the message.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
|
60063497a95e716c9a689af3be2687d261f115b4 |
27-Jul-2011 |
Arun Sharma <asharma@fb.com> |
atomic: use <linux/atomic.h> This allows us to move duplicated code in <asm/atomic.h> (atomic_inc_not_zero() for now) to <linux/atomic.h> Signed-off-by: Arun Sharma <asharma@fb.com> Reviewed-by: Eric Dumazet <eric.dumazet@gmail.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: David Miller <davem@davemloft.net> Cc: Eric Dumazet <eric.dumazet@gmail.com> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ore.h
|
e4a0aee47e1823025972b8f3defde432e485b7b9 |
01-Jun-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize creation of connection protocol messages Simplifies the creation of connection protocol messages by eliminating the passing of information that is no longer required, is constant, or is contained within the port structure that is issuing the message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
f55b564054e35dcd171e1191a477327528271f95 |
01-Jun-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Don't create payload message using connection protocol routine Modifies the logic that creates a connection termination payload message so that it no longer (mis)uses a routine that creates a connection protocol message. The revised code is now more easily understood, and avoids setting several fields that are either not present in payload messages or were being set more than once. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
1c1a551acb8b65f842824900b283a96462f907ab |
01-Jun-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reject connection protocol message sent to unconnected port Restructures the logic used in tipc_port_recv_proto_msg() to ensure that incoming connection protocol messages are handled properly. The routine now uses a two-stage process that first ensures the message applies on an existing connection and then processes the request. This corrects a loophole that allowed a connection probe request to be processed if it was sent to an unconnected port that had no names bound to it. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
e244a915ff7676b1567ba68102c9b53011f5b766 |
31-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize creation of FIN messages Speeds up the creation of the FIN message that terminates a TIPC connection. The typical peer termination message is now created by duplicating the terminating port's standard payload message header and adjusting the message size, importance, and error code fields, rather than building all fields of the message from scratch. A FIN message that is directed to the port itself is created the same way. but also requires swapping the origin and destination address fields. In addition to reducing the work required to create FIN messages, these changes eliminate several instances of duplicated code, Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
741d9eb7b8f352071f56aacb77f5245b4e2a4fbe |
31-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Cleanup of message header size terminology Performs cosmetic cleanup of the symbolic names used to specify TIPC payload message header sizes. The revised names now more accurately reflect the payload messages in which they can appear. In addition, several places where these payload message symbol names were being used to create non-payload messages have been updated to use the proper internal message symbolic name. No functional changes are introduced by this rework. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.h
ame_distr.c
ort.c
|
15f4e2b30372695573bc46102790094a92b3eb11 |
31-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate useless check when creating internal message Gets rid of code that allows tipc_msg_init() to create a short payload message header. This optimization is possible because there are no longer any callers who require this capability. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.c
|
a9948ba24f764694413207812d2b2dae46eb7275 |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove unnecessary includes in socket code Eliminates a pair of #include statements for files that are brought in automatically by including core.h. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
f01a2b6378f757727b205419b677d45edfcc5a3b |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate unused field in bearer structure Gets rid of counter that records the number of times a bearer has resumed after congestion or blocking, since the value is never referenced anywhere. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
|
0f305bf4218c75b6fd1283105bd88736157aa5d2 |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Correct typo in link statistics output Fixes a minor error in the title of one of the message size profiling values printed as part of TIPC's link statistics. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
8af4638a297b43c4929fdc01456b7f0698de0c0e |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate checks for empty zone list during name translation Gets rid of a pair of checks to see if a name sequence entry in TIPC's name table has an empty zone list. These checks are pointless since the zone list can never be empty (i.e. as soon as the list becomes empty the associated name sequence entry is deleted). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
f6f0a4d2d05f758f011a506731e84160d140304b |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Convert name table publication lists to standard kernel lists Modifies the main circular linked lists of publications used in TIPC's name table to use the standard kernel linked list type. This change simplifies the deletion of an existing publication by eliminating the need to search up to three lists to locate the publication. The use of standard list routines also helps improve the readability of the name table code by make it clearer what each list operation being performed is actually doing. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
ame_table.h
|
b52124a50fa7b870a3d1a18a8ff56273c7d690dd |
30-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Partition name table instance array info into two parts Modifies the name table array structure that contains the name sequence instances for a given name type so that the publication lists associated with a given instance are stored in a dynamically allocated structure, rather than being embedded within the array entry itself. This change is being done for several reasons: 1) It reduces the amount of data that needs to be copied whenever a given array is expanded or contracted to accommodate the first publication of a new name sequence or the removal of the last publication of an existing name sequence. 2) It reduces the amount of memory associated with array entries that are currently unused. 3) It facilitates the upcoming conversion of the publication lists from TIPC-specific circular lists to standard kernel lists. (Standard lists cannot be used with the former array structure because the relocation of array entries during array expansion and contraction would corrupt the lists.) Note that, aside from introducing a small amount of code to dynamically allocate and free the structure that now holds publication list info, this change is largely a simple renaming exercise that replaces references to "sseq->LIST" with "sseq->info->LIST" (or "info->LIST"). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_table.c
|
7eb878ed8e0eae67269439bfd82234f9ba52ffe4 |
25-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate redundant masking in message header routines Gets rid of unnecessary masking in two routines that set TIPC message header fields. (The msg_set_bits() routine already takes care of masking the new value to the correct size.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.h
|
74d33b32deaa9ec864d6db3255b3a17a459f75fe |
24-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate message header routines for caching destination node Gets rid of a pair of routines that provide support for temporarily caching the destination node for a message in the associated message buffer's application handle, since this capability is no longer used. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.h
|
7dd1bf28ccc44ef205c64aab618863faa914daa9 |
23-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimizations & corrections to message rejection Optimizes the creation of a returned payload message by duplicating the original message and then updating the small number of fields that need to be adjusted, rather than building the new message header from scratch. In addition, certain operations that are not always required are relocated so that they are only done if needed. These optimizations also have the effect of addressing other issues that were present previously: 1) Fixes a bug that caused the socket send routines to return the size of the returned message, rather than the size of the sent message, when a returnable payload message was sent to a non-existent destination port. 2) The message header of the returned message now matches that of the original message more closely. The header is now always the same size as the original header, and some message header fields that weren't being initialized in the returned message header are now populated correctly -- namely the "d" and "s" bits, and the upper bound of a multicast name instance (where present). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
017dac31dc8a25ad45421715d88c3869e299fd35 |
24-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize routing of returned payload messages Reduces the work involved in transmitting a returned payload message by doing only the work necessary to route such a message directly to the specified destination port, rather than invoking the code used to route an arbitrary message to an arbitrary destination. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
76d12527f74ad1b42b068252fdd2056c8ae48a99 |
23-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add sanity check to detect rejection of non-payload messages Introduces an internal sanity check to ensure that the only undeliverable messages TIPC attempts to return to their origin are application payload messages. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
acc631bf6f597b36f3f014e12e69c710da610027 |
23-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Standardize exit logic for message rejection handling Modifies the routine that handles the rejection of payload messages so that it has a single exit point that frees up the rejected message, thereby eliminating some duplicated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
7ae4738e9e46a2f88e5d1332b7397bb96c527c44 |
23-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove unused sanity test macro Eliminates a TIPC-specific assert() macro that is no longer used. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.h
|
5e726900380cfff50436ca6c5e08b35b3357d82a |
23-May-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Convert fatal broadcast sanity check to non-fatal check Modifies the existing broadcast link sanity check that detects an attempt to send a message off-node when there are no available destinations so that it no longer causes a kernel panic; instead, the check now issues a warning and stack trace and then returns without sending the message anywhere. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
972a77fbf1bbea6f54b5986b05041a17b607695b |
22-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Revise timings used when sending link request messages Revises the algorithm governing the sending of link request messages to take into account the number of nodes each bearer is currently in contact with, and to ensure more rapid rediscovery of neighboring nodes if a bearer fails and then recovers. The discovery object now sends requests at least once a second if it is not in contact with any other nodes, and at least once a minute if it has at least one neighbor; if contact with the only neighbor is lost, the object immediately reverts to its initial rapid-fire search timing to accelerate the rediscovery process. In addition, the discovery object now stops issuing link request messages if it is in contact with the only neighboring node it is configured to communicate with, since further searching is unnecessary. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
1209966cd5d2ec7f89ad2ed58a6a342aa8ea8712 |
22-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Add monitoring of number of nodes discovered by bearer Augments TIPC's discovery object to track the number of neighboring nodes having an active link to the associated bearer. This means tipc_disc_update_link_req() becomes either one of: tipc_disc_add_dest() or: tipc_disc_remove_dest() depending on the code flow direction of things. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
iscover.c
iscover.h
|
691a62075922b43b2b03def87ebcfdfbf0cd2ed8 |
21-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Enhance sending of discovery object link request messages Augments TIPC's discovery object to send its initial neighbor discovery request message as soon as the associated bearer is created, rather than waiting for its first periodic timeout to occur, thereby speeding up the discovery process. Also adds a check to suppress the initial request or subsequent requests if the bearer is blocked at the time the request is scheduled for transmission. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
3a777ff8b14456e15991c9fcc225943453dc3a75 |
21-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Enhance handling of discovery object creation failures Modifies bearer creation and deletion code to improve handling of scenarios when a neighbor discovery object cannot be created. The creation routine now aborts the creation of a bearer if its discovery object cannot be created, and deletes the newly created bearer, rather than failing quietly and leaving an unusable bearer hanging around. Since the exit via the goto label really isn't a definitive failure in all cases, relabel it appropriately. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
iscover.c
iscover.h
|
dc63d91eb1cf74233c68b0058dcd477f5d019d02 |
21-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Introduce routine to enqueue a chain of messages on link tx queue Create a helper routine to enqueue a chain of sk_buffs to a link's transmit queue. It improves readability and the new function is anticipated to be used more than just once in the future as well. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
2689690469c9fd76f9db0afcdf2523f48cce4006 |
21-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Avoid recomputation of outgoing message length Rework TIPC's message sending routines to take advantage of the total amount of data value passed to it by the kernel socket infrastructure. This change eliminates the need for TIPC to compute the size of outgoing messages itself, as well as the check for an oversize message in tipc_msg_build(). In addition, this change warrants an explanation: - res = send_packet(NULL, sock, &my_msg, 0); + res = send_packet(NULL, sock, &my_msg, bytes_to_send); Previously, the final argument to send_packet() was ignored (since the amount of data being sent was recalculated by a lower-level routine) and we could just pass in a dummy value (0). Now that the recalculation is being eliminated, the argument value being passed to send_packet() is significant and we have to supply the actual amount of data we want to send. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ink.h
sg.c
sg.h
ort.c
ort.h
ocket.c
ubscr.c
|
c29c3f70c9eb6f18090da5af9dbe9dcb4adece8c |
20-Apr-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Abort excessive send requests as early as possible Adds checks to TIPC's socket send routines to promptly detect and abort attempts to send more than 66,000 bytes in a single TIPC message or more than 2**31-1 bytes in a single TIPC byte stream request. In addition, this ensures that the number of iovecs in a send request does not exceed the limits of a standard integer variable. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
66e019a6af827a254641e83e96ee36b0f4adc5e3 |
20-Apr-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Strengthen checks for neighboring node discovery Enhances existing checks on the discovery domain associated with a TIPC bearer. A bearer can no longer be configured to accept links from itself only (which would be pointless), or to nodes outside its own cluster (since multi-cluster support has now been removed from TIPC). Also, the neighbor discovery routine now validates link setup requests against the configured discovery domain for the bearer, rather than simply ensuring the requesting node belongs to the node's own cluster. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
iscover.c
|
1f3de471adf5c2a584480a6010808d7a17063897 |
19-Apr-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: make zone/cluster mask constants a define This allows them to be available for easy re-use in other places and avoids trivial mistakes caused by "count the f's and 0's". Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ddr.h
|
bebc55aeffa72d8198e5c54cab9973a30e92f854 |
19-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix sk_buff leaks when link congestion is detected Modifies a TIPC send routine that did not discard the outgoing sk_buff if it was not transmitted because of link congestion; this eliminates the potential for buffer leakage in the many callers who did not clean up the unsent buffer. (The two routines that previously did discard the unsent buffer have been updated to eliminate their now-redundant clean up.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ink.c
|
7f47f5c751c93f2ca9e7f0ef6c0915162ac9e076 |
18-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update destination node field on incoming multicast messages Sets the destination node field of an incoming multicast message to the receiving node's network address before handing off the message to each receiving port. This ensures that, in the event the destination port returns the message to the sender, the sender can identify which node the destination port belonged to. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
7462b9e9f69aa6c5e2fded65d3b03df4ed08ff45 |
18-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix problem with bundled multicast message Set the destination node and destination port fields of an outgoing multicast message header to zero; this is necessary to ensure that the receiving node can route the message properly if it was packed into a bundle due to link congestion. (Previously, there was a chance that the receiving node would send the unbundled message to a random node & port, rather than processing the message itself.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
53b94364a7c96d3b2276cb2bbbecfb269bc9f0fc |
17-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Set name lookup scope field properly in all data messages Ensures that all outgoing data messages have the "name lookup scope" field of their header set correctly; that is, named multicast messages now specify cluster-wide name lookup, while messages not using TIPC naming zero out the lookup field. (Previously, the lookup scope specified for these types of messages was inherited from the last message sent by the sending port.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
|
77561557447d3be586e701815e261c93c11ded00 |
17-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix issues with fragmentation of an existing message buffer Modifies the routine that fragments an existing message buffer to use similar logic to that used when generating fragments from an iovec. The routine now creates a complete chain of fragments and adds them to the link transmit queue as a unit, so that the link sends all fragments or none; this prevents the incomplete transmission of a fragmented message that might otherwise result because of link congestion or memory exhaustion. This change also ensures that the counter recording the number of fragmented messages sent by the link is now incremented only if the message is actually sent. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
e0f085964cac97a3a9e47741365ef6a03e500873 |
17-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Avoid pointless masking of fragmented message identifier Eliminates code that restricts a link's counter of its fragmented messages to a 16-bit value, since the counter value is automatically restricted to this range when it is written into the message header. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
670c54083aa6e0eeefda1c4b307a91679b577664 |
17-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Don't initialize link selector field in fragmented messages Eliminates code that sets the link selector field in the header of fragmented messages, since this information is never referenced. (The unnecessary initialization was harmless as it was over-written by the fragmented message identifier value before the fragments were transmitted.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
7775bcc722ed9993e83401fee9c14008843b83c7 |
12-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove code to emulate loss of broadcast messages Eliminates optional code used to test TIPC's ability to recover from lost broadcast messages. This code duplicates functionality already provided by the network stack's QoS option "network emulator". Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
92138d1f254d58b818e7c3b91a1967cf57d374b5 |
08-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Cosmetic consolidation of internal message type definitions Half of the #define entries in msg.h were down at the bottom of the header, instead of up at the top before any of the static inlines etc. Relocate them up to the top, to be consistent with the other normal linux header file layout conventions. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.h
|
19f53d2cef97506364638c647a3aa11291819896 |
08-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate unused routing message definitions Gets rid of unused constants defining the types used in routing messages. These messages no longer exist in TIPC now that multicluster and multizone support has been eliminated. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.h
|
cc4c4353f0ebde05992bf360f16ec92260811393 |
08-Apr-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update comments in message header include file Removes comments in TIPC's message header include file that are outdated and/or unnecessary. Also introduces short comments (or supplements existing ones) to better describe several set of existing symbolic constants. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.h
|
97fbdc1f77e9ce50ed0be543273d78f8de8675ac |
05-Apr-2011 |
Michal Marek <mmarek@suse.cz> |
tipc: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Signed-off-by: Michal Marek <mmarek@suse.cz> Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: netdev@vger.kernel.org Cc: tipc-discussion@lists.sourceforge.net Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
|
25985edcedea6396277003854657b5f3cb31a628 |
31-Mar-2011 |
Lucas De Marchi <lucas.demarchi@profusion.mobi> |
Fix common misspellings Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
ink.c
ame_distr.c
|
1fa073803ec543e8b95fc5acf164fa2e0074bb4f |
14-Mar-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: delete extra semicolon blocking node deletion Remove bogus semicolon only recently introduced in 34e46258cb9f5 that blocks cleanup of nodes for N>1 on shutdown. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
|
390bce4237487975c2168aa5fa786f75ead66852 |
11-Mar-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate obsolete routine for handling routed messages Eliminates a routine that is used in handling messages arriving from another cluster or zone. Such messages can no longer be received by TIPC now that multi-cluster and multi-zone network support has been eliminated. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.c
sg.h
|
7945c1fb02ef08316df8c054ce180bf3f4e35ae4 |
11-Mar-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate remaining support for routing table messages Gets rid of all remaining code relating to ROUTE_DISTRIBUTOR messages. These messages were only used in multi-cluster and multi-zone networks, which TIPC no longer supports. (For safety, TIPC now treats such messages the same way that it handles other unrecognized messages.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.c
sg.h
|
50d492321a2d94aa2ff5e26e73af08d937f8acb0 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove bearer flag indicating existence of broadcast address Eliminates the flag in the TIPC bearer structure that indicates if the bearer supports broadcasting, since the flag is always set to 1 and serves no useful purpose. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
|
f9107ebe7d18a04f07d2a990a912efa2a2ac1873 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Don't respond to neighbor discovery request on blocked bearer Adds a check to prevent TIPC from trying to respond to an incoming LINK_CONFIG request message if the associated bearer is currently prohibited from sending messages. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
d901a42b271dbd94983b798955403dcf1afa60ac |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate unnecessary constant for neighbor discovery msg size Eliminates an unnecessary constant that defines the size of a LINK_CONFIG message, and uses one of the existing standard message size symbols in its place. (The defunct constant was located in the wrong place anyway, since it was grouped with other constants that define message users instead of message sizes.) Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
sg.h
|
a2b58de2e3993a23b092ae54a35c38bf0dacb618 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove unused field in bearer structure Eliminates a field in TIPC's bearer objects that is set, but never referenced. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
|
50d3e6399a61fca53c5c440a79f71299db66b803 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Correct misnamed references to neighbor discovery domain Renames items that are improperly labelled as "network scope" items (which are represented by simple integer values) rather than "network domain" items (which are represented by <Z.C.N>-type network addresses). This change is purely cosmetic, and does not affect the operation of TIPC. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
earer.h
onfig.c
|
37b9c08a88f9a82456bb11fa050cccb544e8dc60 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Optimizations to link creation code Enhances link creation code as follows: 1) Detects illegal attempts to add a requested link earlier in the link creation process. This prevents TIPC from wasting time initializing a link object it then throws away, and also eliminates the code needed to do the throwing away. 2) Passes in the node object associated with the requested link. This allows TIPC to eliminate a search to locate the node object, as well as code that attempted to create the node if it doesn't exist. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
ink.c
ink.h
ode.c
ode.h
|
fa2bae2d5bede252445cc457737d00f9036c41c3 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Give Tx of discovery responses priority over link messages Delay releasing the node lock when processing a neighbor discovery message until after the optional discovery response message has been sent. This helps ensure that any link protocol messages sent by a link endpoint created as a result of a neighbor discovery request are received after the discovery response is received, thereby giving the receiving node a chance to create a peer link endpoint to consume those link protocol messages, if one does not already exist. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
a728750e4f0c9500741406299f1817022d411d33 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Cosmetic changes to neighbor discovery logic Reworks the appearance of the routine that processes incoming LINK_CONFIG messages to keep the main logic flow at a consistent level of indentation, and to add comments outlining the various phases involved in processing each message. This rework is being done to allow upcoming enhancements to this routine to be integrated more cleanly. The diff isn't really readable, so know that it was a case of the old code being like: tipc_disc_recv_msg(..) { if (in_own_cluster(orig)) { ... lines and lines of stuff ... } } which is now replaced with the more sane: tipc_disc_recv_msg(..) { if (!in_own_cluster(orig)) return; ... lines and lines of stuff ... } Instances of spin locking within the reindented block were replaced with the identical tipc_node_[un]lock() abstractions. Note that all these changes are cosmetic in nature, and do not change the way LINK_CONFIG messages are processed. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
iscover.c
|
75f0aa49908992dbeb75710b72cbedb5cff9680f |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Fix redundant link field handling in link protocol message Ensures that the "redundant link exists" field of the LINK_PROTOCOL messages sent by a link endpoint is set if and only if the sending node has at least one other working link to the peer node. Previously, the bit was set only if there were at least 2 working links to the peer node, meaning the bit was incorrectly left unset in messages sent by a non-working link endpoint when exactly one alternate working link was available. The revised code now takes the state of the link sending the message into account when deciding if an alternate link exists. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
77f167fcce4d2ea144d92891d1e0fc0c50554082 |
28-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: make msg_set_redundant_link() consistent with other set ops All the other boolean like msg_set_X(m) operations don't export both a msg_set_X(a) and a msg_clear_X(m), but instead just have the single msg_set_X(m, val) variant. Make the redundant_link one consistent by having the set take a value, and delete the msg_clear_redundant_link() anomoly. This is a cosmetic change and should not change behaviour. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.h
|
8f19afb2dbc885befef2a4e7931dfcb51702a212 |
28-Feb-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: cosmetic - function names are not to be full sentences Function names like "tipc_node_has_redundant_links" are unweildy and result in long lines even for simple lines. The "has" doesn't contribute any value add, so dropping that is a slight step in the right direction. This is a cosmetic change, basic result of: for i in `grep -l tipc_node_has_ *` ; do sed -i s/tipc_node_has_/tipc_node_/ $i ; done Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ame_distr.c
ode.c
ode.h
|
e7b3acb6a85266dfd3e102b3d15b51b0ecd6bc2e |
27-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate timestamp from link protocol messages Removes support for the timestamp field of TIPC's link protocol messages. This field was previously used to hold an OS-dependent timestamp value that was used to assist in debugging early versions of TIPC. The field has now been deemed unnecessary and has been removed from the latest TIPC specification. This change has no impact on the operation of TIPC since the field was set by TIPC, but never referenced. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
sg.c
sg.h
|
34e46258cb9f53b41e8ffd2e9acd58e0cf64b158 |
26-Feb-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: manually inline net_start/stop, make assoc. vars static Relocates network-related variables into the subsystem files where they are now primarily used (following the recent rework of TIPC's node table), and converts globals into locals where possible. Changes the initialization of tipc_num_links from run-time to compile-time, and eliminates the net_start routine that becomes empty as a result. Also eliminates the corresponding net_stop routine by moving its (trivial) content into the one location that called the routine. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
et.h
ode.c
|
672d99e19a12b703c9e2d71ead8fb8b8a85a3886 |
26-Feb-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Convert node object array to a hash table Replaces the dynamically allocated array of pointers to the cluster's node objects with a static hash table. Hash collisions are resolved using chaining, with a typical hash chain having only a single node, to avoid degrading performance during processing of incoming packets. The conversion to a hash table reduces the memory requirements for TIPC's node table to approximately the same size it had prior to the previous commit. In addition to the hash table itself, TIPC now also maintains a linked list for the node objects, sorted by ascending network address. This list allows TIPC to continue sending responses to user space applications that request node and link information in sorted order. The list also improves performance when name table update messages are sent by making it easier to identify the nodes that must be notified. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
et.c
et.h
ode.c
ode.h
|
f831c963b5c20bec230edce89e25f369996be5db |
25-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate configuration for maximum number of cluster nodes Gets rid of the need for users to specify the maximum number of cluster nodes supported by TIPC. TIPC now automatically provides support for all 4K nodes allowed by its addressing scheme. Note: This change sets TIPC's memory usage to the amount used by a maximum size node table with 4K entries. An upcoming patch that converts the node table from a linear array to a hash table will compact the node table to a more efficient design, but for clarity it is nice to have all the Kconfig infrastruture go away separately. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
config
ddr.c
onfig.c
ore.c
ore.h
et.c
|
d1bcb11544109114d72965afea7805cc3e16a83a |
25-Feb-2011 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Split up unified structure of network-related variables Converts the fields of the global "tipc_net" structure into individual variables. Since the struct was never referenced as a complete unit, its existence was pointless. This will facilitate upcoming changes to TIPC's node table and simpify upcoming relocation of the variables so they are only visible to the files that actually use them. This change is essentially cosmetic in nature, and doesn't affect the operation of TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
et.c
et.h
ode.c
ode.h
|
9df3b7eb6ec1c7734482f782bf8335a2737c02f0 |
24-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Fix problem with missing link in "tipc-config -l" output Removes a race condition that could cause TIPC's internal counter of the number of links it has to neighboring nodes to have the incorrect value if two independent threads of control simultaneously create new link endpoints connecting to two different nodes using two different bearers. Such under counting would result in TIPC failing to list the final link(s) in its response to a configuration request to list all of the node's links. The counter is now updated atomically to ensure that simultaneous increments do not interfere with each other. Thanks go to Peter Butler <pbutler@pt.com> for his assistance in diagnosing and fixing this problem. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
et.c
et.h
ode.c
|
71092ea122062012f8e4b7fb2f9a747212d1479c |
23-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Add support for SO_RCVTIMEO socket option Adds support for the SO_RCVTIMEO socket option to TIPC's socket receive routines. Thanks go out to Raj Hegde <rajenhegde@yahoo.ca> for his contribution to the development and testing this enhancement. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
f1379173326de4c745c4f610501486e4f3bd9248 |
23-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Cosmetic changes to node subscription code Relocates the code that notifies users of node subscriptions so that it is adjacent to the rest of the routines that implement TIPC's node subscription capability. Renames the name table routine that is invoked by a node subscription to better reflect its purpose and to be consistent with other, similar name table routines. These changes are cosmetic in nature, and do not alter the behavior of TIPC. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
ode.c
ode_subscr.c
ode_subscr.h
|
431697eb60d2d36614096aff12bd1b826a9f9bc1 |
23-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Prevent null pointer error when removing a node subscription Prevents a null pointer dereference from occurring if a node subscription is triggered at the same time that the subscribing port or publication is terminating the subscription. The problem arises if the triggering routine asynchronously activates and deregisters the node subscription while deregistration is already underway -- the deregistration routine may find that the pointer it has just verified to be non-NULL is now NULL. To avoid this race condition the triggering routine now simply marks the node subscription as defunct (to prevent it from re-activating) instead of deregistering it. The subscription is now both deregistered and destroyed only when the subscribing port or publication code terminates the node subscription. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ame_distr.c
ode.c
|
a3796f895ff2917aea331a8d40036c73452b2203 |
23-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Add network address mask helper routines Introduces a pair of helper routines that convert the network address for a TIPC node into the network address for its cluster or zone. This is a cosmetic change designed to avoid future errors caused by the incorrect use of address bitmasks, and does not alter the existing operation of TIPC. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ddr.c
ddr.h
ode.c
|
aa8472948487432bacbd099b86e313bc16319495 |
21-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Correct broadcast link peer info when displaying links Fixes a typo in the calculation of the network address of a node's own cluster when generating a response to the configuration command that lists all of the node's links. The correct mask value for a <Z.C.N> network address uses 1's for the 8-bit zone and 12-bit cluster parts and 0's for the 12-bit node part. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ode.c
|
0232fd0ac475e5f5ec19a69d53467be11bec9833 |
21-Feb-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Allow receiving into iovec containing multiple entries Enhances TIPC's socket receive routines to support iovec structures containing more than a single entry. This change leverages existing sk_buff routines to do most of the work; the only significant change to TIPC itself is that an sk_buff now records how much data has been already consumed as an numeric offset, rather than as a pointer to the first unread data byte. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
bf781ecfc6d6ecc4f66762a870f9c1fc76b9c8d5 |
25-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Avoid reliable broadcast preparation for NACK messages 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
|
2e07dda1659095115e5e36a2fed0fddc1e3ea1c8 |
25-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove unused message header field for requested number of links 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
earer.c
iscover.c
iscover.h
sg.c
sg.h
|
741de3e9ff6e07e908e1cad2eb03e29677fde093 |
25-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove support for per-connection message sequence numbering 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sg.c
sg.h
ort.c
ort.h
|
214dda4a36329fdd631e3aac0fee6e6fa369db62 |
24-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Add in missing lock during link initialization 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
cb7ce91448c01724e18c1759aa5aba86e5f1c69b |
24-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Fix port counter handling to correct congestion control 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ort.c
ort.h
|
69218fc426569739d2bb68e15ac4905948409642 |
21-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Minor optimization to topology service connection establishment 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ubscr.c
|
f23d9bf2b7ba22fe49b65d344b3651049cecc51d |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Set unused probe field of link protocol messages to defined value 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
9bd80b60827fe8d84c0e594895acb8a44f2b98b1 |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Improve accuracy of link transmit queue maximum size statistic 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
ink.c
ink.h
|
9f54b545bd62a42ec354727d90eacadc5846406b |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate unnecessary locking when starting topology service 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ubscr.c
|
01d83eddc55c138cbb24a5917d5271c0b24956a1 |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Clean up tracking of node requesting a broadcast retransmit 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
cast.h
ink.c
|
c8a61b52ebac3645b4e3c5b03c2073e6c8c119a8 |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Fix print statements that assume pointers are 32-bit values 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
5413b4c6c07b659e52c84a4e40d897b32b89834f |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Improve handling of invalid link tolerance values 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
|
3f8dd9446e66f2a982ddcff38e4705cfe93eeec6 |
18-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Prevent invalid memory access when sending to configuration service 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ocket.c
|
4132facae1df653b5a78e0e32956218199026812 |
07-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove unused global variable tipc_user_count 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ore.c
ore.h
ocket.c
|
2d627b92fd1e39d83c3ee0b9d410403f98cb3981 |
07-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Combine bearer structure with tipc_bearer structure 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
cast.c
earer.c
earer.h
iscover.c
iscover.h
ink.c
ink.h
ode.c
|
23dd4cce387124ec3ea06ca30d17854ae4d9b772 |
07-Jan-2011 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Combine port structure with tipc_port structure 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 <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
ink.c
ink.h
ort.c
ort.h
ubscr.c
|
40cd201e37073b3e2281cf2c73fcf5674f22267f |
01-Jan-2011 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: update log.h re-include protection to reflect new name The tipc/dbg.h file was recently renamed to tipc/log.h, but the re-include define was not updated accordingly. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
og.h
|
a016892cd6eb8d3dd9769021b088917ac7371abd |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove extraneous braces from single statements Cleans up TIPC's source code to eliminate the presence of unnecessary use of {} around single statements. These changes are purely cosmetic and do not alter the operation of TIPC in any way. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
ink.c
sg.c
ame_table.c
ort.c
ocket.c
|
e3ec9c7d5eea9adf2c604c623c987360cc700b88 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove zeroing assignments to static global variables Cleans up TIPC's source code to eliminate the needless initialization of static variables to zero. These changes are purely cosmetic and do not alter the operation of TIPC in any way. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
th_media.c
andler.c
ame_distr.c
ame_table.c
ode.c
ort.c
ef.c
ocket.c
ubscr.c
|
2db9983a4318818845193bd577879c0620705e82 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: split variable assignments out of conditional expressions Cleans up TIPC's source code to eliminate assigning values to variables within conditional expressions, improving code readability and reducing warnings from various code checker tools. These changes are purely cosmetic and do not alter the operation of TIPC in any way. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
ore.c
ink.c
ocket.c
|
0e65967e33be61e5f67727edd4ea829b47676fc0 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: cleanup various cosmetic whitespace issues Cleans up TIPC's source code to eliminate deviations from generally accepted coding conventions relating to leading/trailing white space and white space around commas, braces, cases, and sizeof. These changes are purely cosmetic and do not alter the operation of TIPC in any way. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
config
cast.c
onfig.c
iscover.c
th_media.c
ink.c
ink.h
sg.c
sg.h
ame_table.c
ame_table.h
ode.c
ort.c
ort.h
ef.c
ocket.c
ubscr.c
|
25860c3bd5bd1db236d4fd5826d76127d677dc28 |
31-Dec-2010 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: recode getsockopt error handling for better readability The existing code for the copy to user and error handling at the end of getsockopt isn't easy to follow, due to the excessive use of if/else. By simply using return where appropriate, it can be made smaller and easier to follow at the same time. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
e83504f72456809cdbdbc91700d3ba6370c9da1c |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove pointless check for NULL prior to kfree It is acceptable to call kfree() with NULL, so these checks are not serving any useful purpose. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_distr.c
ort.c
|
886ef52a8ce6930a9d0c58267d5b5038ac3e8d30 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove redundant #includes Eliminates a number of #include statements that no longer serve any useful purpose. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
cast.c
earer.c
onfig.c
ore.c
iscover.c
th_media.c
sg.c
ame_distr.c
et.c
ode.c
ocket.c
|
6e7e309c62ab584348e0fef90c8e3e48f634dba1 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Finish streamlining of debugging code Completes the simplification of TIPC's debugging capabilities. By default TIPC includes no debugging code, and any debugging code added by developers that calls the dbg() and dbg_macros() is compiled out. If debugging support is enabled, TIPC prints out some additional data about its internal state when certain abnormal conditions occur, and any developer-added calls to the TIPC debug macros are compiled in. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
config
ore.h
og.c
sg.c
|
8d64a5ba58157dedc61f3f1f51e1c5d66f32a484 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Prune down link-specific debugging code Eliminates most link-specific debugging code in TIPC, which is now largely unnecessary. All calls to the link-specific debugging macros have been removed, as are the macros themselves; in addition, the optional allocation of print buffers to hold debugging information for each link endpoint has been removed. The ability for TIPC to print out helpful diagnostic information when link retransmit failures occur has been retained for the time being, as an aid in tracking down the cause of such failures. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
ink.c
ink.h
|
7ced6890bf81d311ab2ea846f92d5f3d0951c08c |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove dump() and tipc_dump_dbg() Eliminates calls to two debugging macros that are being completely obsoleted, as well as any associated debugging routines that are no longer required. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
og.c
|
b29f14284989b3d0b3a5ce268b5b1fc4df9c5795 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: remove calls to dbg() and msg_dbg() Eliminates obsolete calls to two of TIPC's main debugging macros, as well as a pair of associated debugging routines that are no longer required. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
onfig.c
ore.h
iscover.c
ink.c
ame_distr.c
ame_table.c
et.c
ode.c
ort.c
ort.h
ocket.c
ubscr.c
|
f5e75269f59f7c3816f23314b924895e4ecf8409 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: rename dbg.[ch] to log.[ch] As the first step in removing obsolete debugging code from TIPC the files that implement TIPC's non-debug-related log buffer subsystem are renamed to better reflect their true nature. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
akefile
ore.h
bg.c
bg.h
ink.h
og.c
og.h
|
5af5479296fba0ace5d5cab84045de5b19bde3fe |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove internal linked list of node objects Eliminates a sorted list TIPC uses to keep track of the neighboring nodes it has links to, since this duplicates information already present in the internal array of node object pointers. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
|
b0c1e928c85023c73780b5d9873406ccf1cd8019 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove user registry subsystem Eliminates routines, data structures, and files that make up TIPC's user registry. The user registry is no longer needed since the native API routines that utilized it no longer exist and there are no longer any internal TIPC services that use it. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
akefile
onfig.c
ore.c
ort.c
ort.h
ubscr.c
ser_reg.c
ser_reg.h
|
aa70200e001fc4d76552c974c94f65ab26020203 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate use of user registry by topology service Simplifies TIPC's network topology service so that it no longer registers its ports with the user registry, since the service doesn't take advantage of any of the registry's capabilities. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
7a488fd3d40a127d0d6057ecd2696f39e11e63c3 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate use of user registry by configuration service Simplifies TIPC's configuration service so that it no longer registers its port with the user registry, since the service doesn't take advantage of any of the registry's capabilities. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
|
8f92df6ad49da958d97e171762d0a97a3dc738f1 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove prototype code for supporting multiple clusters Eliminates routines, data structures, and files that were intended to allow TIPC to support a network containing multiple clusters. Currently, TIPC supports only networks consisting of a single cluster within a single zone, so this code is unnecessary. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
config
akefile
ddr.c
cast.c
cast.h
luster.c
luster.h
onfig.c
ore.c
ore.h
ame_distr.c
et.c
et.h
ode.c
ode.h
|
51a8e4dee7653698ba4c6e7de71053665f075273 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove prototype code for supporting inter-cluster routing Eliminates routines and data structures that were intended to allow TIPC to route messages to other clusters. Currently, TIPC supports only networks consisting of a single cluster within a single zone, so this code is unnecessary. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.h
luster.c
luster.h
ink.c
sg.h
et.c
et.h
ode.c
ode.h
|
08c80e9a031df0a8f0269477a32f5eae47d7a146 |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove prototype code for supporting slave nodes Simplifies routines and data structures that were intended to allow TIPC to support slave nodes (i.e. nodes that did not have links to all of the other nodes in its cluster, forcing TIPC to route messages that it could not deliver directly through a non-slave node). Currently, TIPC supports only networks containing non-slave nodes, so this code is unnecessary. Note: The latest edition of the TIPC 2.0 Specification has eliminated the concept of slave nodes entirely. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
ddr.h
luster.c
luster.h
onfig.c
ore.c
ore.h
iscover.c
sg.h
ode.c
ort.c
|
51f98a8d70583b18cb08b19353aeed5efb0244af |
31-Dec-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove prototype code for supporting multiple zones Eliminates routines, data structures, and files that were intended to allows TIPC to support a network containing multiple zones. Currently, TIPC supports only networks consisting of a single cluster within a single zone, so this code is unnecessary. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
config
akefile
ddr.c
luster.c
luster.h
onfig.c
ore.c
ore.h
et.c
et.h
ode.c
ode.h
one.c
one.h
|
b924dcf0038b8f83e65b44f679ad480d44f85aa6 |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Delete tipc_ownidentity() Moves the content of the native API routine tipc_ownidentity() into the sole routine that calls it, since it can no longer be called in isolation. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ort.h
ocket.c
|
12bae479ee414f45ad8fe93530f5b6ea241bde3f |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate obsolete native API forwarding routines Moves the content of each native API message forwarding routine into the sole routine that calls it, since the forwarding routines no longer be called in isolation. Also removes code in each routine that altered the outgoing message's importance level since this is now no longer possible. The previous function mapping (parent function, and child API) was as follows: tipc_send2name \--tipc_forward2name tipc_send2port \--tipc_forward2port tipc_send_buf2port \--tipc_forward_buf2port After this commit, the children don't exist and their functionality is completely in the respective parent. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ort.h
|
471450f7ec24ccd9ac24e6f05cd9358d40c09d03 |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate an unused symbolic constant in link code Removes a symbol that is not referenced anywhere by TIPC's link code. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
52fe7b725e0a1360d36c720ee87ab1e559df69db |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate useless initialization when creating subscriber Removes initialization of a local variable that is always assigned a different value before it is referenced. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
38f232eae20cefed2e2379d77c54babb0de6d024 |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove unused domain argument from multicast send routine Eliminates an unused argument from tipc_multicast(), now that this routine can no longer be called by kernel-based applications. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ort.h
ocket.c
|
a5c2af9922a94a875c5f4b2dcd357a1c399b7ea6 |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Remove support for TIPC mode change callback Eliminates support for the callback routine invoked when TIPC changes its mode of operation from inactive to standalone or from standalone to networked. This callback was part of TIPC's obsolete native API and is not used by TIPC internally. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ubscr.c
ser_reg.c
ser_reg.h
|
528c771e87c3fa661bc6983b5bf0ba464d9f7c3a |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Delete useless function prototypes Removes several function declarations that aren't used anywhere, either because they reference routines that no longer exist or because all users of the function reference it after it has already been defined. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.h
luster.c
ode.c
ort.h
|
28cc937eac00805e8b9c6e7ed7d590567378187f |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Eliminate useless return value when disabling a bearer Modifies bearer_disable() to return void since it always indicates success anyway. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
|
8d71919d7afc4ade0d9de09e1d50fbf9168c368d |
30-Nov-2010 |
Allan Stephens <Allan.Stephens@windriver.com> |
tipc: Delete unused configuration service structure definition Removes a structure definition that is no longer used by TIPC's configuration service. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
|
c80262829769419e19527f972672e8df0480235a |
30-Nov-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete inclusions of header files Gets rid of #include statements that are no longer required as a result of the merging of obsolete native API header file content into other TIPC include files. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
cast.c
earer.c
earer.h
luster.c
onfig.c
onfig.h
ore.c
iscover.c
iscover.h
ink.c
ink.h
sg.c
ame_distr.c
ame_table.c
et.c
ode.c
ode_subscr.c
ort.c
ort.h
ubscr.c
one.c
|
d265fef6ddf9042195aae551e1fde211c2a1588b |
30-Nov-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove obsolete native API files and exports As part of the removal of TIPC's native API support it is no longer necessary for TIPC to export symbols for routines that can be called by kernel-based applications, nor for it to have header files that kernel-based applications can include to access the declarations for those routines. This commit eliminates the exporting of symbols by TIPC and migrates the contents of each obsolete native API include file into its corresponding non-native API equivalent. The code which was migrated in this commit was migrated intact, in that there are no technical changes combined with the relocation. Signed-off-by: Allan Stephens <Allan.Stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.h
onfig.c
ore.c
ore.h
th_media.c
sg.h
ort.h
ocket.c
ubscr.c
ser_reg.h
|
88f8a5e3e7defccd3925cabb1ee4d3994e5cdb52 |
31-Oct-2010 |
Kulikov Vasiliy <segooon@gmail.com> |
net: tipc: fix information leak to userland Structure sockaddr_tipc is copied to userland with padding bytes after "id" field in union field "name" unitialized. It leads to leaking of contents of kernel stack memory. We have to initialize them to zero. Signed-off-by: Vasiliy Kulikov <segooon@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
2198a10b501fd4443430cb17e065a9e859cc58c9 |
21-Oct-2010 |
David S. Miller <davem@davemloft.net> |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/core/dev.c
|
a0e00369f1e1ff9142a20efe4785890e52b2e525 |
18-Oct-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: delete needless memset from bearer enabling. Eliminates zeroing out of the new bearer structure at the start of activation, since it is already in that state. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
|
db5a753bf198ef7a50e17d2ff358adf37efe8648 |
21-Oct-2010 |
Neil Horman <nhorman@tuxdriver.com> |
Revert d88dca79d3852a3623f606f781e013d61486828a TIPC needs to have its endianess issues fixed. Unfortunately, the format of a subscriber message is passed in directly from user space, so requiring this message to be in network byte order breaks user space ABI. Revert this change until such time as we can determine how to do this in a backwards compatible manner. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
ubscr.h
|
8c974438085d2c81b006daeaab8801eedbd19758 |
21-Oct-2010 |
Neil Horman <nhorman@tuxdriver.com> |
Revert c6537d6742985da1fbf12ae26cde6a096fd35b5c Backout the tipc changes to the flags int he subscription message. These changees, while reasonable on the surface, interefere with user space ABI compatibility which is a no-no. This was part of the changes to fix the endianess issues in the TIPC protocol, which would be really nice to do but we need to do so in a way that is backwards compatible with user space. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
ccc901ee58cfb090a31216a6eda0f1e9dfc572fa |
14-Oct-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Simplify bearer shutdown logic Optimize processing in TIPC's bearer shutdown code, including: 1. Remove an unnecessary check to see if TIPC bearer's can exist. 2. Don't release spinlocks before calling a media-specific disabling routine, since the routine can't sleep. 3. Make bearer_disable() operate directly on a struct bearer, instead of needlessly taking a name and then mapping that to the struct. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Reviewed-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
|
724829b3ad8e8aeb0aec46de383d35bfa1ad3875 |
18-Oct-2010 |
David S. Miller <davem@davemloft.net> |
tipc: Kill tipc_get_mode() completely. It's completely unused and exporting a static symbol makes no sense and breaks the build. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
31e3c3f6f1f9b154981a0e6620df700463db30ee |
13-Oct-2010 |
stephen hemminger <shemminger@vyatta.com> |
tipc: cleanup function namespace Do some cleanups of TIPC based on make namespacecheck 1. Don't export unused symbols 2. Eliminate dead code 3. Make functions and variables local 4. Rename buf_acquire to tipc_buf_acquire since it is used in several files Compile tested only. This make break out of tree kernel modules that depend on TIPC routines. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Jon Maloy <jon.maloy@ericsson.com> Acked-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
cast.c
cast.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
ink.c
ink.h
sg.c
ame_distr.c
ode.c
ode.h
ort.c
ort.h
ef.c
ef.h
ubscr.c
one.c
one.h
|
7368ddf144afd79456fd853fa25f33e31da003a9 |
12-Oct-2010 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: clean out all instances of #if 0'd unused code Remove all instances of legacy, or as yet to be implemented code that is currently living within an #if 0 ... #endif block. In the rare instance that some of it be needed in the future, it can still be dragged out of history, but there is no need for it to sit in mainline. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
iscover.c
iscover.h
ink.c
ink.h
ame_table.c
et.c
ode.c
ort.c
|
a02cec2155fbea457eca8881870fd2de1a4c4c76 |
22-Sep-2010 |
Eric Dumazet <eric.dumazet@gmail.com> |
net: return operator cleanup Change "return (EXPR);" to "return EXPR;" return is not a function, parentheses are not required. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
cast.c
earer.c
bg.c
ink.c
ink.h
sg.h
ame_table.c
ode.c
ort.h
ocket.c
ubscr.c
|
b2abd4c033c3965ce670841dfb401f5f166222d5 |
08-Sep-2010 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
tipc: Optimize handling excess content on incoming messages Remove code that trimmed excess trailing info from incoming messages arriving over an Ethernet interface. TIPC now ignores the extra info while the message is being processed by the node, and only trims it off if the message is retransmitted to another node. (This latter step is done to ensure the extra info doesn't cause the sk_buff to exceed the outgoing interface's MTU limit.) The outgoing buffer is guaranteed to be linear. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
et.c
|
d1fb62796cdac6899ebd4319e4a610684db063e9 |
03-Sep-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix misleading error code when enabling Ethernet bearers Cause TIPC to return EAGAIN if it is unable to enable a new Ethernet bearer because one or more recently disabled Ethernet bearers are temporarily consuming resources during shut down. (The previous error code, EDQUOT, is now returned only if all available Ethernet bearer data structures are fully enabled at the time the request to enable an additional bearer is received.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
9fbfca013176f9b90d186f3b446fd93e4d972b25 |
03-Sep-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Ensure outgoing messages on Ethernet have sufficient headroom Add code to expand the headroom of an outgoing TIPC message if the sk_buff has insufficient room to hold the header for the associated Ethernet device. This change is necessary to ensure that messages TIPC does not create itself (eg. incoming messages that are being routed to another node) do not cause problems, since TIPC has no control over the amount of headroom available in such messages. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
5d9c54c1e9ececcf7e99c4f014f9bec7ee3a7def |
03-Sep-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimizations to name table translation code Optimizes TIPC's name table translation code to avoid unnecessary manipulation of the node address field of the resulting port id when name translation fails. This change is possible because a valid port id cannot have a reference field of zero, so examining the reference only is sufficient to determine if the translation was successful. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
ort.c
|
5a68d5ee000bb784c4856391b4861739c8bbd341 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent missing name table entries when link flip-flops rapidly Ensure that TIPC does not re-establish communication with a neighboring node until it has finished updating all data structures containing information about that node to reflect the earlier loss of contact. Previously, it was possible for TIPC to perform its purge of name table entries relating to the node once contact had already been re-established, resulting in the unwanted removal of valid name table entries. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
ink.c
ode.c
ode.h
|
564e83b51a12b794e3f63a2d872398e1ee21616f |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Allow connect() to wait indefinitely Cause a socket whose TIPC_CONN_TIMEOUT option is zero to wait indefinitely for a response to a connection request using connect(). Previously, specifying a timeout of 0 ms resulted in an immediate timeout, which was inconsistent with the behavior specified by Posix for a socket's receive and send timeout. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
c2de58140a380172610b6a0f07f975abb2fbb311 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor enhancements to name table display format Eliminate printing of dashes after name table column headers (to adhere more closely to the standard format used in tipc-config), and simplify name table display logic using array lookups rather than if-then-else logic. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
76ae0d71d839b365faa7fdca0eec85a6d1a20d95 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize tipc_node_has_active_links() Eliminate unnecessary checking for null node pointer and redundant check of second active link array entry. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
|
96d841b7038b8091af3530a008793f5577337d3a |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove per-connection sequence number logic Remove validation of the per-connection sequence numbers on routable connections, since routable connections are not supported by TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
0048b826afae7c47afdc47c3854707581cafe3d8 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bug in broadcast link transmit statistics computation Modify TIPC's broadcast link so that it counts each piece of a fragmented message individually, rather than as treating the group as a single message. This ensures that proper correlation of sent and received traffic can be done when the broadcast link statistics are displayed, and is consistent with the way fragments are counted by TIPC's unicast links. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
5b1f7bdeb698547cc319c7a302a5acf585227a92 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix premature broadcast advertisement by sending node Prevent a TIPC node from sending out a LINK_STATE message advertising a broadcast message that it is in the process of sending, but has not yet actually sent. Previously, it was possible for a link timeout to occur in between the time the broadcast link updated its "last message sent" counter and the time the broadcast message was passed to the broadcast bearer for transmission. This ensures that the code which issues the LINK_STATE message isn't informed of the new message until the broadcast bearer has had a chance to send it. Note: The "last message sent" value is stored in the "fsm_msg_count" field of the link structure used by the broadcast link. Since the broadcast link doesn't utilize the normal link FSM, this field can be re-used rather than adding a new field to the broadcast link. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
7e3e5d0950559d1118dccbdff3c765fffcf04fd5 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent crash when broadcast link cannot send to all nodes Allow TIPC's broadcast link to continue operation when it is unable to send a message to all nodes in the cluster. Previously, the broadcast link attempted to put the broadcast pseudo-bearer into a blocked state; however, this caused a crash because the associated bearer structure is only partially initialized. Further investigation has revealed some conceptual problems with blocking the pseudo-bearer; consequently, this functionality has been disabled for the time being and the undelivered message is eventually resent by the broadcast link's existing message retransmission mechanism (if possible). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
b02b69c8a403859ec72090742727e853d606a325 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Check for disabled bearer when processing incoming messages Add a check to tipc_recv_msg() to ensure it discards messages arriving on a newly disabled bearer. This is needed to deal with a race condition that can arise if the bearer is in the midst of being disabled when it receives a message. Performing the check after tipc_net_lock has been taken ensures that TIPC's bearers are in a stable state while the message is being processed. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
f662c07058f7e6365ae65080d772f9122f6f50a9 |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: correct problems with misleading flags returned using poll() Prevent TIPC from incorrectly setting returned flags to poll() in the following cases: - an unconnected socket no longer indicates that it is always readable - an unconnected, connecting, or listening socket no longer indicates that it is always writable Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
35997e3157eba16c6124d440bdf9272087129b2a |
17-Aug-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Provide correct error code for unsupported connect() operation Modify TIPC to return EOPNOTSUPP if an application attempts to perform a non-blocking connect() operation, which is not supported by TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3720d40b201fe82dce1d8a64a31bfbf49c221771 |
17-Aug-2010 |
Florian Westphal <fw@strlen.de> |
tipc: add SO_RCVLOWAT support to stream socket receive path Add support for the SO_RCVLOWAT socket option to TIPC's stream socket type. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
f81380925209bc60732a57eef41ab440c056aacf |
17-Aug-2010 |
Anders Kaseorg <[andersk@ksplice.com]> |
tipc: Fix log buffer memory leak if initialization fails Moves log buffer cleanup into tipc_core_stop() so that memory allocated for the log buffer is freed if tipc_core_start() is unsuccessful. Signed-off-by: Anders Kaseorg <andersk@ksplice.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
23461e835b3537dd395828b090fb1cb64a198f85 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining tipc_msg_* routines Convert tipc_msg_* inline routines that are more than one line into standard functions, thereby eliminating some repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.c
sg.h
|
3032cca4d5cf885cacc78fae27ddf0c56dbf9963 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining buf_acquire routine Convert buf_acquire inline routine that is more than one line into a standard function, thereby eliminating some repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ore.h
|
b274f4ab8e674db1757371a21e7217e0766cb574 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining bearer congestion routine Convert bearer congestion inline routine that is more than one line into a standard function, thereby eliminating some repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
earer.h
|
43608edc2dbe83057544cf76b765ecdf63d59e8c |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining port list routines Converts port list inline routines that are more than one line into standard functions, thereby eliminating a significant amount of repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
cast.h
|
3e22e62b6204414cf31c414d5a91897e2b718135 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining nmap routines Converts nmap inline routines that are more than one line into standard functions, thereby eliminating a significant amount of repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
cast.h
|
80e0c33064bd71bd5791c79f28c59a1aee898993 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Reduce footprint by un-inlining address routines Convert address-related inline routines that are more than one line into standard functions, thereby eliminating a significant amount of repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
ddr.h
|
c68ca7b72017f8f52e7aed0d2a6ecfaede133b6b |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: add tipc_ prefix to fcns targeted for un-inlining These functions have enough code in them such that they seem like sensible targets for un-inlining. Prior to doing that, this adds the tipc_ prefix to the functions, so that in the event of a panic dump or similar, the subsystem from which the functions come from is immediately clear. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.h
cast.c
cast.h
earer.c
luster.c
iscover.c
ink.c
sg.h
ame_distr.c
ame_table.c
et.c
ode.c
ort.c
|
01fee256a675f6492fc6945bbb9b59640d8705d4 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Relocate trivial link status functions to header file Rather than live in link.c where they can only be used in that file alone, these helper routines are better served by being in link.h Relocated are the following: link_working_working link_working_unknown link_reset_unknown link_reset_reset link_blocked link_congested Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
ink.c
ink.h
|
15e979da7c9ddddd55d2eb81e962dbb2aac51ad1 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: remove abstraction for link_max_pkt This is just a straight return of a field; there is no value in the abstraction of hiding it behind a function. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
107e7be628821dcb78c43adce0331e8ddb40eabd |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add support for "-s" configuration option Provide initial support for displaying overall TIPC status/statistics information at runtime. Currently, only version info for the TIPC kernel module is displayed. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ore.c
ore.h
|
3aec9cc936217a30dbb45a9b6808a39571674e66 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Rename "multicast-link" to "broadcast-link" Make a cosmetic change to the name displayed for the broadcast link, to better reflect its true nature. Since TIPC utilizes this link to distribute name table information, in addition to multicast messages sent by user applications, the prior name "multicast-link" is no longer appropriate. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
9ccc2eb4e12a39bd8430952b76c56c6267018500 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate unnecessary initialization in native API send routines Eliminate a couple of instances where TIPC's native API send routines were doing pointless initialization of local variables. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
289464e4fc2ebdef20be5f6b58414136f75107e2 |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prune unused data structures from configuration service Eliminate some unused data structures in the TIPC configuration service that relate to the handling of link subscriptions, which were not supported when TIPC 1.5 was introduced. If and when support for link subscriptions is offered in TIPC, these elements may need to be re-introduced. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
|
b82834e66aabb6e26c2b792a46d44bab346c46fb |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate unused argument in print statement Eliminate an argument in a print statement that has no corresponding format specification. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
df4ef33716232077564024baf0e5f2c74a295dfd |
11-May-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate obsolete port's "congested_link" field Eliminate a field of the TIPC port structure that is populated, but never referenced. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ort.c
ort.h
|
aa395145165cb06a0d0885221bbe0ce4a564391d |
20-Apr-2010 |
Eric Dumazet <eric.dumazet@gmail.com> |
net: sk_sleep() helper Define a new function to return the waitqueue of a "struct sock". static inline wait_queue_head_t *sk_sleep(struct sock *sk) { return sk->sk_sleep; } Change all read occurrences of sk_sleep by a call to this function. Needed for a future RCU conversion. sk_sleep wont be a field directly available. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
871039f02f8ec4ab2e5e9010718caa8e085786f1 |
11-Apr-2010 |
David S. Miller <davem@davemloft.net> |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/stmmac/stmmac_main.c drivers/net/wireless/wl12xx/wl1271_cmd.c drivers/net/wireless/wl12xx/wl1271_main.c drivers/net/wireless/wl12xx/wl1271_spi.c net/core/ethtool.c net/mac80211/scan.c
|
c6537d6742985da1fbf12ae26cde6a096fd35b5c |
06-Apr-2010 |
Jon Paul Maloy <jon.maloy@ericsson.com> |
TIPC: Updated topology subscription protocol according to latest spec This patch makes it explicit in the API that all fields in subscriptions and events exchanged with the Topology Server must be in network byte order. It also ensures that all fields of a subscription are compared when cancelling a subscription, in order to avoid inadvertent cancelling of the wrong subscription. Finally, the tipc module version is updated to 2.0.0, to reflect the API change. Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ubscr.c
|
8379d07031e59a5d72bc73a6060c4d63aac956ce |
30-Mar-2010 |
Hagen Paul Pfeifer <hagen@jauu.net> |
tipc: define needless global scoped variable static struct _zone *tipc_zones has local scope level and should defined with the correct scoping. CC: Per Liden <per.liden@nospam.ericsson.com> Signed-off-by: Hagen Paul Pfeifer <hagen@jauu.net> Signed-off-by: David S. Miller <davem@davemloft.net>
et.c
|
5a0e3ad6af8660be21ca98a971cd00f331318c05 |
24-Mar-2010 |
Tejun Heo <tj@kernel.org> |
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: Tejun Heo <tj@kernel.org> Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
ore.h
th_media.c
ocket.c
|
a570f095eac34b7439eed2df6728381708c55bdc |
24-Mar-2010 |
Frans Pop <elendil@planet.nl> |
tipc: remove trailing space in messages Signed-off-by: Frans Pop <elendil@planet.nl> Cc: Per Liden <per.liden@ericsson.com> Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
et.c
ode.c
|
ca50910185fcce694af0cc194de50d2374a7c7ef |
15-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: Allow retransmission of cloned buffers Forward port commit fc477e160af086f6e30c3d4fdf5f5c000d29beb5 from git://tipc.cslab.ericsson.net/pub/git/people/allan/tipc.git Origional commit message: Allow retransmission of cloned buffers This patch fixes an issue with TIPC's message retransmission logic that prevented retransmission of clone sk_buffs. Originally intended as a means of avoiding wasted work in retransmitting messages that were still on the driver's outbound queue, it also prevented TIPC from retransmitting messages through other means -- such as the secondary bearer of the broadcast link, or another interface in a set of bonded interfaces. This fix removes existing checks for cloned sk_buffs that prevented such retransmission. Origionally-Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
1a624832a06b465d0e5651901bcbc3680c78d374 |
15-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: Increase frequency of load distribution over broadcast link Forward port commit 29eb572941501c40ac6e62dbc5043bf9ee76ee56 from git://tipc.cslab.ericsson.net/pub/git/people/allan/tipc.git Origional commit message: Increase frequency of load distribution over broadcast link This patch enhances the behavior of TIPC's broadcast link so that it alternates between redundant bearers (if available) after every message sent, rather than after every 10 messages. This change helps to speed up delivery of retransmitted messages by ensuring that they are not sent repeatedly over a bearer that is no longer working, but not yet recognized as failed. Tested by myself in the latest net-2.6 tree using the tipc sanity test suite Origionally-signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Neil Horman <nhorman@tuxdriver.com> bcast.c | 35 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 21 deletions(-) Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
a2f46ee1ba5ee249ce2ca1ee7a7a0ac46529fb4f |
16-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: fix lockdep warning on address assignment So in the forward porting of various tipc packages, I was constantly getting this lockdep warning everytime I used tipc-config to set a network address for the protocol: [ INFO: possible circular locking dependency detected ] 2.6.33 #1 tipc-config/1326 is trying to acquire lock: (ref_table_lock){+.-...}, at: [<ffffffffa0315148>] tipc_ref_discard+0x53/0xd4 [tipc] but task is already holding lock: (&(&entry->lock)->rlock#2){+.-...}, at: [<ffffffffa03150d5>] tipc_ref_lock+0x43/0x63 [tipc] which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&(&entry->lock)->rlock#2){+.-...}: [<ffffffff8107b508>] __lock_acquire+0xb67/0xd0f [<ffffffff8107b78c>] lock_acquire+0xdc/0x102 [<ffffffff8145471e>] _raw_spin_lock_bh+0x3b/0x6e [<ffffffffa03152b1>] tipc_ref_acquire+0xe8/0x11b [tipc] [<ffffffffa031433f>] tipc_createport_raw+0x78/0x1b9 [tipc] [<ffffffffa031450b>] tipc_createport+0x8b/0x125 [tipc] [<ffffffffa030f221>] tipc_subscr_start+0xce/0x126 [tipc] [<ffffffffa0308fb2>] process_signal_queue+0x47/0x7d [tipc] [<ffffffff81053e0c>] tasklet_action+0x8c/0xf4 [<ffffffff81054bd8>] __do_softirq+0xf8/0x1cd [<ffffffff8100aadc>] call_softirq+0x1c/0x30 [<ffffffff810549f4>] _local_bh_enable_ip+0xb8/0xd7 [<ffffffff81054a21>] local_bh_enable_ip+0xe/0x10 [<ffffffff81454d31>] _raw_spin_unlock_bh+0x34/0x39 [<ffffffffa0308eb8>] spin_unlock_bh.clone.0+0x15/0x17 [tipc] [<ffffffffa0308f47>] tipc_k_signal+0x8d/0xb1 [tipc] [<ffffffffa0308dd9>] tipc_core_start+0x8a/0xad [tipc] [<ffffffffa01b1087>] 0xffffffffa01b1087 [<ffffffff8100207d>] do_one_initcall+0x72/0x18a [<ffffffff810872fb>] sys_init_module+0xd8/0x23a [<ffffffff81009b42>] system_call_fastpath+0x16/0x1b -> #0 (ref_table_lock){+.-...}: [<ffffffff8107b3b2>] __lock_acquire+0xa11/0xd0f [<ffffffff8107b78c>] lock_acquire+0xdc/0x102 [<ffffffff81454836>] _raw_write_lock_bh+0x3b/0x6e [<ffffffffa0315148>] tipc_ref_discard+0x53/0xd4 [tipc] [<ffffffffa03141ee>] tipc_deleteport+0x40/0x119 [tipc] [<ffffffffa0316e35>] release+0xeb/0x137 [tipc] [<ffffffff8139dbf4>] sock_release+0x1f/0x6f [<ffffffff8139dc6b>] sock_close+0x27/0x2b [<ffffffff811116f6>] __fput+0x12a/0x1df [<ffffffff811117c5>] fput+0x1a/0x1c [<ffffffff8110e49b>] filp_close+0x68/0x72 [<ffffffff8110e552>] sys_close+0xad/0xe7 [<ffffffff81009b42>] system_call_fastpath+0x16/0x1b Finally decided I should fix this. Its a straightforward inversion, tipc_ref_acquire takes two locks in this order: ref_table_lock entry->lock while tipc_deleteport takes them in this order: entry->lock (via tipc_port_lock()) ref_table_lock (via tipc_ref_discard()) when the same entry is referenced, we get the above warning. The fix is equally straightforward. Theres no real relation between the entry->lock and the ref_table_lock (they just are needed at the same time), so move the entry->lock aquisition in tipc_ref_acquire down, after we unlock ref_table_lock (this is safe since the ref_table_lock guards changes to the reference table, and we've already claimed a slot there. I've tested the below fix and confirmed that it clears up the lockdep issue Signed-off-by: Neil Horman <nhorman@tuxdriver.com> CC: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ef.c
|
de5865714621e23d65c52955ca2125dbb074c242 |
08-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: filter out messages not intended for this host Port commit 20deb48d16fdd07ce2fdc8d03ea317362217e085 from git://tipc.cslab.ericsson.net/pub/git/people/allan/tipc.git Part of the large effort I'm trying to help with getting all the downstreamed code from windriver forward ported to the upstream tree Origional commit message Restore check to filter out inadverdently received messages This patch reimplements a check that allows TIPC to discard messages that are not intended for it. This check was present in TIPC 1.5/1.6, but was removed by accident during the development of TIPC 1.7; it has now been updated to account for new features present in TIPC 1.7 and reinserted into TIPC. The main benefit of this check is to filter out messages arriving from orphaned link endpoints, which can arise when a node exits the network and then re-enters it with a different TIPC network address (i.e. <Z.C.N> value). Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Origionally-authored-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
d88dca79d3852a3623f606f781e013d61486828a |
08-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: fix endianness on tipc subscriber messages Remove htohl implementation from tipc I was working on forward porting the downstream commits for TIPC and ran accross this one: http://tipc.cslab.ericsson.net/cgi-bin/gitweb.cgi?p=people/allan/tipc.git;a=commitdiff;h=894279b9437b63cbb02405ad5b8e033b51e4e31e I was going to just take it, when I looked closer and noted what it was doing. This is basically a routine to byte swap fields of data in sent/received packets for tipc, dependent upon the receivers guessed endianness of the peer when a connection is established. Asside from just seeming silly to me, it appears to violate the latest RFC draft for tipc: http://tipc.sourceforge.net/doc/draft-spec-tipc-02.txt Which, according to section 4.2 and 4.3.3, requires that all fields of all commands be sent in network byte order. So instead of just taking this patch, instead I'm removing the htohl function and replacing the calls with calls to ntohl in the rx path and htonl in the send path. As part of this fix, I'm also changing the subscr_cancel function, which searches the list of subscribers, using a memcmp of the entire subscriber list, for the entry to tear down. unfortunately it memcmps the entire tipc_subscr structure which has several bits that are private to the local side, so nothing will ever match. section 5.2 of the draft spec indicates the <type,upper,lower> tuple should uniquely identify a subscriber, so convert subscr_cancel to just match on those fields (properly endian swapped). I've tested this using the tipc test suite, and its passed without issue. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
ubscr.h
|
a3a858ff18a72a8d388e31ab0d98f7e944841a62 |
04-Mar-2010 |
Zhu Yi <yi.zhu@intel.com> |
net: backlog functions rename sk_add_backlog -> __sk_add_backlog sk_add_backlog_limited -> sk_add_backlog Signed-off-by: Zhu Yi <yi.zhu@intel.com> Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
53eecb1be5ae499d399d2923933937a9ea1a284f |
04-Mar-2010 |
Zhu Yi <yi.zhu@intel.com> |
tipc: use limited socket backlog Make tipc adapt to the limited socket backlog change. Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Acked-by: Eric Dumazet <eric.dumazet@gmail.com> Acked-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
d0021b252eaf65ca07ed14f0d66425dd9ccab9a6 |
03-Mar-2010 |
Neil Horman <nhorman@tuxdriver.com> |
tipc: Fix oops on send prior to entering networked mode (v3) Fix TIPC to disallow sending to remote addresses prior to entering NET_MODE user programs can oops the kernel by sending datagrams via AF_TIPC prior to entering networked mode. The following backtrace has been observed: ID: 13459 TASK: ffff810014640040 CPU: 0 COMMAND: "tipc-client" [exception RIP: tipc_node_select_next_hop+90] RIP: ffffffff8869d3c3 RSP: ffff81002d9a5ab8 RFLAGS: 00010202 RAX: 0000000000000001 RBX: 0000000000000001 RCX: 0000000000000001 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000001001001 RBP: 0000000001001001 R8: 0074736575716552 R9: 0000000000000000 R10: ffff81003fbd0680 R11: 00000000000000c8 R12: 0000000000000008 R13: 0000000000000001 R14: 0000000000000001 R15: ffff810015c6ca00 ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 RIP: 0000003cbd8d49a3 RSP: 00007fffc84e0be8 RFLAGS: 00010206 RAX: 000000000000002c RBX: ffffffff8005d116 RCX: 0000000000000000 RDX: 0000000000000008 RSI: 00007fffc84e0c00 RDI: 0000000000000003 RBP: 0000000000000000 R8: 00007fffc84e0c10 R9: 0000000000000010 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fffc84e0d10 R14: 0000000000000000 R15: 00007fffc84e0c30 ORIG_RAX: 000000000000002c CS: 0033 SS: 002b What happens is that, when the tipc module in inserted it enters a standalone node mode in which communication to its own address is allowed <0.0.0> but not to other addresses, since the appropriate data structures have not been allocated yet (specifically the tipc_net pointer). There is nothing stopping a client from trying to send such a message however, and if that happens, we attempt to dereference tipc_net.zones while the pointer is still NULL, and explode. The fix is pretty straightforward. Since these oopses all arise from the dereference of global pointers prior to their assignment to allocated values, and since these allocations are small (about 2k total), lets convert these pointers to static arrays of the appropriate size. All the accesses to these bits consider 0/NULL to be a non match when searching, so all the lookups still work properly, and there is no longer a chance of a bad dererence anywhere. As a bonus, this lets us eliminate the setup/teardown routines for those pointers, and elimnates the need to preform any locking around them to prevent access while their being allocated/freed. I've updated the tipc_net structure to behave this way to fix the exact reported problem, and also fixed up the tipc_bearers and media_list arrays to fix an obvious simmilar problem that arises from issuing tipc-config commands to manipulate bearers/links prior to entering networked mode I've tested this for a few hours by running the sanity tests and stress test with the tipcutils suite, and nothing has fallen over. There have been a few lockdep warnings, but those were there before, and can be addressed later, as they didn't actually result in any deadlock. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> CC: Allan Stephens <allan.stephens@windriver.com> CC: David S. Miller <davem@davemloft.net> CC: tipc-discussion@lists.sourceforge.net bearer.c | 37 ++++++------------------------------- bearer.h | 2 +- net.c | 25 ++++--------------------- 3 files changed, 11 insertions(+), 53 deletions(-) Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
earer.h
et.c
|
7981d6f6b280d28779343cff4a88029fe53d1b47 |
19-Jan-2010 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Clean up configuration file This patch addresses a number of minor (mostly cosmetic) issues relating to the configuration of TIPC, including the following: - Corrects range limits for maximum number of ports per node - Adds missing range limits for size of log buffer - Removes configuration setting relating to unsupported slave node capability - Standardizes description and help text wording for configuration settings - Removes unneeded blank spaces Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
config
|
ee983ac76865797a5553597a9412c835c2710f51 |
24-Dec-2009 |
Amerigo Wang <amwang@redhat.com> |
tipc: use kconfig to limit numeric ranges We can rely on kconfig to limit these numbers, no need to limit them at compile time/run time. Users who modify these numbers manually should be responsible for themself. :) Signed-off-by: WANG Cong <amwang@redhat.com> Cc: Per Liden <per.liden@ericsson.com> Cc: Jon Maloy <jon.maloy@ericsson.com> Cc: Allan Stephens <allan.stephens@windriver.com> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: David S. Miller <davem@davemloft.net>
config
ore.c
|
f64f9e719261a87818dd192a3a2352e5b20fbd0f |
30-Nov-2009 |
Joe Perches <joe@perches.com> |
net: Move && and || to end of previous line Not including net/atm/ Compiled tested x86 allyesconfig only Added a > 80 column line or two, which I ignored. Existing checkpatch plaints willfully, cheerfully ignored. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
luster.c
ink.c
ocket.c
ubscr.c
|
09ad9bc752519cc167d0a573e1acf69b5c707c67 |
26-Nov-2009 |
Octavian Purdila <opurdila@ixiacom.com> |
net: use net_eq to compare nets Generated with the following semantic patch @@ struct net *n1; struct net *n2; @@ - n1 == n2 + net_eq(n1, n2) @@ struct net *n1; struct net *n2; @@ - n1 != n2 + !net_eq(n1, n2) applied over {include,net,drivers/net}. Signed-off-by: Octavian Purdila <opurdila@ixiacom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3f378b684453f2a028eda463ce383370545d9cc9 |
06-Nov-2009 |
Eric Paris <eparis@redhat.com> |
net: pass kern to net_proto_family create function The generic __sock_create function has a kern argument which allows the security system to make decisions based on if a socket is being created by the kernel or by userspace. This patch passes that flag to the net_proto_family specific create function, so it can do the same thing. Signed-off-by: Eric Paris <eparis@redhat.com> Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
b7058842c940ad2c08dd829b21e5c92ebe3b8758 |
01-Oct-2009 |
David S. Miller <davem@davemloft.net> |
net: Make setsockopt() optlen be unsigned. This provides safety against negative optlen at the type level instead of depending upon (sometimes non-trivial) checks against this sprinkled all over the the place, in each and every implementation. Based upon work done by Arjan van de Ven and feedback from Linus Torvalds. Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
b3df9a514f3c2020952cff34bc5bc6694a31c00c |
27-Aug-2009 |
roel kluin <roel.kluin@gmail.com> |
tipc: fix test of bearer_priority range in tipc_register_media() For the bearer_priority to be less than TIPC_MIN_LINK_PRI and greater than TIPC_MAX_LINK_PRI is logically impossible. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
|
134e63756d5f3d0f7604dfcca847b09d1b14fd66 |
10-Jul-2009 |
Johannes Berg <johannes@sipsolutions.net> |
genetlink: make netns aware This makes generic netlink network namespace aware. No generic netlink families except for the controller family are made namespace aware, they need to be checked one by one and then set the family->netnsok member to true. A new function genlmsg_multicast_netns() is introduced to allow sending a multicast message in a given namespace, for example when it applies to an object that lives in that namespace, a new function genlmsg_multicast_allns() to send a message to all network namespaces (for objects that do not have an associated netns). The function genlmsg_multicast() is changed to multicast the message in just init_net, which is currently correct for all generic netlink families since they only work in init_net right now. Some will later want to work in all net namespaces because they do not care about the netns at all -- those will have to be converted to use one of the new functions genlmsg_multicast_allns() or genlmsg_multicast_netns() whenever they are made netns aware in some way. After this patch families can easily decide whether or not they should be available in all net namespaces. Many genl families us it for objects not related to networking and should therefore be available in all namespaces, but that will have to be done on a per family basis. Note that this doesn't touch on the checkpoint/restart problem where network namespaces could be used, genl families and multicast groups are numbered globally and I see no easy way of changing that, especially since it must be possible to multicast to all network namespaces for those families that do not care about netns. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
6650613d3387dcc30685e2781818ea7d0f840027 |
30-Jun-2009 |
oscar.medina@motorola.com <oscar.medina@motorola.com> |
tipc: Add socket options to get number of queued messages This patch allows a TIPC application to determine the number of messages currently waiting in a socket's receive queue (TIPC_SOCK_RECVQ_DEPTH) or in all TIPC socket receive queues (TIPC_NODE_RECVQ_DEPTH). Signed-off-by: Oscar Medina <oscar.medina@motorola.com> Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
acb0a200ae48d95e3117608d0225a23e5efa283c |
21-May-2009 |
Michał Mirosław <mirq-linux@rere.qmqm.pl> |
tipc: Use genl_register_family_with_ops() Use genl_register_family_with_ops() instead of a copy. This also changes netlink related variable names to be kernel-wide unique for consistency with other users. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
3a6d54c56326c29c5357655779cfe6cf36481b17 |
12-May-2009 |
Jiri Pirko <jpirko@redhat.com> |
net: remove needless (now buggy) & from dev->dev_addr Patch fixes issues with dev->dev_addr changing from array to pointer. Hopefully there are no others. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
4b704d59d6fb152bcd0883b84af5936a29067f12 |
19-Mar-2009 |
Stephen Hemminger <shemminger@vyatta.com> |
tipc: fix non-const printf format arguments Fix warnings from current gcc about using non-const strings as printf args in TIPC. Compile tested only (not a TIPC user). Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
cast.h
bg.c
ode.c
|
6c614a50206ee56c21b34cc02d0bd40e756db87e |
09-Jan-2009 |
Julia Lawall <julia@diku.dk> |
net/tipc/bcast.h: use ARRAY_SIZE ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @i@ @@ #include <linux/kernel.h> @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.h
|
f574179b63e48f5285468b5ee40f3c480221f708 |
08-Nov-2008 |
Harvey Harrison <harvey.harrison@gmail.com> |
tipc: trivial endian annotation in debug statement Use htonl rather than ntohl on a u32. net/tipc/name_table.c:557:2: warning: cast to restricted __be32 Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
e174961ca1a0b28f7abf0be47973ad57cb74e5f0 |
27-Oct-2008 |
Johannes Berg <johannes@sipsolutions.net> |
net: convert print_mac to %pM This converts pretty much everything to print_mac. There were a few things that had conflicts which I have just dropped for now, no harm done. I've built an allyesconfig with this and looked at the files that weren't built very carefully, but it's a huge patch. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
6c00055a819ce8a6e2c3af2f65d4ea1a8559c491 |
03-Sep-2008 |
David S. Miller <davem@davemloft.net> |
tipc: Don't use structure names which easily globally conflict. Andrew Morton reported a build failure on sparc32, because TIPC uses names like "struct node" and there is a like named data structure defined in linux/node.h This just regexp replaces "struct node*" to "struct tipc_node*" to avoid this and any future similar problems. Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
iscover.c
ink.c
ink.h
ame_table.h
et.c
et.h
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.h
one.c
one.h
|
6ced0b3f1e1c089caf8798485423a093744b6a48 |
13-Aug-2008 |
Andrew Morton <akpm@linux-foundation.org> |
net/tipc/subscr.c: don't use ___constant_swab32 It's an internal implementation detail which we _should_ be free to change. So we did, and it promptly broke. The compiler shold be able to work out when to use the __constant version anyway. Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
721499e8931c5732202481ae24f2dfbf9910f129 |
20-Jul-2008 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
netns: Use net_eq() to compare net-namespaces for optimization. Without CONFIG_NET_NS, namespace is always &init_net. Compiler will be able to omit namespace comparisons with this patch. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
968edbe1c82f1a50d80225ed7e410aba419e55bf |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimization to multicast name lookup algorithm This patch simplifies and speeds up TIPC's algorithm for identifying on-node and off-node destinations that overlap a multicast name sequence range. Rather than traversing the list of all known name publications within the cluster, it now traverses the (potentially much shorter) list of name publications made by the node itself, and determines if any off-node destinations exist by comparing the sizes of the two lists. (Since the node list must be a subset of the cluster list, a difference in sizes means that at least one off-node destination must exist.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
1aad72d6cd518872c5f545320823bf7f4dafb026 |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add missing locks when inspecting node list & link list This patch ensures that TIPC configuration commands that display info about neighboring nodes and their links take the spinlocks that protect the node list and link lists from changing while the lists are being traversed. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
|
08d2cf0f74b3ee5e773bb906043a0efe96ded229 |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bug in scope checking for multicast messages This patch ensures that TIPC's multicast message name lookup algorithm does individualized scope checking for each published name it examines. Previously, scope checking was only done for the first name in a name table publication list, which could result in incoming multicast messages being delivered to ports publishing names with "node" scope, or not being delivered to ports publishing names with "cluster" or "zone" scope. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
0e35fd5e5264bb46d1febbe9cd9aa08421c21a96 |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Eliminate improper use of TIPC_OK error code This patch corrects many places where TIPC routines indicated successful completion by returning TIPC_OK instead of 0. (The TIPC_OK symbol has the value 0, but it should only be used in contexts that deal with the error code field of a TIPC message header.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
luster.c
th_media.c
ink.c
et.c
ort.c
ef.c
ser_reg.c
|
2da59918e26837f305131cfac9c0f1b3b42bb8ae |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix race condition that could cause accept() to fail This patch ensurs that accept() returns successfully even when the newly created socket is immediately disconnected by its peer. Previously, accept() would fail if it was unable to pass back the optional address info for the socket's peer before the socket became disconnected; TIPC now allows accept() to gather peer address information after disconnection. As a bonus, the revised code accesses the socket's port more efficiently, without the overhead incurred by a reference table lookup. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
8642bd9e04f51980b2b6293c66acf7e388c9a6e7 |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize pointer dereferencing when receiving stream data This patch eliminates an unnecessary pointer dereference when accessing a stream-based socket's receive queue. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
0ea522416b658dedfc9d565b331624a55a6260ad |
15-Jul-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Remove unneeded parameter to tipc_createport_raw() This patch eliminates an unneeded parameter when creating a low-level TIPC port object. Instead of returning both the pointer to the port structure and the port's reference ID, it now returns only the pointer since the port structure contains the reference ID as one of its fields. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ocket.c
|
40aecb1b13f50d96616abb612c17e59457f54263 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Message rejection rework preparatory changes This patch defines a few new message header manipulation routines, and generalizes the usefulness of another, in preparation for upcoming rework of TIPC's message rejection code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
iscover.c
sg.h
|
99c145939bc1f65f9b946f2b9dd7bfc1f44783d6 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bugs in rejection of message with short header This patch ensures that TIPC doesn't try to access non-existent message header fields when rejecting a message with a short header. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
9bef54383d16568da19cfe46bdc52cdedb9bb8da |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Message header creation optimizations This patch eliminates several cases where message header fields were being set to the same value twice. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
bd7845337b105e090dd18912d511139945fa7586 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Expand link sequence gap field to 13 bits This patch increases the "sequence gap" field of the LINK_PROTOCOL message header from 8 bits to 13 bits (utilizing 5 previously unused 0 bits). This ensures that the field is big enough to indicate the loss of up to 8191 consecutive messages on the link, thereby accommodating the current worst-case scenario of 4000 lost messages. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.h
|
307fdf5e7defcacf84db21cda18770b2bf5f5196 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add missing spinlock in name table display code This patch ensures that the display code that traverses the publication lists belonging to a name table entry take its associated spinlock, to protect against a possible change to one of its "head of list" pointers caused by a simultaneous name table lookup operation by another thread of control. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
0f15d36453bbd02d404445dace49f4ae072f44e5 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent display of name table types with no publications This patch adds a check to prevent TIPC's name table display code from listing a name type entry if it exists only to hold subscription info, rather than published names. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
757152175666681d54d370500e41a756cfedd4fc |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize message initialization routine This patch eliminates the rarely-used "error code" argument when initializing a TIPC message header, since the default value of zero is the desired result in most cases; the few exceptional cases now set the error code explicitly. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
luster.c
iscover.c
ink.c
sg.h
ame_distr.c
ort.c
|
9c396a7bfb4fe74e444be09069651280da520944 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent access of non-existent field in short message header This patch eliminates a case where TIPC's link code could try reading a field that is not present in a short message header. (The random value obtained was not being used, but the read operation could result in an invalid memory access exception in extremely rare circumstances.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
1265a02108c508b508112cdeac922aad03e0146a |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Minor optimizations to received message processing This patch enhances TIPC's handler for incoming messages in two ways: - the trivial, single-use routine for processing non-sequenced messages has been merged into the main handler - the interface that received a message is now identified without having to access and/or modify the associated sk_buff Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
iscover.h
ink.c
|
a686e6859e976712e28f6af927cd52a6a3bb372a |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix minor bugs in link session number handling This patch introduces a new, out-of-range value to indicate that a link endpoint does not have an existing session established with its peer, eliminating the risk that the previously used "invalid session number" value (i.e. zero) might eventually be assigned as a valid session number and cause incorrect link behavior. The patch also introduces explicit bit masking when assigning a new link session number to ensure it does not exceed 16 bits. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
e0d4e3d0d72cfae7b7eac14e39e12dfc6b406313 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bugs in message error code display when debugging This patch corrects two problems in the display of error code information in TIPC messages when debugging: - no longer tries to display error code in NAME_DISTRIBUTOR messages, which don't have the error field - now displays error code in 24 byte data messages, which do have the error field Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.c
|
5307e46957e76d71f02d2d736030ad92cdb3dd8c |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Standardize error checking on incoming messages via native API This patch re-orders & re-groups the error checks performed on messages being delivered to native API ports, in order to clarify the similarities and differences required for the various message types. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
84b07c1638c36ae937d4930b467001a0d22904e5 |
05-Jun-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bug in connection setup via native API This patch fixes a bug that prevented TIPC from receiving a connection setup request message on a native TIPC port. The revised connection setup logic ensures that validation of the source of a connection-based message is skipped if the port is not yet connected to a peer. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
03194379a77b02df3404ec4848a50c6784e9a8a5 |
21-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix initialization sequence problems when entering network mode This patch ensures that TIPC's topology service and configuration service are shut down before switching into "network mode". This ensures that TIPC does not mistakenly try to send unnecessary "publication withdraw" messages to other nodes before it is fully initialized for sending off-node messages. Note that the node's current network address is now updated only after the two services are shut down; this ensures that any existing connections to the topology server are terminated correctly using the old address. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ore.c
ore.h
et.c
et.h
|
6d4a6672c8263f98544d2b91690dc7074b144090 |
21-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update "previous node" indicators when node address changes This patch ensures that the "previous node" field in any existing TIPC port message header templates is updated properly when a TIPC network address is assigned to the node. (Previously, only the "originating node" field was updated.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
811102ca23dfdde5ee8b782b3a4bbff44c499cb2 |
21-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Optimize null pointer check during neighbor discovery This patch optimizes TIPC neighbor discovery code to avoid testing for a null node pointer when the pointer is already known to be non-null. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
|
2ecb0924d7791372a70ef8f1174e37b329b955c3 |
21-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Prevent node object duplication due to simultaneous discovery This patch ensures that the simultaneous discovery of the same neighboring node by multiple interfaces does not cause TIPC to add the node into its internal data structures more than once. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
|
59f0c4523fdea865fab7d69d878269992a9d08dd |
21-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix skb_under_panic when configuring TIPC without privileges This patch prevents a TIPC configuration command requiring network administrator privileges from triggering an skbuff underrun if it is issued by a process lacking those privileges. The revised error handling code avoids the use of a potentially uninitialized global variable by transforming the unauthorized command into a new command, then following the standard command processing path to generate the required error message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
etlink.c
|
5b06c85c3b96fa8db632f1ee94f99a2bd0215f3a |
19-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Cosmetic cleanup of topology service code This patch contains a set of cosmetic changes to TIPC's network topology service subsystem, including: - updates to comments (including copyright dates) - re-ordering structure fields to group them more logically - removal of optional debugging code that is no longer required - minor changes to whitespace to conform to Linux coding conventions Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
ubscr.h
|
28353e7fad1d224687220a448950dc552645a50a |
19-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Consolidate subscriber & subscriber port references This patch modifies TIPC's network topology service so that it only requires a single reference table entry per subscriber connection, rather than two. This is achieved by letting the reference to the server port communicating with the subscriber act as the reference to the subscriber object itself. (Since the subscriber cannot exist without its port, and vice versa, this dual role for the reference is perfectly natural.) This consolidation reduces the size of the reference table by 50% in the default configuration. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ubscr.c
ubscr.h
|
fc5ad582709ce9c7b9ab7b70c1e5b5e2cfc384db |
19-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix bug in topology server byte swapping routine This patch fixes TIPC's topology server so that it does byte swapping correctly when endianness conversion is required. (Note: This bug only impacted an application if it issues a subscription request to a topology server on another node, rather than the server on it's own node; since the topology server is normally not accessible by off-node applications, most TIPC applications were not impacted by the bug.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
8e9501f5188d90eed737240453c32cad01849c96 |
19-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add support for customized subscription endianness This patch enables TIPC's topology server code to do customized endianness conversions on a per-subscription basis. (This capability is needed to support the upcoming consolidation of subscriber and subscription object references.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
ubscr.h
|
e15f880409c807bb589e9492263564e80f0de6e9 |
19-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Add support for customized subscription overlap handling This patch enables TIPC's topology server code to do customized overlap detection handling on a per-subscription basis. (This capability is needed to support the upcoming introduction of multi-cluster TIPC networks.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
ubscr.h
|
63fe46da9c380b3f2bbdf3765044649517cc717c |
15-May-2008 |
David S. Miller <davem@davemloft.net> |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-4965-rs.c drivers/net/wireless/rt2x00/rt61pci.c
|
7ef43ebaa538e0cc9063cbf84593a05091bcace2 |
13-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix race condition when creating socket or native port This patch eliminates the (very remote) chance of a crash resulting from a partially initialized socket or native port unexpectedly receiving a message. Now, during the creation of a socket or native port, the underlying generic port's lock is not released until all initialization required to handle incoming messages has been done. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ef.c
ocket.c
ubscr.c
|
4e3e6dcb43c3669a8817cb3d0f920f91661afd98 |
13-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Enhancements to name table initialization This patch enhances the initialization of TIPC's name table by removing a pointless spinlock operation, and by using kcalloc() to detect requests for an oversized name table. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
f08269d3ecbb9300aeeb2d4272580f660afe9db9 |
09-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Increase buffer header to support worst-case device This patch increases the headroom TIPC reserves in each sk_buff to accommodate the largest possible link level device header. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
a7ca0268b5dfffcaa8a1fe40c6eccdeac50fa3ea |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Update version number to TIPC 1.6.4 This patch updates TIPC's version number to 1.6.4. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
48c971394626173eaf1c33441ea1d900c88b21a3 |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Exclude debug-only print buffer code when not debugging This patch modifies TIPC to only exclude debug-related print buffer routines when debugging capabilities are not required. It also fixes up some related #defines that exceed 80 characters. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
bg.c
ink.c
sg.c
|
6063da9d74d4da812ae0d8f233b7e320e15765e3 |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Cosmetic cleanup of system & debug output declarations This patch contains changes to make TIPC's system & debug message declarations more readable. Declarations have been regrouped and recommented to make it easier to understand what output is generated in both standard and debugging modes. In addition, oversize lines have been fixed to respect the 80 character upper bound used in the kernel. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
7d3aa71239f588215b5a7c359f05155b192d8081 |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Cosmetic cleanup of print buffer code This patch contains changes to make TIPC's print buffer code conform more closely to Linux kernel coding guidelines. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
bg.c
|
c89039850bdf8047472b4ee6132048dacef2cf5a |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Elimination of print buffer chaining This patch revamps TIPC's print buffer subsystem to eliminate support for arbitrary chains of print buffers, which were rarely needed and difficult to use safely. In its place, print buffers can now be configured to echo their output to the system console. This provides an equivalent for the only chaining currently utilized by TIPC, in a faster and more compact manner. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
bg.c
bg.h
|
40dbfae440abe6860167f12e0296bd7a1a599839 |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix null pointer dereference in debug code This patch eliminates an obsolete use of the DBG_OUTPUT print buffer which could lead to a null pointer crash in tipc_printf() if TIPC's debugging capabilities are configured. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_distr.c
|
93758c3da19e99f5377cc1413c27320882b18f4b |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Fix recursive spinlock invocation in print buffer code This patch fixes two routines that allow the global print buffer spinlock to be taken recursively. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
bg.c
|
fb98ec71c7f81b6db9b793aeb9d53823b6960d8b |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Provide feedback when log buffer resizing fails This patch provides feedback to the user when TIPC is unable to set its log buffer to the requested size. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
bg.c
bg.h
|
025adbe8e58290798001b472aec3eb618d8fc930 |
05-May-2008 |
Allan Stephens <allan.stephens@windriver.com> |
tipc: Simplify log buffer resizing This patch simplifies & standardizes the way TIPC's print buffer log is resized. Code to terminate use of the log buffer is eliminated by simply setting the log buffer size to 0 bytes. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ore.c
bg.c
bg.h
|
becf3da20eca82e06607b9813cc3b592b359bae5 |
27-Apr-2008 |
Al Viro <viro@zeniv.linux.org.uk> |
tipc: endianness annotations Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.h
|
653252c2302cdf2dfbca66a7e177f7db783f9efa |
25-Apr-2008 |
Pavel Emelyanov <xemul@openvz.org> |
net: Fix wrong interpretation of some copy_to_user() results. I found some places, that erroneously return the value obtained from the copy_to_user() call: if some amount of bytes were not able to get to the user (this is what this one returns) the proper behavior is to return the -EFAULT error, not that number itself. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
bcff122d478b774f4fd5262f35eedebe2f2fb274 |
17-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Cleanup of TIPC reference table code This patch is a largely cosmetic cleanup of the TIPC reference table code. - The object reference field in each table entry is now single 32-bit integer instead of a union of two 32-bit integers. - Variable naming has been made more consistent. - Error message output has been made more consistent. - Useless #includes have been eliminated. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ef.c
|
0089509826b4997c37f08dfbdfb96ee952096cc9 |
17-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Optimized initialization of TIPC reference table This patch modifies TIPC's reference table code to delay initializing table entries until they are actually needed by applications. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ef.c
|
4784b7c348779e957c82ba638ba2ada5ad8502d8 |
17-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Remove inlining of reference table locking routines This patch converts the TIPC reference table locking routines into non-inlined routines, since they are mainly called from non-performance critical areas of TIPC and the added code footprint incurred through inlining can no longer be justified. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ef.c
ef.h
|
85035568a96065de6fb29478707a3ad5f1fed169 |
16-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Enhance validation of format on incoming messages This patch ensures that TIPC properly handles incoming messages that have incorrect or unexpected formats. Most significantly, it now ensures that each sl_buff has at least as much data as the message header indicates it should, and that the entire message header is stored contiguously; this prevents TIPC from accidentally accessing memory that is not part of the sk_buff. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
fe13dda2d24eca2ee8a6bb8a0af88ab84d589fd6 |
16-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Force linearization of non-linear sk_buffs This patch allows TIPC to process incoming messages that are stored in a fragmented sk_buff, by forcing the linearization of any such messages it receives. Note: This is an interim solution to allow TIPC to operate with Ethernet devices that generate non-linear buffers (such as the gianfar driver), until such time as the rest of TIPC is enhanced to handle sk_buffs with multiple data areas. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
ink.c
|
bdc82bee43d11c093ff0378acef2a9550891cbb9 |
16-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Use fast buffer cloning to improve performance This patch causes TIPC to allocate fast clonable sk_buffs, rather than standard ones. This speeds up the cloning operation done by the link code each time a message is sent off-node. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
11ecede7874efb9c31184b49090fc6d9bb17f9f6 |
16-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Remove redundant NULL check when discarding buffers This patch eliminates a null pointer check when discarding a TIPC message buffer, since kfree_skb() already handles this situation. Acknowledgements to Florian Westphal (fw@strlen.de> for suggesting this enhancement. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
0c3141e910eaaa0b617e2f26c69b266d1cd1f035 |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Overhaul of socket locking logic This patch modifies TIPC's socket code to follow the same approach used by other protocols. This change eliminates the need for a mutex in the TIPC-specific portion of the socket protocol data structure -- in its place, the standard Linux socket backlog queue and associated locking routines are utilized. These changes fix a long-standing receive queue bug on SMP systems, and also enable individual read and write threads to utilize a socket without unnecessarily interfering with each other. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
ocket.c
|
b89741a0cc162511b4341c07e17e1bd4c8b4621d |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Cosmetic changes to TIPC connect() code This patch fixes TIPC's connect routine to conform to Linux kernel style norms of indentation, line length, etc. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
4934c69a384ede7d0c3009098184554da2063de6 |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Add error check to detect non-blocking form of connect() This patch causes TIPC to return an error indication if the non- blocking form of connect() is requested (which TIPC does not yet support). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
1819b83718dc3fe0aea0a2c3cd48d617e2003606 |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Correct "off by 1" error in socket queue limit enforcement This patch fixes a bug that allowed TIPC to queue 1 more message than allowed by the socket receive queue threshold limits. The patch also improves the threshold code's logic and naming to help prevent this sort of error from recurring in the future. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
7a8036c2b93c8301afce8f75ac099c347bad569d |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Ignore message padding when receiving stream data This patch ensures that padding bytes appearing at the end of an incoming TIPC message are not returned as valid stream data. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
a198d3a200313bca8261e30e6daaad790937fd7e |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Allow stream receive to read from multiple TIPC messages This patch allows a stream socket to receive data from multiple TIPC messages in its receive queue, without requiring the use of the MSG_WAITALL flag. Acknowledgements to Florian Westphal <fw-tipc@strlen.de> for identifying this issue and suggesting how to correct it. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
990098068fe963f956c14f681bd88d90dcb14584 |
15-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Skip connection flow control in connectionless sockets This patch optimizes the receive path for SOCK_DGRAM and SOCK_RDM messages by skipping over code that handles connection-based flow control. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3654ea02f2819cf8821c0acd35bc7cded5f1f2a9 |
14-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Improve socket time conversions This patch modifies TIPC's socket code to use standard kernel routines to handle time conversions between jiffies and ms. This ensures proper operation even when HZ isn't 1000. Acknowledgements to Eric Sesterhenn <snakebyte@gmx.de> for identifying this issue and proposing a solution. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
9673693284763417ea5edcdebc1a0c5d1dead51c |
14-Apr-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Remove redundant socket wait queue initialization This patch eliminates re-initialization of the standard socket wait queue used for sleeping in TIPC's socket creation code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
9b674e82b73a61844967b32e1b4ecaf8eb9d1805 |
27-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Cosmetic cleanup of TIPC polling logic This patch eliminates an unnecessary poll-related routine by merging it into TIPC's main polling routine, and updates the comments associated with this code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9 |
25-Mar-2008 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
[NET] NETNS: Omit sock->sk_net without CONFIG_NET_NS. Introduce per-sock inlines: sock_net(), sock_net_set() and per-inet_timewait_sock inlines: twsk_net(), twsk_net_set(). Without CONFIG_NET_NS, no namespace other than &init_net exists. Let's explicitly define them to help compiler optimizations. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
ocket.c
|
c346dca10840a874240c78efe3f39acf4312a1f2 |
25-Mar-2008 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
[NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. Introduce per-net_device inlines: dev_net(), dev_net_set(). Without CONFIG_NET_NS, no namespace other than &init_net exists. Let's explicitly define them to help compiler optimizations. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
th_media.c
|
ba0fa4599484b98dbb21d279fbfdb40e9c07d30d |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Update version to 1.6.3 This patch updates TIPC's version number to 1.6.3. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
c0cb7ef08667374f0cbe8c94c819f74a6c935135 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Enhancements to message header writing This patch makes two enhancements to the routine used to set bit fields within a TIPC message header: 1) It now ignores any bits of the new field value that are not covered by the mask being used. (Previously, if the new value exceeded the size of the mask the extra bits could corrupt other fields in the message header word being updated.) 2) The code has been optimized to minimize the number of run-time endianness conversion operations by leveraging the fact that the mask (and, in some cases, the value as well) is constant and the necessary conversion can be performed by the compiler. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.h
|
37695420a233aa8aef40c68cb338ad09e0241ec3 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Use correct bitmask when setting version This patch ensures that the 3-bit version field of the TIPC message header is masked correctly when written into a message. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.h
|
06d82c9191261942ce7873ce4a8735fd2a15e662 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Minor cleanup of message header code This patch eliminates some unused or duplicate message header symbols, and fixes up the comments and/or location of a few other symbols. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
sg.c
sg.h
ort.c
|
0e0609bbd2ab39a5964a70b409a5567ebbaf3700 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Eliminate "sparse" symbol warnings This patch eliminates warnings about undeclared symbols. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ore.h
|
e247a8f5d018740220c66bd5df1928d21d277d63 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Add argument validation for shutdown() This patch validates that the "how" argument to shutdown() is SHUT_RDWR, since this is the only form that TIPC supports. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
8c8696553aa3895c2ad4289537e4af45a8877b62 |
07-Mar-2008 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Removal of message header option code This patch removes code associated with optional, user-specified fields of the TIPC message header. Such fields were never utilized by TIPC, and have now been removed from the protocol specification. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
sg.h
ort.c
|
26bad2c05eef400d9af16979bd96e301902ebd13 |
04-Mar-2008 |
Matthias Kaehlcke <matthias@kaehlcke.net> |
[TIPC]: Convert tsock->sem in a mutex The semaphore tsock->sem is used as mutex, convert it to the mutex API Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
5f2f40a92e007ec5b503db20f3f70cb331c64f65 |
25-Feb-2008 |
Harvey Harrison <harvey.harrison@gmail.com> |
tipc: fix integer as NULL pointer sparse warnings in tipc net/tipc/cluster.c:145:2: warning: Using plain integer as NULL pointer net/tipc/link.c:3254:36: warning: Using plain integer as NULL pointer net/tipc/ref.c:151:15: warning: Using plain integer as NULL pointer net/tipc/zone.c:85:2: warning: Using plain integer as NULL pointer Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
luster.c
ink.c
ef.c
one.c
|
bca65eae394e95c125837b6eb3a8246c40777608 |
08-Feb-2008 |
Florian Westphal <fw@strlen.de> |
[TIPC]: declare proto_ops structures as 'const'. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
86121fe5b4f170829429433cd99ec7f884c8ae75 |
08-Feb-2008 |
Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> |
[TIPC]: Kill unused static inline (x5) All these static inlines are unused: in_own_zone 1 (net/tipc/addr.h) msg_dataoctet 1 (net/tipc/msg.h) msg_direct 1 (include/net/tipc/tipc_msg.h) msg_options 1 (include/net/tipc/tipc_msg.h) tipc_nmap_get 1 (net/tipc/bcast.h) Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.h
cast.h
sg.h
|
4cec72c890d3a465eed08c24a4a2bfe25650318f |
09-Jan-2008 |
Julia Lawall <julia@diku.dk> |
[TIPC]: Use tipc_port_unlock The file net/tipc/port.c takes a lock using the function tipc_port_lock and then releases the lock sometimes using tipc_port_unlock and sometimes using spin_unlock_bh(p_ptr->publ.lock). tipc_port_unlock simply does the spin_unlock_bh, but it seems cleaner to use it everywhere. The problem was fixed using the following semantic patch. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ struct port *p_ptr; @@ p_ptr = tipc_port_lock(...) ... ( p_ptr = tipc_port_lock(...); | ?- spin_unlock_bh(p_ptr->publ.lock); + tipc_port_unlock(p_ptr); ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Jon Paul Maloy <maloy@donjonn.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
b24b8a247ff65c01b252025926fe564209fae4fc |
24-Jan-2008 |
Pavel Emelyanov <xemul@openvz.org> |
[NET]: Convert init_timer into setup_timer Many-many code in the kernel initialized the timer->function and timer->data together with calling init_timer(timer). There is already a helper for this. Use it for networking code. The patch is HUGE, but makes the code 130 lines shorter (98 insertions(+), 228 deletions(-)). Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
98eb5683fb94c458b3c8d121797bc9aa1baf4e7e |
12-Dec-2007 |
Andrew Morton <akpm@linux-foundation.org> |
[TIPC]: Fix semaphore handling. As noted by Kevin, tipc's release() does down_interruptible() and ignores the return value. So if signal_pending() we'll end up doing up() on a non-downed semaphore. Fix. Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
6257ff2177ff02d7f260a7a501876aa41cb9a9f6 |
01-Nov-2007 |
Pavel Emelyanov <xemul@openvz.org> |
[NET]: Forget the zero_it argument of sk_alloc() Finally, the zero_it argument can be completely removed from the callers and from the function prototype. Besides, fix the checkpatch.pl warnings about using the assignments inside if-s. This patch is rather big, and it is a part of the previous one. I splitted it wishing to make the patches more readable. Hope this particular split helped. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
0c4e85813d0a94eeb8bf813397a4907bdd7bb610 |
09-Oct-2007 |
Stephen Hemminger <shemminger@linux-foundation.org> |
[NET]: Wrap netdevice hardware header creation. Add inline for common usage of hardware header creation, and fix bug in IPV6 mcast where the assumption about negative return is an errno. Negative return from hard_header means not enough space was available,(ie -N bytes). Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
0795af5729b18218767fab27c44b1384f72dc9ad |
04-Oct-2007 |
Joe Perches <joe@perches.com> |
[NET]: Introduce and use print_mac() and DECLARE_MAC_BUF() This is nicer than the MAC_FMT stuff. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
881d966b48b035ab3f3aeaae0f3d3f9b584f45b2 |
17-Sep-2007 |
Eric W. Biederman <ebiederm@xmission.com> |
[NET]: Make the device list and device lookups per namespace. This patch makes most of the generic device layer network namespace safe. This patch makes dev_base_head a network namespace variable, and then it picks up a few associated variables. The functions: dev_getbyhwaddr dev_getfirsthwbytype dev_get_by_flags dev_get_by_name __dev_get_by_name dev_get_by_index __dev_get_by_index dev_ioctl dev_ethtool dev_load wireless_process_ioctl were modified to take a network namespace argument, and deal with it. vlan_ioctl_set and brioctl_set were modified so their hooks will receive a network namespace argument. So basically anthing in the core of the network stack that was affected to by the change of dev_base was modified to handle multiple network namespaces. The rest of the network stack was simply modified to explicitly use &init_net the initial network namespace. This can be fixed when those components of the network stack are modified to handle multiple network namespaces. For now the ifindex generator is left global. Fundametally ifindex numbers are per namespace, or else we will have corner case problems with migration when we get that far. At the same time there are assumptions in the network stack that the ifindex of a network device won't change. Making the ifindex number global seems a good compromise until the network stack can cope with ifindex changes when you change namespaces, and the like. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
e9dc86534051b78e41e5b746cccc291b57a3a311 |
12-Sep-2007 |
Eric W. Biederman <ebiederm@xmission.com> |
[NET]: Make device event notification network namespace safe Every user of the network device notifiers is either a protocol stack or a pseudo device. If a protocol stack that does not have support for multiple network namespaces receives an event for a device that is not in the initial network namespace it quite possibly can get confused and do the wrong thing. To avoid problems until all of the protocol stacks are converted this patch modifies all netdev event handlers to ignore events on devices that are not in the initial network namespace. As the rest of the code is made network namespace aware these checks can be removed. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
e730c15519d09ea528b4d2f1103681fa5937c0e6 |
17-Sep-2007 |
Eric W. Biederman <ebiederm@xmission.com> |
[NET]: Make packet reception network namespace safe This patch modifies every packet receive function registered with dev_add_pack() to drop packets if they are not from the initial network namespace. This should ensure that the various network stacks do not receive packets in a anything but the initial network namespace until the code has been converted and is ready for them. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
1b8d7ae42d02e483ad94035cca851e4f7fbecb40 |
09-Oct-2007 |
Eric W. Biederman <ebiederm@xmission.com> |
[NET]: Make socket creation namespace safe. This patch passes in the namespace a new socket should be created in and has the socket code do the appropriate reference counting. By virtue of this all socket create methods are touched. In addition the socket create methods are modified so that they will fail if you attempt to create a socket in a non-default network namespace. Failing if we attempt to create a socket outside of the default network namespace ensures that as we incrementally make the network stack network namespace aware we will not export functionality that someone has not audited and made certain is network namespace safe. Allowing us to partially enable network namespaces before all of the exotic protocols are supported. Any protocol layers I have missed will fail to compile because I now pass an extra parameter into the socket creation code. [ Integrated AF_IUCV build fixes from Andrew Morton... -DaveM ] Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
897c77cab0c386103e1c51fe8f3fc7eb5d1eb37f |
11-Aug-2007 |
Jesper Juhl <jesper.juhl@gmail.com> |
[TIPC]: Clean up duplicate includes in net/tipc/ This patch cleans up duplicate includes in net/tipc/ Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
d788d8056fd913defa48bd94f18dc53de98cd7a6 |
03-Aug-2007 |
Florian Westphal <fw@strlen.de> |
[TIPC]: Fix two minor sparse warnings. fix two warnings generated by sparse: link.c:2386 symbol 'msgcount' shadows an earlier one node.c:244 symbol 'addr_string' shadows an earlier one Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ode.c
|
248bbf38215fd5ce45a31c65c5e5511d9b611e5a |
03-Aug-2007 |
Florian Westphal <fw@strlen.de> |
[TIPC]: Make function tipc_nameseq_subscribe static. make needlessly global function tipc_nameseq_subscribe static. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
94571065757a4f2619c48ab4e36cafdc635028ce |
26-Jul-2007 |
Florian Westphal <fw@strlen.de> |
[TIPC]: fix tipc_link_create error handling if printbuf allocation or tipc_node_attach_link() fails, invalid references to the link are left in the associated node and bearer structures. Fix by allocating printbuf early and moving timer initialization and the addition of the new link to the b_ptr->links list after tipc_node_attach_link() succeeded. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
582ee43dad8e411513a74f2d801255dcffc6d29e |
26-Jul-2007 |
Al Viro <viro@ftp.linux.org.uk> |
net/* misc endianness annotations Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
sg.h
|
20c2df83d25c6a95affe6157a4c9cac4cf5ffaac |
20-Jul-2007 |
Paul Mundt <lethal@linux-sh.org> |
mm: Remove slab destructors from kmem_cache_create(). Slab destructors were no longer supported after Christoph's c59def9f222d44bb7e2f0a559f2906191a0862d7 change. They've been BUGs for both slab and slub, and slob never supported them either. This rips out support for the dtor pointer from kmem_cache_create() completely and fixes up every single callsite in the kernel (there were about 224, not including the slab allocator definitions themselves, or the documentation references). Signed-off-by: Paul Mundt <lethal@linux-sh.org>
andler.c
|
ce8c2293be47999584908069e78bf6d94beadc53 |
19-Jul-2007 |
Linus Torvalds <torvalds@woody.linux-foundation.org> |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (25 commits) [TG3]: Fix msi issue with kexec/kdump. [NET] XFRM: Fix whitespace errors. [NET] TIPC: Fix whitespace errors. [NET] SUNRPC: Fix whitespace errors. [NET] SCTP: Fix whitespace errors. [NET] RXRPC: Fix whitespace errors. [NET] ROSE: Fix whitespace errors. [NET] RFKILL: Fix whitespace errors. [NET] PACKET: Fix whitespace errors. [NET] NETROM: Fix whitespace errors. [NET] NETFILTER: Fix whitespace errors. [NET] IPV4: Fix whitespace errors. [NET] DCCP: Fix whitespace errors. [NET] CORE: Fix whitespace errors. [NET] BLUETOOTH: Fix whitespace errors. [NET] AX25: Fix whitespace errors. [PATCH] mac80211: remove rtnl locking in ieee80211_sta.c [PATCH] mac80211: fix GCC warning on 64bit platforms [GENETLINK]: Dynamic multicast groups. [NETLIKN]: Allow removing multicast groups. ...
|
dd00cc486ab1c17049a535413d1751ef3482141c |
19-Jul-2007 |
Yoann Padioleau <padator@wanadoo.fr> |
some kmalloc/memset ->kzalloc (tree wide) Transform some calls to kmalloc/memset to a single kzalloc (or kcalloc). Here is a short excerpt of the semantic patch performing this transformation: @@ type T2; expression x; identifier f,fld; expression E; expression E1,E2; expression e1,e2,e3,y; statement S; @@ x = - kmalloc + kzalloc (E1,E2) ... when != \(x->fld=E;\|y=f(...,x,...);\|f(...,x,...);\|x=E;\|while(...) S\|for(e1;e2;e3) S\) - memset((T2)x,0,E1); @@ expression E1,E2,E3; @@ - kzalloc(E1 * E2,E3) + kcalloc(E1,E2,E3) [akpm@linux-foundation.org: get kcalloc args the right way around] Signed-off-by: Yoann Padioleau <padator@wanadoo.fr> Cc: Richard Henderson <rth@twiddle.net> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Acked-by: Russell King <rmk@arm.linux.org.uk> Cc: Bryan Wu <bryan.wu@analog.com> Acked-by: Jiri Slaby <jirislaby@gmail.com> Cc: Dave Airlie <airlied@linux.ie> Acked-by: Roland Dreier <rolandd@cisco.com> Cc: Jiri Kosina <jkosina@suse.cz> Acked-by: Dmitry Torokhov <dtor@mail.ru> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org> Acked-by: Pierre Ossman <drzeus-list@drzeus.cx> Cc: Jeff Garzik <jeff@garzik.org> Cc: "David S. Miller" <davem@davemloft.net> Acked-by: Greg KH <greg@kroah.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ame_table.c
|
8238745a39606738c1d8d39f2052959b3e594b04 |
19-Jul-2007 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
[NET] TIPC: Fix whitespace errors. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
ocket.c
|
05646c91109bfd129361d57dc5d98464ab6f6578 |
11-Jun-2007 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Optimize stream send routine to avoid fragmentation This patch enhances TIPC's stream socket send routine so that it avoids transmitting data in chunks that require fragmentation and reassembly, thereby improving performance at both the sending and receiving ends of the connection. The "maximum packet size" hint that records MTU info allows the socket to decide how big a chunk it should send; in the event that the hint has become stale, fragmentation may still occur, but the data will be passed correctly and the hint will be updated in time for the following send. Note: The 66060 byte pseudo-MTU used for intra-node connections requires the send routine to perform an additional check to ensure it does not exceed TIPC"s limit of 66000 bytes of user data per chunk. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ort.c
ort.h
ocket.c
|
5eee6a6dc945acc5bf4da12956b2f698bbb102b9 |
11-Jun-2007 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Use standard socket "not implemented" routines This patch modifies TIPC's socket API to utilize existing generic routines to indicate unsupported operations, rather than adding similar TIPC-specific routines. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
f3ec75f627c746cfe460482d38a33b06a84d038f |
11-Jun-2007 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Improved support for Ethernet traffic filtering This patch simplifies TIPC's Ethernet receive routine to take advantage of information already present in each incoming sk_buff indicating whether the packet was explicitly sent to the interface, has been broadcast to all interfaces, or was picked up because the interface is in promiscous mode. This new approach also fixes the problem of TIPC accepting unwanted traffic through UML's multicast-based Ethernet interfaces (which deliver traffic in a promiscuous manner even if the interface is not configured to be promiscuous). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
64beb8f3eb3c724add64ca3272915528e10213c1 |
24-Jun-2007 |
Florian Westphal <fw@strlen.de> |
[TIPC]: Fix infinite loop in netlink handler The tipc netlink config handler uses the nlmsg_pid from the request header as destination for its reply. If the application initialized nlmsg_pid to 0, the reply is looped back to the kernel, causing hangup. Fix: use nlmsg_pid of the skb that triggered the request. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
cb283ead710c342d9856af8507e2a42bf5c6576c |
24-May-2007 |
Jon Paul Maloy <jon.maloy@ericsson.com> |
[TIPC]: Fixed erroneous introduction of for_each_netdev Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
a31b19c514664b8161b956f8da45d8a9166da0c6 |
23-May-2007 |
Jan Engelhardt <jengelh@gmx.de> |
[TIPC]: Use menuconfig objects. Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
config
|
15700770ef7c5d12e2f1659d2ddbeb3f658d9f37 |
06-May-2007 |
Linus Torvalds <torvalds@woody.linux-foundation.org> |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (38 commits) kconfig: fix mconf segmentation fault kbuild: enable use of code from a different dir kconfig: error out if recursive dependencies are found kbuild: scripts/basic/fixdep segfault on pathological string-o-death kconfig: correct minor typo in Kconfig warning message. kconfig: fix path to modules.txt in Kconfig help usr/Kconfig: fix typo kernel-doc: alphabetically-sorted entries in index.html of 'htmldocs' kbuild: be more explicit on missing .config file kbuild: clarify the creation of the LOCALVERSION_AUTO string. kbuild: propagate errors from find in scripts/gen_initramfs_list.sh kconfig: refer to qt3 if we cannot find qt libraries kbuild: handle compressed cpio initramfs-es kbuild: ignore section mismatch warning for references from .paravirtprobe to .init.text kbuild: remove stale comment in modpost.c kbuild/mkuboot.sh: allow spaces in CROSS_COMPILE kbuild: fix make mrproper for Documentation/DocBook/man kbuild: remove kconfig binaries during make mrproper kconfig/menuconfig: do not hardcode '.config' kbuild: override build timestamp & version ...
|
7562f876cd93800f2f8c89445f2a563590b24e09 |
04-May-2007 |
Pavel Emelianov <xemul@openvz.org> |
[NET]: Rework dev_base via list_head (v3) Cleanup of dev_base list use, with the aim to simplify making device list per-namespace. In almost every occasion, use of dev_base variable and dev->next pointer could be easily replaced by for_each_netdev loop. A few most complicated places were converted to using first_netdev()/next_netdev(). Signed-off-by: Pavel Emelianov <xemul@openvz.org> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
39f5fb30351efa9d6f6e22754c222354fa2b7e1e |
16-Mar-2007 |
Alexander E. Patrakov <patrakov@ums.usu.ru> |
kconfig: fix path to modules.txt in Kconfig help Documentation/modules.txt doesn't exist, but Documentation/kbuild/modules.txt does. Signed-off-by: Alexander E. Patrakov Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
config
|
1f9eda7e2b67898fb8e79b3aa3880211b51235e6 |
24-Apr-2007 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Enhancements to msg_set_bits() routine This patch makes two enhancements to msg_set_bits(): 1) It now ignores any bits of the new field value that are not covered by the mask being used. (Previously, if the new value exceeded the size of the mask the extra bits could corrupt other fields in the message header word being updated.) 2) The code has been optimized to minimize the number of run-time endianness conversion operations by leveraging the fact that the mask (and, in some cases, the value as well) is constant and the necessary conversion can be performed by the compiler. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
sg.h
|
3ff50b7997fe06cd5d276b229967bb52d6b3b6c1 |
21-Apr-2007 |
Stephen Hemminger <shemminger@linux-foundation.org> |
[NET]: cleanup extra semicolons Spring cleaning time... There seems to be a lot of places in the network code that have extra bogus semicolons after conditionals. Most commonly is a bogus semicolon after: switch() { } Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
27d7ff46a3498d3debc6ba68fb8014c702b81170 |
31-Mar-2007 |
Arnaldo Carvalho de Melo <acme@ghostprotocols.net> |
[SK_BUFF]: Introduce skb_copy_to_linear_data{_offset} To clearly state the intent of copying to linear sk_buffs, _offset being a overly long variant but interesting for the sake of saving some bytes. Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
ink.c
sg.h
ort.c
|
b529ccf2799c14346d1518e9bdf1f88f03643e99 |
26-Apr-2007 |
Arnaldo Carvalho de Melo <acme@redhat.com> |
[NETLINK]: Introduce nlmsg_hdr() helper For the common "(struct nlmsghdr *)skb->data" sequence, so that we reduce the number of direct accesses to skb->data and for consistency with all the other cast skb member helpers. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
27a884dc3cb63b93c2b3b643f5b31eed5f8a4d26 |
20-Apr-2007 |
Arnaldo Carvalho de Melo <acme@redhat.com> |
[SK_BUFF]: Convert skb->tail to sk_buff_data_t So that it is also an offset from skb->head, reduces its size from 8 to 4 bytes on 64bit architectures, allowing us to combine the 4 bytes hole left by the layer headers conversion, reducing struct sk_buff size to 256 bytes, i.e. 4 64byte cachelines, and since the sk_buff slab cache is SLAB_HWCACHE_ALIGN... :-) Many calculations that previously required that skb->{transport,network, mac}_header be first converted to a pointer now can be done directly, being meaningful as offsets or pointers. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
ocket.c
|
c1d2bbe1cd6c7bbdc6d532cefebb66c7efb789ce |
11-Apr-2007 |
Arnaldo Carvalho de Melo <acme@redhat.com> |
[SK_BUFF]: Introduce skb_reset_network_header(skb) For the common, open coded 'skb->nh.raw = skb->data' operation, so that we can later turn skb->nh.raw into a offset, reducing the size of struct sk_buff in 64bit land while possibly keeping it as a pointer on 32bit. This one touches just the most simple case, next will handle the slightly more "complex" cases. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
98e399f82ab3a6d863d1d4a7ea48925cc91c830e |
19-Mar-2007 |
Arnaldo Carvalho de Melo <acme@redhat.com> |
[SK_BUFF]: Introduce skb_mac_header() For the places where we need a pointer to the mac header, it is still legal to touch skb->mac.raw directly if just adding to, subtracting from or setting it to another layer header. This one also converts some more cases to skb_reset_mac_header() that my regex missed as it had no spaces before nor after '=', ugh. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
02ea4923b4997d7e1310c027081f46d584b9d714 |
07-Mar-2007 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
[NET] TIPC: Use htons() where appropriate. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
c43072852649d8382b81237ce51195bcec36f24a |
09-Feb-2007 |
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> |
[NET] TIPC: Fix whitespace errors. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ubscr.h
ser_reg.c
ser_reg.h
one.c
one.h
|
5cbded585d129d0226cb48ac4202b253c781be26 |
13-Dec-2006 |
Robert P. J. Day <rpjday@mindspring.com> |
[PATCH] getting rid of all casts of k[cmz]alloc() calls Run this: #!/bin/sh for f in $(grep -Erl "\([^\)]*\) *k[cmz]alloc" *) ; do echo "De-casting $f..." perl -pi -e "s/ ?= ?\([^\)]*\) *(k[cmz]alloc) *\(/ = \1\(/" $f done And then go through and reinstate those cases where code is casting pointers to non-pointers. And then drop a few hunks which conflicted with outstanding work. Cc: Russell King <rmk@arm.linux.org.uk>, Ian Molton <spyro@f2s.com> Cc: Mikael Starvik <starvik@axis.com> Cc: Yoshinori Sato <ysato@users.sourceforge.jp> Cc: Roman Zippel <zippel@linux-m68k.org> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Kyle McMartin <kyle@mcmartin.ca> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Jeff Dike <jdike@addtoit.com> Cc: Greg KH <greg@kroah.com> Cc: Jens Axboe <jens.axboe@oracle.com> Cc: Paul Fulghum <paulkf@microgate.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Karsten Keil <kkeil@suse.de> Cc: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: Jeff Garzik <jeff@garzik.org> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: Ian Kent <raven@themaw.net> Cc: Steven French <sfrench@us.ibm.com> Cc: David Woodhouse <dwmw2@infradead.org> Cc: Neil Brown <neilb@cse.unsw.edu.au> Cc: Jaroslav Kysela <perex@suse.cz> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
onfig.c
|
e18b890bb0881bbab6f4f1a6cd20d9c60d66b003 |
07-Dec-2006 |
Christoph Lameter <clameter@sgi.com> |
[PATCH] slab: remove kmem_cache_t Replace all uses of kmem_cache_t with struct kmem_cache. The patch was generated using the following script: #!/bin/sh # # Replace one string by another in all the kernel sources. # set -e for file in `find * -name "*.c" -o -name "*.h"|xargs grep -l $1`; do quilt add $file sed -e "1,\$s/$1/$2/g" $file >/tmp/$$ mv /tmp/$$ $file quilt refresh done The script was run like this sh replace kmem_cache_t "struct kmem_cache" Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
andler.c
|
2710b57ff9b1437cfbe96b23ae86fedf3239f1ca |
21-Nov-2006 |
Arnaldo Carvalho de Melo <acme@mandriva.com> |
[TIPC]: Use kzalloc where appropriate Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
cast.c
ode.c
ubscr.c
|
3e6c8cd5669c1202fe806ce3e13d701f20a71c7e |
08-Nov-2006 |
Al Viro <viro@zeniv.linux.org.uk> |
[TIPC]: endianness annotations Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
bg.c
ame_distr.c
ode.c
|
d55b4c631e89a008e80b003e5aa4291d9ec800ac |
01-Nov-2006 |
Adrian Bunk <bunk@stusta.de> |
[TIPC] net/tipc/port.c: fix NULL dereference The correct order is: NULL check before dereference Spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
665d8669583e28c397d4333385d8f46ca5864048 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Updated TIPC version number to 1.6.2 Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
53cfd1e102c759c958f907ee40a58bec3fc5911a |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Unrecognized configuration command now returns error message This patch causes TIPC to return an error message when it receives an unrecognized configuration command. (Previously, the sender received no feedback.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
|
eb409460b1abec0e2a1f9c9d07019f4157a6d6bc |
17-Oct-2006 |
Lijun Chen <chenli@nortel.com> |
[TIPC]: Added subscription cancellation capability This patch allows a TIPC application to cancel an existing topology service subscription by re-requesting the subscription with the TIPC_SUB_CANCEL filter bit set. (All other bits of the cancel request must match the original subscription request.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ubscr.c
|
fc144deec6403c17e6d3f6a6574f701420f166ed |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Can now list multicast link on an isolated network node This patch fixes a minor bug that prevents "tipc-config -l" from displaying the multicast link if a TIPC node has never successfully established at least one unicast link. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ode.c
|
2de07f6156fe664063207c010b3bd2500348884a |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed slow link reactivation when link tolerance is large This patch corrects an issue wherein a previouly failed node could not reestablish a links to a non-failing node in the TIPC network until the latter node detected the link failure itself (which might be configured to take up to 30 seconds). The non-failing node now responds to link setup requests from a previously failed node in at most 1 second, allowing it to detect the link failure more quickly. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
|
08c31f7167b1bdc30cd0960b45d6f3076eb1f179 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Name publication events now delivered in chronological order This patch tivially re-orders the entries in TIPC's list of local publications so that applications will receive publication events in the order they were published. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_distr.c
|
3a8d12142eab420ffcbbf3d1d2e637158e85aab8 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Add support for Ethernet VLANs This patch enhances TIPC's Ethernet support to include VLAN interfaces. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
ore.h
|
a3df92c73b92970dc4211189b87eb4cf874f5685 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Remove code bloat introduced by print buffer rework This patch allows the compiler to optimize out any code that tries to send debugging output to the null print buffer (TIPC_NULL), a capability that was unintentionally broken during the recent print buffer rework. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
ink.c
|
cfb0c0890b200364c0886c0d9f0dc615f8114c43 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Optimize wakeup logic when socket has no waiting processes This patch adds a simple test so TIPC doesn't try waking up processes waiting on a socket if there are none waiting. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
e91ed0bcdfc4812c0342d64281ee985213df07c3 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Added duplicate node address detection capability TIPC now rejects and logs link setup requests from node <Z.C.N> if the receiving node already has a functional link to that node on the associated interface, or if the requestor is using the same <Z.C.N> as the receiver. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
iscover.c
|
eb5959c2bd290bf6c24ddf6d1f5ebcb496c54adb |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Stream socket can now send > 66000 bytes at a time The stream socket send code was not initializing some required fields of the temporary msghdr structure it was utilizing; this is now fixed. A check has also been added to detect if a user illegally specifies a destination address when sending on an established stream connection. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
29ede244cc4cfb11432a0bffd158ba09e7b2c167 |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Debug print buffer enhancements and fixes This change modifies TIPC's print buffer code as follows: 1) Now supports small print buffers (min. size reduced from 512 bytes to 64) 2) Now uses TIPC_NULL print buffer structure to indicate null device instead of NULL pointer (this simplified error handling) 3) Fixed misuse of console buffer structure by tipc_dump() 4) Added and corrected comments in various places Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
bg.c
bg.h
|
065fd1772af2032bebdce006071df007c039734d |
17-Oct-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Add missing unlock in port timeout code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
28c4dadd3a7221f5b9cd5c7d03c499788b193353 |
10-Oct-2006 |
Al Viro <viro@ftp.linux.org.uk> |
[PATCH] tipc __user annotations Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
ocket.c
|
617dbeaa3f2987acc83c1149409685005e9dd740 |
04-Oct-2006 |
Jeff Garzik <jeff@garzik.org> |
[TIPC]: fix printk warning gcc spits out this warning: net/tipc/link.c: In function ‘link_retransmit_failure’: net/tipc/link.c:1669: warning: cast from pointer to integer of different size More than a little bit ugly, storing integers in void*, but at least the code is correct, unlike some of the more crufty Linux kernel code found elsewhere. Rather than having two casts to massage the value into u32, it's easier just to have a single cast and use "%lu", since it's just a printk. Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
9df3f3d28bca0157e2bab2f3171d2ad4f0930634 |
22-Jul-2006 |
Panagiotis Issaris <takis@issaris.org> |
[TIPC]: Removing useless casts Removing useless casts Signed-off-by: Panagiotis Issaris <takis@issaris.org> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
ef.c
|
0da974f4f303a6842516b764507e3c0a03f41e5a |
21-Jul-2006 |
Panagiotis Issaris <takis@issaris.org> |
[NET]: Conversions from kmalloc+memset to k(z|c)alloc. Signed-off-by: Panagiotis Issaris <takis@issaris.org> Signed-off-by: David S. Miller <davem@davemloft.net>
earer.c
luster.c
ink.c
ame_table.c
et.c
ort.c
ubscr.c
ser_reg.c
one.c
|
863fae666acb87b150f4634e6e79476ebe274f43 |
04-Jul-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC] Fixed sk_buff panic caused by tipc_link_bundle_buf (REVISED) The recent change to direct inspection of bundle buffer tailroom did not account for the possiblity of unrequested tailroom added by skb_alloc(), thereby allowing a bundle to be created that exceeds the current link MTU. An additional check now ensures that bundling works correctly no matter if the bundle buffer is smaller, larger, or equal to the link MTU. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
ink.c
|
0702056f9f41274a06e21cb05f12b4265b4867a2 |
29-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Initial activation message now includes TIPC version number Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
ea13847b240e689e8f291355c36b46de9f44ddf9 |
29-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Improve response to requests for node/link information Now allocates reply space for "get links" request based on number of actual links, not number of potential links. Also, limits reply to "get links" and "get nodes" requests to 32KB to match capabilities of tipc-config utility that issued request. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com>
ode.c
one.h
|
e49060c7cab6ca856d048e1e10d71c0e6fedf376 |
29-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed skb_under_panic caused by tipc_link_bundle_buf Now determines tailroom of bundle buffer by directly inspection of buffer. Previously, buffer was assumed to have a max capacity equal to the link MTU, but the addition of link MTU negotiation means that the link MTU can increase after the bundle buffer is allocated. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
34af946a22724c4e2b204957f2b24b22a0fb121c |
27-Jun-2006 |
Ingo Molnar <mingo@elte.hu> |
[PATCH] spin/rwlock init cleanups locking init cleanups: - convert " = SPIN_LOCK_UNLOCKED" to spin_lock_init() or DEFINE_SPINLOCK() - convert rwlocks in a similar manner this patch was generated automatically. Motivation: - cleanliness - lockdep needs control of lock initialization, which the open-coded variants do not give - it's also useful for -rt and for lock debugging in general Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
cast.c
earer.c
onfig.c
bg.c
andler.c
ame_table.c
et.c
ode.c
ort.c
ef.c
ubscr.c
ser_reg.c
|
3ba07e65b288f00cc4d2420f1da46309b1cb5a0c |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fix incorrect correction to discovery timer frequency computation. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
iscover.c
|
65f51ef0971f01d64027cb3bca2c5827fb5b19cb |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Get rid of dynamically allocated arrays in broadcast code. This change improves an earlier change which replaced the large local variable arrays used during broadcasting with dynamically allocated arrays. The temporary arrays are now incoprorated into the multicast link data structure. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
5392d646886d8f1ae01be69c10600b8df5284c41 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed link switchover bugs Incorporates several related fixes: - switchover now occurs when switching from an active link to a standby link - failure of a standby link no longer initiates switchover - links now display correct # of received packtes following reactivation Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ode.c
ode.h
|
a10bd924a421e0e5d5bb9640735b9317b8e473b5 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Enhanced & cleaned up system messages; fixed 2 obscure memory leaks. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
cast.h
earer.c
luster.c
onfig.c
iscover.c
ink.c
ame_distr.c
ame_table.c
ode.c
ort.c
ubscr.c
one.c
|
f131072c3da84e70a0f65d71b3a3f6611c6a22bc |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: First phase of assert() cleanup This also contains enhancements to simplify comparisons in name table publication removal algorithm and to simplify name table sanity checking when shutting down TIPC. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ame_distr.c
ame_table.c
ode.c
ode_subscr.c
ort.c
ef.c
|
e100ae92a68c55e7ba287866c20fe1b0ad4fcdee |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Disallow config operations that aren't supported in certain modes. This change provides user-friendly feedback when TIPC is unable to perform certain configuration operations that don't work properly in certain modes. (In particular, any reconfiguration request that would temporarily take TIPC from network mode to standalone mode, or from standalone mode to not running mode, is disallowed.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
onfig.c
|
c33d53b23589d9133af85effefbaa619853eb7f0 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed memory leak in tipc_link_send() when destination is unreachable Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
a75bf874278d8318ffe11043f3acb9b281fa911a |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Added missing warning for out-of-memory condition Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
a7513528cd0deeb62624c229c21054472ec976e6 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Withdrawing all names from nameless port now returns success, not error Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
51f9cc1ff8aa0866ff8fb3c06be4c64b5edbb2e8 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Optimized argument validation done by connect(). Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
a3b0a5a9d004002a9cf9cf7a9d10cf1447a73d2b |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Simplify code for returning partial success of stream send request. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
4b087b28a629cc9388e42fdccdcd929deaa7ac81 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: recvmsg() now returns TIPC ancillary data using correct level (SOL_TIPC) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
499786516fc12791223f075d682a45ea1129eb04 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Improved performance of error checking during socket creation. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
1303e8f173a8a5000ee6e2fba876fec9474ed1f6 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Stream socket send indicates partial success if data partially sent. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
bdd94789d2348e20d13c1d5e477c8cf830dd204b |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Connected send now checks socket state when retrying congested send. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3546c7508d7e97fd855f8ac37afdd09622fa5ce1 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Can now return destination name of form {0,x,y} via ancillary data. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3388007bc4d662e50c2c01a7fb1fa2c31cea98ad |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Implied connect now saves dest name for retrieval as ancillary data. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
6b384de853c9f05e5e6da6c95edb475b96dd2cc1 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed connect() to detect a dest address that is missing or too short. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
e9024f0f79c3f847a793d6a16bf4fefc6d7a4649 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Non-operation-affecting corrections to comments & function definitions. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
687a25f1cdfc6ee1f2f60f299dbd294908eb0d59 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Validate entire interface name when locating bearer to enable. This fix prevents a bearer from being enabled using the wrong interface. For example, specifying "eth:eth14" might enable "eth:eth1" by mistake. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com>
th_media.c
|
a592ea6362a967a49eb4b5d1cd36b78d8f180622 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Added support for MODULE_VERSION capability. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
8b1f0a92e98a67e1e69aa37d538f8956d1640cba |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fix misleading comment in buf_discard() routine. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
70cb23477019b8739d23ead223539c7e6dfc509c |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Fixed privilege checking typo in dest_name_check(). This patch originated by Stephane Ouellette <ouellettes@videotron.ca>. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ocket.c
|
3ac90216abc7d39e694533aec2805efeb06bf8ac |
26-Jun-2006 |
Eric Sesterhenn <snakebyte@gmx.de> |
[TIPC] Fix for NULL pointer dereference This fixes a bug spotted by the coverity checker, bug id #366. If (mod(seqno - prev) != 1) we set buf to NULL, dereference it in the for case, and set it to whatever value happes to be at adress 0+next, if it happens to be non-zero, we even stay in the loop. It seems that the author intended to break there. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
a4e0927902508a5f7f04be56d3c3e1b174481705 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Allow compilation when CONFIG_TIPC_DEBUG is not set. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.h
|
d356eeba8e34786621d85468e5176052813a3059 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Multicast link failure now resets all links to "nacking" node. This fix prevents node from crashing. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
ink.c
|
260082471ed3f6d751e9767e5a278d4e495d83f7 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Links now validate destination node specified by incoming messages. This fix prevents link flopping and name table inconsistency problems arising when a node is assigned a different <Z.C.N> value than it used previously. (Changing the <Z.C.N> value causes other nodes to have two link endpoints sending to the same MAC address using two different destination <Z.C.N> values, requiring the receiving node to filter out the unwanted messages.) Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
|
9688243b635ecede23fe4492ba23f36439398095 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Allow ports to receive multicast messages through native API. This fix prevents a kernel panic if an application mistakenly sends a multicast message to TIPC's topology service or configuration service. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ort.c
|
49384507896ee26e67266cebef6b6a9f2e31081c |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Corrected potential misuse of tipc_media_addr structure. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
2535ec50b7a51833ff65dc97ca85e1155d4090f8 |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Use correct upper bound when validating network zone number. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ore.c
|
9ab230f82f404e534387dda6067072291441a34d |
26-Jun-2006 |
Allan Stephens <allan.stephens@windriver.com> |
[TIPC]: Prevent name table corruption if no room for new publication Now exits cleanly if attempt to allocate larger array of subsequences fails, without losing track of pointer to existing array. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_table.c
|
5e3c8854c1898828ffb0141d4ac4e6190aa9eb4e |
26-Jun-2006 |
Jon Maloy <jon.maloy@ericsson.com> |
[TIPC] Improved tolerance to promiscuous mode interface Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
th_media.c
|
63903ca6af3d9424a0c2b176f927fa7e7ab2ae8e |
18-Apr-2006 |
Jesper Juhl <jesper.juhl@gmail.com> |
[NET]: Remove redundant NULL checks before [kv]free Redundant NULL check before kfree removal from net/ Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: James Morris <jmorris@namei.org> Signed-off-by: David S. Miller <davem@davemloft.net>
ame_distr.c
|
53b3531bbbf70ac7551b32d1acc229d94de52658 |
24-Mar-2006 |
Alexey Dobriyan <adobriyan@gmail.com> |
[PATCH] s/;;/;/g Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
ink.c
|
87546b1c25daa2c72ba6741c777f76c1eac6e2d9 |
21-Mar-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC]: Avoid compiler warning Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
luster.c
|
de70c5ba43b3442b99e94dc35bba2bbced168a84 |
21-Mar-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC]: Reduce stack usage The node_map struct can be quite large (516 bytes) and allocating two of them on the stack is not a good idea since we might only have a 4K stack to start with. Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
|
988f088a8e9e555dc99ced83690967fad3d905f6 |
21-Mar-2006 |
Adrian Bunk <bunk@stusta.de> |
[TIPC]: Cleanups This patch contains the following possible cleanups: - make needlessly global code static - #if 0 the following unused global functions: - name_table.c: tipc_nametbl_print() - name_table.c: tipc_nametbl_dump() - net.c: tipc_net_next_node() Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
luster.c
iscover.c
ame_table.c
et.c
ode.c
|
7c501a5960a1bdf3b9eaef262916dc67107ff2b5 |
21-Mar-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC]: Remove unused functions Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
ink.c
ort.c
|
05790c6456f144024e655710347b3df499260374 |
21-Mar-2006 |
Sam Ravnborg <sam@ravnborg.org> |
[TIPC]: Remove inlines from *.c With reference to latest discussions on linux-kernel with respect to inline here is a patch for tipc to remove all inlines as used in the .c files. See also chapter 14 in Documentation/CodingStyle. Before: text data bss dec hex filename 102990 5292 1752 110034 1add2 tipc.o Now: text data bss dec hex filename 101190 5292 1752 108234 1a6ca tipc.o This is a nice text size reduction which will improve icache usage. In some cases bigger (> 4 lines) functions where declared inline and used in many places, they are most probarly no longer inlined by gcc resulting in the size reduction. There are several one liners that no longer are declared inline, but gcc should inline these just fine without the inline hint. With this patch applied one warning is added about an unused static function - that was hidded by utilising inline before. The function in question were kept so this patch is solely a inline removal patch. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
ink.c
ame_table.c
ort.c
ocket.c
ubscr.c
|
1fc54d8f49c1270c584803437fb7c0ac543588c1 |
21-Mar-2006 |
Sam Ravnborg <sam@ravnborg.org> |
[TIPC]: Fix simple sparse warnings Tried to run the new tipc stack through sparse. Following patch fixes all cases where 0 was used as replacement of NULL. Use NULL to document this is a pointer and to silence sparse. This brough sparse warning count down with 127 to 24 warnings. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
earer.c
luster.c
luster.h
onfig.c
bg.c
th_media.c
ink.c
ame_distr.c
ame_table.c
et.c
ode.c
ode.h
ode_subscr.c
ort.c
ef.c
ef.h
ocket.c
ubscr.c
ser_reg.c
one.c
|
4323add67792ced172d0d93b8b2e6187023115f1 |
18-Jan-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC] Avoid polluting the global namespace This patch adds a tipc_ prefix to all externally visible symbols. Signed-off-by: Per Liden <per.liden@ericsson.com>
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ubscr.h
ser_reg.c
ser_reg.h
one.c
one.h
|
c11ac3f236d73dd00c21ab4f06166606dea71ef3 |
16-Jan-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC] Add help text for TIPC configuration option Signed-off-by: Per Liden <per.liden@ericsson.com>
config
|
50f9bcddf8be147678c2d4ef8ac5279222d0ae3a |
16-Jan-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC] Remove unused #includes Signed-off-by: Per Liden <per.liden@ericsson.com>
ore.c
th_media.c
ocket.c
|
33a9c4da5ab16192ef1e961d4c4e45c18031cd67 |
16-Jan-2006 |
Per Liden <per.liden@ericsson.com> |
[TIPC] Move ethernet protocol id to linux/if_ether.h Signed-off-by: Per Liden <per.liden@ericsson.com>
th_media.c
|
16cb4b333c9e7a00ce3b1d74ec0c9b4c2e956910 |
13-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Updated link priority macros Added macros for min/default/max link priority in tipc_config.h. Also renamed TIPC_NUM_LINK_PRI to TIPC_MEDIA_LINK_PRI since that is a more accurate description of what it is used for. Signed-off-by: Per Liden <per.liden@ericsson.com>
cast.c
earer.c
th_media.c
ink.c
|
5f7c3ff6a2e227418d363069ff89cf9d7f01fbc1 |
13-Jan-2006 |
Jon Maloy <jon.maloy@ericsson.com> |
[TIPC] Minor changes to #includes Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
earer.h
onfig.h
ore.h
iscover.h
sg.h
ort.h
|
23b0ca5bf52cef0ab0f0fe247cb91cbef836e7eb |
13-Jan-2006 |
Per Liden <per.liden@ericsson.com> |
[PATCH] genetlink: don't touch module ref count Increasing the module ref count at registration will block the module from ever being unloaded. In fact, genetlink should not care about the owner at all. This patch removes the owner field from the struct registered with genetlink. Signed-off-by: Per Liden <per.liden@ericsson.com> Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
etlink.c
|
880b005f294454d989783d0984dc554dfe3c8214 |
12-Jan-2006 |
David S. Miller <davem@sunset.davemloft.net> |
[TIPC]: Fix 64-bit build warnings. When storing u32 values in a pointer, need to do some long casts to keep GCC happy. Signed-off-by: David S. Miller <davem@davemloft.net>
cast.c
ort.c
ubscr.c
|
593a5f22d8035b1396a958b6bbde9f13c0f09549 |
11-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] More updates of file headers Updated copyright notice to include the year the file was actually created. Information about file creation dates was extracted from the files in the old CVS repository at tipc.sourceforge.net. Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
ddr.c
ddr.h
cast.c
earer.c
earer.h
luster.c
luster.h
onfig.c
ore.h
bg.c
bg.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ser_reg.c
ser_reg.h
one.c
one.h
|
9da1c8b694f8e72a16f259614caaae50cbcdaf10 |
11-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Update of file headers The copyright statements from different parts of Ericsson have been merged into one. Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ubscr.h
ser_reg.c
ser_reg.h
one.c
one.h
|
d0a14a9dbdf613d9307c4b748b03a11678fe8d16 |
11-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Cleaned up info/warn/err macros Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
ore.h
etlink.c
ocket.c
ubscr.c
|
9ea1fd3c1a15c620d1e3d0aa269d34b705477003 |
11-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] License header update The license header in each file now more clearly state that this code is licensed under a dual BSD/GPL. Before this was only evident if you looked at the MODULE_LICENSE line in core.c. Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ubscr.h
ser_reg.c
ser_reg.h
one.c
one.h
|
ea714ccda5d5858ee677a77cf33dbaf34a0060c3 |
11-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Moved configuration interface into tipc_config.h Restored the old tipc_config.h to get a cleaner division between the interfaces used by normal TIPC users and TIPC administration utilities. Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
onfig.h
ocket.c
|
b70e4f45a8d8125e4f420c62e71688b8a766689a |
10-Jan-2006 |
Jon Maloy <jon.maloy@ericsson.com> |
[TIPC} Fixed bug in disc_timeout() Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
iscover.c
etlink.c
|
1dba9743337cabacea79e47ed6d709e636c5ed47 |
05-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Use dynamically allocated family id with NETLINK_GENERIC Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
etlink.c
|
b97bf3fd8f6a16966d4f18983b2c40993ff937d4 |
02-Jan-2006 |
Per Liden <per.liden@nospam.ericsson.com> |
[TIPC] Initial merge TIPC (Transparent Inter Process Communication) is a protocol designed for intra cluster communication. For more information see http://tipc.sourceforge.net Signed-off-by: Per Liden <per.liden@nospam.ericsson.com>
config
akefile
ddr.c
ddr.h
cast.c
cast.h
earer.c
earer.h
luster.c
luster.h
onfig.c
onfig.h
ore.c
ore.h
bg.c
bg.h
iscover.c
iscover.h
th_media.c
andler.c
ink.c
ink.h
sg.c
sg.h
ame_distr.c
ame_distr.h
ame_table.c
ame_table.h
et.c
et.h
etlink.c
ode.c
ode.h
ode_subscr.c
ode_subscr.h
ort.c
ort.h
ef.c
ef.h
ocket.c
ubscr.c
ubscr.h
ser_reg.c
ser_reg.h
one.c
one.h
|