10 Feb, 2016
9 commits
-
batman-adv uses a self-written reference implementation which is just based
on atomic_t. This is less obvious when reading the code than kref and
therefore increases the change that the reference counting will be missed.Signed-off-by: Sven Eckelmann
Signed-off-by: Marek Lindner
Signed-off-by: Antonio Quartulli -
batman-adv uses a self-written reference implementation which is just based
on atomic_t. This is less obvious when reading the code than kref and
therefore increases the change that the reference counting will be missed.Signed-off-by: Sven Eckelmann
Signed-off-by: Marek Lindner
Signed-off-by: Antonio Quartulli -
The batadv_tvlv_container* functions state in their kernel-doc that they
require tvlv.container_list_lock. Add an assert to automatically detect
when this might have been ignored by the caller.Signed-off-by: Sven Eckelmann
Signed-off-by: Marek Lindner
Signed-off-by: Antonio Quartulli -
To allow future use of the window protected function with different
maximum sequence numbers, add a parameter to set this value which
was previously hardcoded. Another parameter added for future use is a
flag to return whether the protection window has started.While at it, also fix the kerneldoc.
Signed-off-by: Simon Wunderlich
Signed-off-by: Marek Lindner
Signed-off-by: Antonio Quartulli -
The references to the network device should be dropped inside the release
function for batadv_hard_iface similar to what is done with the batman-adv
internal datastructures.Signed-off-by: Sven Eckelmann
Signed-off-by: Marek Lindner
Signed-off-by: Antonio Quartulli -
Remove the unused code of sxgbe_xpcs.
Reported-by: Julia Lawall
Suggested-by: David S. Miller
Signed-off-by: Jean Sacren
Cc: Byungho An
Cc: Girish K S
Link: http://lkml.kernel.org/r/alpine.DEB.2.10.1601191918470.2531@hadrien
Signed-off-by: David S. Miller -
Sergei Shtylyov says:
====================
Factor out register bit twiddling in the Renesas Ethernet driversHere's a set of 2 patches against DaveM's 'net-next.git' repo. We factor out
the often repeated pattern of reading a register, AND'ing and/or OR'ing some
bits, and then writing the value back.[1/2] ravb: factor out register bit twiddling code
[2/2] sh_eth: factor out register bit twiddling code
====================Signed-off-by: David S. Miller
-
The driver has often repeated pattern of reading a register, AND'ing and/or
OR'ing some bits and writing the value back. Factor the pattern out into
sh_eth_modify() -- this saves 84 bytes of code with ARM gcc 4.7.3.While at it, update Cogent Embedded's copyright.
Signed-off-by: Sergei Shtylyov
Signed-off-by: David S. Miller -
The driver has often repeated pattern of reading a register, AND'ing and/or
OR'ing some bits and writing the value back. Factor the pattern out into
ravb_modify() -- this saves 260 bytes of code with ARM gcc 4.7.3.While at it, update Cogent Embedded's copyrights.
Signed-off-by: Sergei Shtylyov
Signed-off-by: David S. Miller
09 Feb, 2016
10 commits
-
Willem de Bruijn says:
====================
packet: tpacket gso and csum offloadExtend PACKET_VNET_HDR socket option support to packet sockets with
memory mapped rings.Patches 2 and 4 add support to tpacket_rcv and tpacket_snd.
Patch 1 prepares for this by moving the relevant virtio_net_hdr
logic out of packet_snd and packet_rcv into helper functions.GSO transmission requires all headers in the skb linear section.
Patch 3 moves parsing of tx_ring slot headers before skb allocation
to enable allocation with sufficient linear size.Changes
v1->v2:
- fix bounds checks:
- subtract sizeof(vnet_hdr) before comparing tp_len to size_max
- compare tp_len to size_max also with GSO, just do not truncate to MTU
====================Signed-off-by: David S. Miller
-
Support socket option PACKET_VNET_HDR together with PACKET_TX_RING.
When enabled, a struct virtio_net_hdr is expected to precede the data
in the ring. The vnet option must be set before the ring is created.The implementation reuses the existing skb_copy_bits code that is used
when dev->hard_header_len is non-zero. Move this ll_header check to
before the skb alloc and combine it with a test for vnet_hdr->hdr_len.
Allocate and copy the max of the two.Verified with test program at
github.com/wdebruij/kerneltools/blob/master/tests/psock_txring_vnet.cSigned-off-by: Willem de Bruijn
Signed-off-by: David S. Miller -
GSO packet headers must be stored in the linear skb segment.
Move tpacket header parsing before sock_alloc_send_skb. The GSO
follow-on patch will later increase the skb linear argument to
sock_alloc_send_skb if needed for large packets.The header parsing code does not require an allocated skb, so is
safe to move. Later pass to tpacket_fill_skb the computed data
start and length.Signed-off-by: Willem de Bruijn
Signed-off-by: David S. Miller -
Support socket option PACKET_VNET_HDR together with PACKET_RX_RING.
When enabled, a struct virtio_net_hdr will precede the data in the
packet ring slots.Verified with test program at
github.com/wdebruij/kerneltools/blob/master/tests/psock_rxring_vnet.cpkt: 1454269209.798420 len=5066
vnet: gso_type=tcpv4 gso_size=1448 hlen=66 ecn=off
csum: start=34 off=16
eth: proto=0x800
ip: src= dst= proto=6 len=5052Signed-off-by: Willem de Bruijn
Signed-off-by: David S. Miller -
packet_snd and packet_rcv support virtio net headers for GSO.
Move this logic into helper functions to be able to reuse it in
tpacket_snd and tpacket_rcv.This is a straighforward code move with one exception. Instead of
creating and passing a separate gso_type variable, reuse
vnet_hdr.gso_type after conversion from virtio to kernel gso type.Signed-off-by: Willem de Bruijn
Signed-off-by: David S. Miller -
Currently the bonding allows to set ad_actor_system and prio while the
bond device is down, but these are actually applied only if there aren't
any slaves yet (applied to bond device when first slave shows up, and to
slaves at 3ad bind time). After this patch changes are applied immediately
and the new values can be used/seen after the bond's upped so it's not
necessary anymore to release all and enslave again to see the changes.CC: Jay Vosburgh
CC: Veaceslav Falico
CC: Andy Gospodarek
Signed-off-by: Nikolay Aleksandrov
Signed-off-by: Jay Vosburgh
Signed-off-by: David S. Miller -
Jiri Pirko says:
====================
bridge: mdb: flag offloaded mdb entriesThis patchset extends uapi to let the user know if an mdb entry is offloaded.
====================Signed-off-by: David S. Miller
-
Passing the port-group to br_mdb in order to allow direct access to the
structure. br_mdb will later use the structure to reflect HW reflection
status via "state" variable.Signed-off-by: Elad Raz
Signed-off-by: Jiri Pirko
Signed-off-by: David S. Miller -
Change net_bridge_port_group 'state' member to 'flags' and define new set
of flags internal to the kernel.Signed-off-by: Elad Raz
Signed-off-by: Jiri Pirko
Signed-off-by: David S. Miller -
Add new bitmask member 'flags' to br_mdb_entry structure. Adding
MDB_FLAGS_OFFLOAD bit which indicates MDB entries is offloaded to hardware.Signed-off-by: Elad Raz
Signed-off-by: Jiri Pirko
Signed-off-by: David S. Miller
08 Feb, 2016
21 commits
-
remove some redudant brackets, use sizeof(*) instead of sizeof(struct x).
Signed-off-by: Zhang Shengju
Signed-off-by: David S. Miller -
Unintentionally the default was changed to zero, fix
that.Fixes: 12ed8244ed ("ipv4: Namespaceify tcp syncookies sysctl knob")
Signed-off-by: David S. Miller -
Nikolay Borisov says:
====================
Namespaceify more of the tcp sysctl knobsThis patch series continues making more of the tcp-related
sysctl knobs be per net-namespace. Most of these apply per
socket and have global defaults so should be safe and I
don't expect any breakages.Having those per net-namespace is useful when multiple
containers are hosted and it is required to tune the
tcp settings for each independently of the host node.I've split the patches to be per-sysctl but after
the review if the outcome is positive I'm happy
to either send it in one big blob or just.
====================Signed-off-by: David S. Miller
-
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Signed-off-by: Nikolay Borisov
Signed-off-by: David S. Miller -
Antonio Quartulli says:
====================
This batch of patches includes a number of corrections and
improvements for our kernel-doc. These changes also make sure
that our doc is now properly processed by the kernel-doc
parsing tool.Other than that you have a patch updating all the copyright
lines to 2016 and another patch switching the URLs in our
readme, Kconfig and MAINTAINERS file from "http" to "https".
Both by Sven Eckelmann.
====================Signed-off-by: David S. Miller
-
Nikolay Aleksandrov says:
====================
virtio_net: add ethtool get/set settings supportPatch 1 adds ethtool speed/duplex validation functions which check if the
value is defined. Patch 2 adds support for ethtool (get|set)_settings and
uses the validation functions to check the user-supplied values.v2: split in 2 patches to allow everyone to make use of the validation
functions and allow virtio_net devices to be half duplex
v3: added a check to return error if the user tries to change anything else
besides duplex/speed as per Michael's comment
v4: Set port type to PORT_OTHER
v5: clear diff1.port (ignore port) when checking for changes since we set
it now and ethtool uses it in the set requestSorry about the pointless iterations, should've all covered now.
====================Signed-off-by: David S. Miller
-
This patch allows the user to set and retrieve speed and duplex of the
virtio_net device via ethtool. Having this functionality is very helpful
for simulating different environments and also enables the virtio_net
device to participate in operations where proper speed and duplex are
required (e.g. currently bonding lacp mode requires full duplex). Custom
speed and duplex are not allowed, the user-supplied settings are validated
before applying.Example:
$ ethtool eth1
Settings for eth1:
...
Speed: Unknown!
Duplex: Unknown! (255)
$ ethtool -s eth1 speed 1000 duplex full
$ ethtool eth1
Settings for eth1:
...
Speed: 1000Mb/s
Duplex: FullBased on a patch by Roopa Prabhu.
Signed-off-by: Nikolay Aleksandrov
Signed-off-by: David S. Miller -
Add functions which check if the speed/duplex are defined.
Signed-off-by: Nikolay Aleksandrov
Acked-by: Michael S. Tsirkin
Signed-off-by: David S. Miller -
Sowmini Varadhan says:
====================
sunvnet: perf tracepoint hooksAdded some perf tracepoints to help track and debug sunvnet
descriptor state at run-time.
====================Signed-off-by: David S. Miller
-
Use sunvnet perf trace macros to monitor LDC message exchange state.
Signed-off-by: Sowmini Varadhan
Signed-off-by: David S. Miller -
Add perf event macros for support of tracing and instrumentation
of LDC state machineSigned-off-by: Sowmini Varadhan
Signed-off-by: David S. Miller -
Yuchung Cheng says:
====================
tcp: congestion control refactoringThis patch set refactors the sequence of congestion control,
loss recovery, and transmission logic in TCP ack processing.The design goal is to decouple and sequence them in the following order:
0. ACK accounting: free or tag sent packets [unchanged]
1. loss recovery: identify lost/ecn packets and update congestion state
2. congestion control: up/down cwnd and pacing rate based on (1)
3. transmission: send new or retransmit old based on (1) and (2)
This refactoring makes the cwnd changes more clear because it's done
in one place. The packet accounting is also more robust especially
for connections that do not support SACK. Patch 1-4 and 6 are
refactoring and patch 5 improves TCP performance under reordering.
====================Signed-off-by: David S. Miller
-
Refactor and consolidate cwnd and rate updates into a new function
tcp_cong_control().Signed-off-by: Yuchung Cheng
Signed-off-by: Neal Cardwell
Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller