From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Peter Butler <pbutler@sonusnet.com>,
Dongsheng Song <dongsheng.song@gmail.com>,
Fengguang Wu <fengguang.wu@intel.com>,
Daniel Borkmann <dborkman@redhat.com>,
Matija Glavinic Pecotic <matija.glavinic-pecotic.ext@nsn.com>,
Alexander Sverdlin <alexander.sverdlin@nsn.com>,
Vlad Yasevich <vyasevich@gmail.com>,
"David S. Miller" <davem@davemloft.net>
Subject: [PATCH 3.14 077/140] Revert "net: sctp: Fix a_rwnd/rwnd management to reflect real state of the receivers buffer"
Date: Wed, 28 May 2014 21:33:36 -0700 [thread overview]
Message-ID: <20140529043059.488404776@linuxfoundation.org> (raw)
In-Reply-To: <20140529043049.661315084@linuxfoundation.org>
3.14-stable review patch. If anyone has any objections, please let me know.
------------------
From: Daniel Borkmann <dborkman@redhat.com>
[ Upstream commit 362d52040c71f6e8d8158be48c812d7729cb8df1 ]
This reverts commit ef2820a735f7 ("net: sctp: Fix a_rwnd/rwnd management
to reflect real state of the receiver's buffer") as it introduced a
serious performance regression on SCTP over IPv4 and IPv6, though a not
as dramatic on the latter. Measurements are on 10Gbit/s with ixgbe NICs.
Current state:
[root@Lab200slot2 ~]# iperf3 --sctp -4 -c 192.168.241.3 -V -l 1452 -t 60
iperf version 3.0.1 (10 January 2014)
Linux Lab200slot2 3.14.0 #1 SMP Thu Apr 3 23:18:29 EDT 2014 x86_64
Time: Fri, 11 Apr 2014 17:56:21 GMT
Connecting to host 192.168.241.3, port 5201
Cookie: Lab200slot2.1397238981.812898.548918
[ 4] local 192.168.241.2 port 38616 connected to 192.168.241.3 port 5201
Starting Test: protocol: SCTP, 1 streams, 1452 byte blocks, omitting 0 seconds, 60 second test
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.09 sec 20.8 MBytes 161 Mbits/sec
[ 4] 1.09-2.13 sec 10.8 MBytes 86.8 Mbits/sec
[ 4] 2.13-3.15 sec 3.57 MBytes 29.5 Mbits/sec
[ 4] 3.15-4.16 sec 4.33 MBytes 35.7 Mbits/sec
[ 4] 4.16-6.21 sec 10.4 MBytes 42.7 Mbits/sec
[ 4] 6.21-6.21 sec 0.00 Bytes 0.00 bits/sec
[ 4] 6.21-7.35 sec 34.6 MBytes 253 Mbits/sec
[ 4] 7.35-11.45 sec 22.0 MBytes 45.0 Mbits/sec
[ 4] 11.45-11.45 sec 0.00 Bytes 0.00 bits/sec
[ 4] 11.45-11.45 sec 0.00 Bytes 0.00 bits/sec
[ 4] 11.45-11.45 sec 0.00 Bytes 0.00 bits/sec
[ 4] 11.45-12.51 sec 16.0 MBytes 126 Mbits/sec
[ 4] 12.51-13.59 sec 20.3 MBytes 158 Mbits/sec
[ 4] 13.59-14.65 sec 13.4 MBytes 107 Mbits/sec
[ 4] 14.65-16.79 sec 33.3 MBytes 130 Mbits/sec
[ 4] 16.79-16.79 sec 0.00 Bytes 0.00 bits/sec
[ 4] 16.79-17.82 sec 5.94 MBytes 48.7 Mbits/sec
(etc)
[root@Lab200slot2 ~]# iperf3 --sctp -6 -c 2001:db8:0:f101::1 -V -l 1400 -t 60
iperf version 3.0.1 (10 January 2014)
Linux Lab200slot2 3.14.0 #1 SMP Thu Apr 3 23:18:29 EDT 2014 x86_64
Time: Fri, 11 Apr 2014 19:08:41 GMT
Connecting to host 2001:db8:0:f101::1, port 5201
Cookie: Lab200slot2.1397243321.714295.2b3f7c
[ 4] local 2001:db8:0:f101::2 port 55804 connected to 2001:db8:0:f101::1 port 5201
Starting Test: protocol: SCTP, 1 streams, 1400 byte blocks, omitting 0 seconds, 60 second test
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 169 MBytes 1.42 Gbits/sec
[ 4] 1.00-2.00 sec 201 MBytes 1.69 Gbits/sec
[ 4] 2.00-3.00 sec 188 MBytes 1.58 Gbits/sec
[ 4] 3.00-4.00 sec 174 MBytes 1.46 Gbits/sec
[ 4] 4.00-5.00 sec 165 MBytes 1.39 Gbits/sec
[ 4] 5.00-6.00 sec 199 MBytes 1.67 Gbits/sec
[ 4] 6.00-7.00 sec 163 MBytes 1.36 Gbits/sec
[ 4] 7.00-8.00 sec 174 MBytes 1.46 Gbits/sec
[ 4] 8.00-9.00 sec 193 MBytes 1.62 Gbits/sec
[ 4] 9.00-10.00 sec 196 MBytes 1.65 Gbits/sec
[ 4] 10.00-11.00 sec 157 MBytes 1.31 Gbits/sec
[ 4] 11.00-12.00 sec 175 MBytes 1.47 Gbits/sec
[ 4] 12.00-13.00 sec 192 MBytes 1.61 Gbits/sec
[ 4] 13.00-14.00 sec 199 MBytes 1.67 Gbits/sec
(etc)
After patch:
[root@Lab200slot2 ~]# iperf3 --sctp -4 -c 192.168.240.3 -V -l 1452 -t 60
iperf version 3.0.1 (10 January 2014)
Linux Lab200slot2 3.14.0+ #1 SMP Mon Apr 14 12:06:40 EDT 2014 x86_64
Time: Mon, 14 Apr 2014 16:40:48 GMT
Connecting to host 192.168.240.3, port 5201
Cookie: Lab200slot2.1397493648.413274.65e131
[ 4] local 192.168.240.2 port 50548 connected to 192.168.240.3 port 5201
Starting Test: protocol: SCTP, 1 streams, 1452 byte blocks, omitting 0 seconds, 60 second test
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 240 MBytes 2.02 Gbits/sec
[ 4] 1.00-2.00 sec 239 MBytes 2.01 Gbits/sec
[ 4] 2.00-3.00 sec 240 MBytes 2.01 Gbits/sec
[ 4] 3.00-4.00 sec 239 MBytes 2.00 Gbits/sec
[ 4] 4.00-5.00 sec 245 MBytes 2.05 Gbits/sec
[ 4] 5.00-6.00 sec 240 MBytes 2.01 Gbits/sec
[ 4] 6.00-7.00 sec 240 MBytes 2.02 Gbits/sec
[ 4] 7.00-8.00 sec 239 MBytes 2.01 Gbits/sec
With the reverted patch applied, the SCTP/IPv4 performance is back
to normal on latest upstream for IPv4 and IPv6 and has same throughput
as 3.4.2 test kernel, steady and interval reports are smooth again.
Fixes: ef2820a735f7 ("net: sctp: Fix a_rwnd/rwnd management to reflect real state of the receiver's buffer")
Reported-by: Peter Butler <pbutler@sonusnet.com>
Reported-by: Dongsheng Song <dongsheng.song@gmail.com>
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Tested-by: Peter Butler <pbutler@sonusnet.com>
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Cc: Matija Glavinic Pecotic <matija.glavinic-pecotic.ext@nsn.com>
Cc: Alexander Sverdlin <alexander.sverdlin@nsn.com>
Cc: Vlad Yasevich <vyasevich@gmail.com>
Acked-by: Vlad Yasevich <vyasevich@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
include/net/sctp/structs.h | 14 +++++++
net/sctp/associola.c | 82 +++++++++++++++++++++++++++++++++++----------
net/sctp/sm_statefuns.c | 2 -
net/sctp/socket.c | 6 +++
net/sctp/ulpevent.c | 8 +---
5 files changed, 87 insertions(+), 25 deletions(-)
--- a/include/net/sctp/structs.h
+++ b/include/net/sctp/structs.h
@@ -1653,6 +1653,17 @@ struct sctp_association {
/* This is the last advertised value of rwnd over a SACK chunk. */
__u32 a_rwnd;
+ /* Number of bytes by which the rwnd has slopped. The rwnd is allowed
+ * to slop over a maximum of the association's frag_point.
+ */
+ __u32 rwnd_over;
+
+ /* Keeps treack of rwnd pressure. This happens when we have
+ * a window, but not recevie buffer (i.e small packets). This one
+ * is releases slowly (1 PMTU at a time ).
+ */
+ __u32 rwnd_press;
+
/* This is the sndbuf size in use for the association.
* This corresponds to the sndbuf size for the association,
* as specified in the sk->sndbuf.
@@ -1881,7 +1892,8 @@ void sctp_assoc_update(struct sctp_assoc
__u32 sctp_association_get_next_tsn(struct sctp_association *);
void sctp_assoc_sync_pmtu(struct sock *, struct sctp_association *);
-void sctp_assoc_rwnd_update(struct sctp_association *, bool);
+void sctp_assoc_rwnd_increase(struct sctp_association *, unsigned int);
+void sctp_assoc_rwnd_decrease(struct sctp_association *, unsigned int);
void sctp_assoc_set_primary(struct sctp_association *,
struct sctp_transport *);
void sctp_assoc_del_nonprimary_peers(struct sctp_association *,
--- a/net/sctp/associola.c
+++ b/net/sctp/associola.c
@@ -1396,35 +1396,44 @@ static inline bool sctp_peer_needs_updat
return false;
}
-/* Update asoc's rwnd for the approximated state in the buffer,
- * and check whether SACK needs to be sent.
- */
-void sctp_assoc_rwnd_update(struct sctp_association *asoc, bool update_peer)
+/* Increase asoc's rwnd by len and send any window update SACK if needed. */
+void sctp_assoc_rwnd_increase(struct sctp_association *asoc, unsigned int len)
{
- int rx_count;
struct sctp_chunk *sack;
struct timer_list *timer;
- if (asoc->ep->rcvbuf_policy)
- rx_count = atomic_read(&asoc->rmem_alloc);
- else
- rx_count = atomic_read(&asoc->base.sk->sk_rmem_alloc);
+ if (asoc->rwnd_over) {
+ if (asoc->rwnd_over >= len) {
+ asoc->rwnd_over -= len;
+ } else {
+ asoc->rwnd += (len - asoc->rwnd_over);
+ asoc->rwnd_over = 0;
+ }
+ } else {
+ asoc->rwnd += len;
+ }
- if ((asoc->base.sk->sk_rcvbuf - rx_count) > 0)
- asoc->rwnd = (asoc->base.sk->sk_rcvbuf - rx_count) >> 1;
- else
- asoc->rwnd = 0;
+ /* If we had window pressure, start recovering it
+ * once our rwnd had reached the accumulated pressure
+ * threshold. The idea is to recover slowly, but up
+ * to the initial advertised window.
+ */
+ if (asoc->rwnd_press && asoc->rwnd >= asoc->rwnd_press) {
+ int change = min(asoc->pathmtu, asoc->rwnd_press);
+ asoc->rwnd += change;
+ asoc->rwnd_press -= change;
+ }
- pr_debug("%s: asoc:%p rwnd=%u, rx_count=%d, sk_rcvbuf=%d\n",
- __func__, asoc, asoc->rwnd, rx_count,
- asoc->base.sk->sk_rcvbuf);
+ pr_debug("%s: asoc:%p rwnd increased by %d to (%u, %u) - %u\n",
+ __func__, asoc, len, asoc->rwnd, asoc->rwnd_over,
+ asoc->a_rwnd);
/* Send a window update SACK if the rwnd has increased by at least the
* minimum of the association's PMTU and half of the receive buffer.
* The algorithm used is similar to the one described in
* Section 4.2.3.3 of RFC 1122.
*/
- if (update_peer && sctp_peer_needs_update(asoc)) {
+ if (sctp_peer_needs_update(asoc)) {
asoc->a_rwnd = asoc->rwnd;
pr_debug("%s: sending window update SACK- asoc:%p rwnd:%u "
@@ -1446,6 +1455,45 @@ void sctp_assoc_rwnd_update(struct sctp_
}
}
+/* Decrease asoc's rwnd by len. */
+void sctp_assoc_rwnd_decrease(struct sctp_association *asoc, unsigned int len)
+{
+ int rx_count;
+ int over = 0;
+
+ if (unlikely(!asoc->rwnd || asoc->rwnd_over))
+ pr_debug("%s: association:%p has asoc->rwnd:%u, "
+ "asoc->rwnd_over:%u!\n", __func__, asoc,
+ asoc->rwnd, asoc->rwnd_over);
+
+ if (asoc->ep->rcvbuf_policy)
+ rx_count = atomic_read(&asoc->rmem_alloc);
+ else
+ rx_count = atomic_read(&asoc->base.sk->sk_rmem_alloc);
+
+ /* If we've reached or overflowed our receive buffer, announce
+ * a 0 rwnd if rwnd would still be positive. Store the
+ * the potential pressure overflow so that the window can be restored
+ * back to original value.
+ */
+ if (rx_count >= asoc->base.sk->sk_rcvbuf)
+ over = 1;
+
+ if (asoc->rwnd >= len) {
+ asoc->rwnd -= len;
+ if (over) {
+ asoc->rwnd_press += asoc->rwnd;
+ asoc->rwnd = 0;
+ }
+ } else {
+ asoc->rwnd_over = len - asoc->rwnd;
+ asoc->rwnd = 0;
+ }
+
+ pr_debug("%s: asoc:%p rwnd decreased by %d to (%u, %u, %u)\n",
+ __func__, asoc, len, asoc->rwnd, asoc->rwnd_over,
+ asoc->rwnd_press);
+}
/* Build the bind address list for the association based on info from the
* local endpoint and the remote peer.
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -6178,7 +6178,7 @@ static int sctp_eat_data(const struct sc
* PMTU. In cases, such as loopback, this might be a rather
* large spill over.
*/
- if ((!chunk->data_accepted) && (!asoc->rwnd ||
+ if ((!chunk->data_accepted) && (!asoc->rwnd || asoc->rwnd_over ||
(datalen > asoc->rwnd + asoc->frag_point))) {
/* If this is the next TSN, consider reneging to make
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -2115,6 +2115,12 @@ static int sctp_recvmsg(struct kiocb *io
sctp_skb_pull(skb, copied);
skb_queue_head(&sk->sk_receive_queue, skb);
+ /* When only partial message is copied to the user, increase
+ * rwnd by that amount. If all the data in the skb is read,
+ * rwnd is updated when the event is freed.
+ */
+ if (!sctp_ulpevent_is_notification(event))
+ sctp_assoc_rwnd_increase(event->asoc, copied);
goto out;
} else if ((event->msg_flags & MSG_NOTIFICATION) ||
(event->msg_flags & MSG_EOR))
--- a/net/sctp/ulpevent.c
+++ b/net/sctp/ulpevent.c
@@ -989,7 +989,7 @@ static void sctp_ulpevent_receive_data(s
skb = sctp_event2skb(event);
/* Set the owner and charge rwnd for bytes received. */
sctp_ulpevent_set_owner(event, asoc);
- sctp_assoc_rwnd_update(asoc, false);
+ sctp_assoc_rwnd_decrease(asoc, skb_headlen(skb));
if (!skb->data_len)
return;
@@ -1011,7 +1011,6 @@ static void sctp_ulpevent_release_data(s
{
struct sk_buff *skb, *frag;
unsigned int len;
- struct sctp_association *asoc;
/* Current stack structures assume that the rcv buffer is
* per socket. For UDP style sockets this is not true as
@@ -1036,11 +1035,8 @@ static void sctp_ulpevent_release_data(s
}
done:
- asoc = event->asoc;
- sctp_association_hold(asoc);
+ sctp_assoc_rwnd_increase(event->asoc, len);
sctp_ulpevent_release_owner(event);
- sctp_assoc_rwnd_update(asoc, true);
- sctp_association_put(asoc);
}
static void sctp_ulpevent_release_frag_data(struct sctp_ulpevent *event)
next prev parent reply other threads:[~2014-05-29 4:35 UTC|newest]
Thread overview: 167+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-29 4:32 [PATCH 3.14 000/140] 3.14.5-stable review Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 001/140] scsi: fix our current target reap infrastructure Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 002/140] SCSI: dual scan thread bug fix Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 003/140] SCSI: megaraid: missing bounds check in mimd_to_kioc() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 004/140] KVM: x86: remove WARN_ON from get_kernel_ns() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 005/140] tools lib traceevent: Fix memory leak in pretty_print() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 006/140] pid: get pid_t ppid of task in init_pid_ns Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 007/140] audit: convert PPIDs to the inital PID namespace Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 008/140] netfilter: nf_tables: fix nft_cmp_fast failure on big endian for size < 4 Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 009/140] netfilter: nf_conntrack: reserve two bytes for nf_ct_ext->len Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 010/140] blktrace: fix accounting of partially completed requests Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 011/140] netfilter: Cant fail and free after table replacement Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 012/140] netfilter: nf_tables: set names cannot be larger than 15 bytes Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 013/140] x86,preempt: Fix preemption for i386 Greg Kroah-Hartman
2014-05-29 4:32 ` Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 014/140] tracepoint: Do not waste memory on mods with no tracepoints Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 015/140] rbd: fix error paths in rbd_img_request_fill() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 016/140] [PATCH for stable 3.14 only 1/1] drm/i915: restore QUIRK_NO_PCH_PWM_ENABLE Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 017/140] tick-common: Fix wrong check in tick_check_replacement() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 018/140] tick-sched: Dont call update_wall_time() when delta is lesser than tick_period Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 019/140] tick-sched: Check tick_nohz_enabled in tick_nohz_switch_to_nohz() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 020/140] parisc: change value of SHMLBA from 0x00400000 to PAGE_SIZE Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 021/140] parisc: fix epoll_pwait syscall on compat kernel Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 022/140] parisc: remove _STK_LIM_MAX override Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 023/140] dont bother with {get,put}_write_access() on non-regular files Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 024/140] cifs: Wait for writebacks to complete before attempting write Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 025/140] xen/spinlock: Dont enable them unconditionally Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 026/140] xen/events/fifo: correctly align bitops Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 027/140] Revert "HID: microsoft: Add IDs for Surface Type/Touch Cover 2" Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 028/140] HID: core: do not scan constant input report Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 029/140] HID: add NO_INIT_REPORTS quirk for Synaptics Touch Pad V 103S Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 030/140] md/raid1: r1buf_pool_alloc: free allocate pages when subsequent allocation fails Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 031/140] tracing/uprobes: Fix uprobe_cpu_buffer memory leak Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 032/140] tracing: Use rcu_dereference_sched() for trace event triggers Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 033/140] init/Kconfig: move the trusted keyring config option to general setup Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 034/140] thp: close race between split and zap huge pages Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 035/140] mm/hugetlb.c: add cond_resched_lock() in return_unused_surplus_pages() Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 036/140] mm: use paravirt friendly ops for NUMA hinting ptes Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 037/140] USB: cdc-acm: Remove Motorola/Telit H24 serial interfaces from ACM driver Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 038/140] USB: cp210x: Add 8281 (Nanotec Plug & Drive) Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 039/140] USB: usb_wwan: fix handling of missing bulk endpoints Greg Kroah-Hartman
2014-05-29 4:32 ` [PATCH 3.14 040/140] USB: serial: ftdi_sio: add id for Brainboxes serial cards Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 041/140] usb: option driver, add support for Telit UE910v2 Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 042/140] Revert "USB: serial: add usbid for dell wwan card to sierra.c" Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 043/140] USB: serial: fix sysfs-attribute removal deadlock Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 044/140] USB: io_ti: fix firmware download on big-endian machines Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 045/140] usb: qcserial: add Sierra Wireless EM7355 Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 046/140] usb: qcserial: add Sierra Wireless MC73xx Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 047/140] usb: qcserial: add Sierra Wireless MC7305/MC7355 Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 048/140] usb: option: add Olivetti Olicard 500 Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 049/140] usb: option: add Alcatel L800MA Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 050/140] usb: option: add and update a number of CMOTech devices Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 051/140] serial: omap: Fix missing pm_runtime_resume handling by simplifying code Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 052/140] mlx4_en: dont use napi_synchronize inside mlx4_en_netpoll Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 053/140] fs: Dont return 0 from get_anon_bdev Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 054/140] wl18xx: align event mailbox with current fw Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 055/140] drm/vmwgfx: correct fb_fix_screeninfo.line_length Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 056/140] drm/vmwgfx: Fix query buffer locking order violation Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 057/140] drm/vmwgfx: Make sure user-space cant DMA across buffer object boundaries v2 Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 058/140] drm/qxl: unset a pointer in sync_obj_unref Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 059/140] drm/radeon: clear needs_reset flag if IB test fails Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 060/140] drm/radeon: call drm_edid_to_eld when we update the edid Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 061/140] drm/radeon: fix endian swap on hawaii clear state buffer setup Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 062/140] drm/radeon: fix typo in spectre_golden_registers Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 063/140] drm/i915/tv: fix gen4 composite s-video tv-out Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 064/140] drm/i915: Do not dereference pointers from ring buffer in evict event Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 065/140] net: sctp: wake up all assocs if sndbuf policy is per socket Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 066/140] net: sctp: test if association is dead in sctp_wake_up_waiters Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 067/140] l2tp: take PMTU from tunnel UDP socket Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 068/140] net: core: dont account for udp header size when computing seglen Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 069/140] bonding: Remove debug_fs files when module init fails Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 070/140] bridge: Fix double free and memory leak around br_allowed_ingress Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 071/140] ipv6: Limit mtu to 65575 bytes Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 072/140] gre: dont allow to add the same tunnel twice Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 073/140] vti: " Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 074/140] net: ipv4: current group_info should be put after using Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 075/140] ipv4: return valid RTA_IIF on ip route get Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 076/140] filter: prevent nla extensions to peek beyond the end of the message Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman [this message]
2014-05-29 4:33 ` [PATCH 3.14 078/140] net: Start with correct mac_len in skb_network_protocol Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 079/140] ip6_gre: dont allow to remove the fb_tunnel_dev Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 080/140] vlan: Fix lockdep warning when vlan dev handle notification Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 081/140] net: Find the nesting level of a given device by type Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 082/140] net: Allow for more then a single subclass for netif_addr_lock Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 083/140] vlan: Fix lockdep warning with stacked vlan devices Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 084/140] macvlan: Fix lockdep warnings with stacked macvlan devices Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 085/140] tg3: update rx_jumbo_pending ring param only when jumbo frames are enabled Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 086/140] net: sctp: cache auth_enable per endpoint Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 087/140] net: Fix ns_capable check in sock_diag_put_filterinfo Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 088/140] rtnetlink: Warn when interfaces information wont fit in our packet Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 089/140] rtnetlink: Only supply IFLA_VF_PORTS information when RTEXT_FILTER_VF is set Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 090/140] ipv6: fib: fix fib dump restart Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 091/140] bridge: Handle IFLA_ADDRESS correctly when creating bridge device Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 092/140] sctp: reset flowi4_oif parameter on route lookup Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 093/140] net: qmi_wwan: add Sierra Wireless EM7355 Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 094/140] net: qmi_wwan: add Sierra Wireless MC73xx Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 095/140] net: qmi_wwan: add Sierra Wireless MC7305/MC7355 Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 096/140] net: qmi_wwan: add Olivetti Olicard 500 Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 097/140] net: qmi_wwan: add Alcatel L800MA Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 098/140] net: qmi_wwan: add a number of CMOTech devices Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 099/140] net: qmi_wwan: add a number of Dell devices Greg Kroah-Hartman
2014-05-29 4:33 ` Greg Kroah-Hartman
2014-05-29 4:33 ` [PATCH 3.14 100/140] slip: fix spinlock variant Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 101/140] net: sctp: Dont transition to PF state when transport has exhausted Path.Max.Retrans Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 102/140] mactap: Fix checksum errors for non-gso packets in bridge mode Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 103/140] Revert "macvlan : fix checksums error when we are in bridge mode" Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 104/140] tcp_cubic: fix the range of delayed_ack Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 105/140] net: sched: lock imbalance in hhf qdisc Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 106/140] vsock: Make transport the proto owner Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 107/140] net: cdc_ncm: fix buffer overflow Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 108/140] net/mlx4_core: Dont issue PCIe speed/width checks for VFs Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 109/140] ip_tunnel: Set network header properly for IP_ECN_decapsulate() Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 110/140] ipv4: ip_tunnels: disable cache for nbma gre tunnels Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 111/140] net: cdc_mbim: __vlan_find_dev_deep need rcu_read_lock Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 112/140] net: ipv4: ip_forward: fix inverted local_df test Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 113/140] net: ipv6: send pkttoobig immediately if orig frag size > mtu Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 114/140] ipv4: fib_semantics: increment fib_info_cnt after fib_info allocation Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 115/140] net: cdc_mbim: handle unaccelerated VLAN tagged frames Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 116/140] macvlan: Dont propagate IFF_ALLMULTI changes on down interfaces Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 117/140] sfc: fix calling of free_irq with already free vector Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 118/140] ip6_tunnel: fix potential NULL pointer dereference Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 119/140] neigh: set nud_state to NUD_INCOMPLETE when probing router reachability Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 120/140] batman-adv: fix neigh_ifinfo imbalance Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 121/140] batman-adv: fix neigh reference imbalance Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 122/140] batman-adv: always run purge_orig_neighbors Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 123/140] batman-adv: fix removing neigh_ifinfo Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 124/140] net: filter: x86: fix JIT address randomization Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 125/140] net: filter: s390: " Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 126/140] net: avoid dependency of net_get_random_once on nop patching Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 127/140] ipv6: fix calculation of option len in ip6_append_data Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 128/140] rtnetlink: wait for unregistering devices in rtnl_link_unregister() Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 129/140] net: phy: Dont call phy_resume if phy_init_hw failed Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 130/140] bonding: fix out of range parameters for bond_intmax_tbl Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 131/140] net: gro: make sure skb->cb[] initial content has not to be zero Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 132/140] batman-adv: fix indirect hard_iface NULL dereference Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 133/140] batman-adv: fix reference counting imbalance while sending fragment Greg Kroah-Hartman
2014-05-29 4:34 ` Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 134/140] batman-adv: increase orig refcount when storing ref in gw_node Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 135/140] batman-adv: fix local TT check for outgoing arp requests in DAT Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 136/140] ip_tunnel: Initialize the fallback device properly Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 137/140] net_sched: fix an oops in tcindex filter Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 138/140] ipv6: gro: fix CHECKSUM_COMPLETE support Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 139/140] ipv4: initialise the itag variable in __mkroute_input Greg Kroah-Hartman
2014-05-29 4:34 ` [PATCH 3.14 140/140] net-gro: reset skb->truesize in napi_reuse_skb() Greg Kroah-Hartman
2014-05-29 5:59 ` [PATCH 3.14 000/140] 3.14.5-stable review NeilBrown
2014-05-29 14:18 ` Greg Kroah-Hartman
2014-05-30 19:43 ` Shuah Khan
2014-05-30 23:14 ` Greg Kroah-Hartman
2014-05-29 15:06 ` Guenter Roeck
2014-05-29 18:21 ` Greg Kroah-Hartman
2014-05-29 21:07 ` Guenter Roeck
2014-05-29 21:27 ` Linus Torvalds
2014-05-30 17:14 ` Guenter Roeck
[not found] ` <pan.2014.05.29.08.07.55@googlemail.com>
2014-05-29 18:21 ` Greg KH
2014-05-29 18:21 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140529043059.488404776@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=alexander.sverdlin@nsn.com \
--cc=davem@davemloft.net \
--cc=dborkman@redhat.com \
--cc=dongsheng.song@gmail.com \
--cc=fengguang.wu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matija.glavinic-pecotic.ext@nsn.com \
--cc=pbutler@sonusnet.com \
--cc=stable@vger.kernel.org \
--cc=vyasevich@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.