RE: [PATCH v2 0/4] sctp: fix association hangs due to reassembly/ordering logic
From: Roberts, Lee A. <hidden>
Date: 2013-02-27 20:27:43
-----Original Message----- From: Vlad Yasevich [mailto:vyasevic@redhat.com] Sent: Wednesday, February 27, 2013 1:14 PM To: Roberts, Lee A. Cc: netdev@vger.kernel.org Subject: Re: [PATCH v2 0/4] sctp: fix association hangs due to reassembly/ordering logic On 02/27/2013 01:54 PM, Lee A. Roberts wrote:quoted
From: "Lee A. Roberts" <redacted> This series of patches resolves several SCTP association hangs observed during SCTP stress testing. Observable symptoms include communications hangs with data being held in the association reassembly and/or lobby (ordering) queues. Close examination of reassembly/ordering queues may show either duplicated or missing packets.Hi Lee What changed in this series? I looked through and they don't look different from the prior version? -vlad
Vlad,
In patch #4, routine sctp_ulpq_renege(), the inserted call to sctp_ulpq_partial_delivery()
still used the 3.2.x calling sequence with three arguments.
The first version of patch #4 stated:
+ if (retval <= 0)
+ sctp_ulpq_partial_delivery(ulpq, chunk, gfp);
+ else if (retval == 1)
+ sctp_ulpq_reasm_drain(ulpq);
The second version of patch #4 has corrected the call to sctp_ulpq_partial_delivery():
+ if (retval <= 0)
+ sctp_ulpq_partial_delivery(ulpq, gfp);
+ else if (retval == 1)
+ sctp_ulpq_reasm_drain(ulpq);
I have adjusted the patch comments for yet another version of the patch series.
I'm holding them at the moment to collect any further change requests.
- Lee
quoted
Lee A. Roberts (4): sctp: fix association hangs due to off-by-one errors in sctp_tsnmap_grow() sctp: fix association hangs due to reneging packets below the cumulative TSN ACK point sctp: fix association hangs due to errors when reneging events from the ordering queue sctp: fix association hangs due to partial delivery errors net/sctp/tsnmap.c | 13 ++++---- net/sctp/ulpqueue.c | 87 +++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 78 insertions(+), 22 deletions(-)