[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150824124713.GZ1097@localhost.localdomain>
Date: Mon, 24 Aug 2015 09:47:13 -0300
From: Marcelo Ricardo Leitner <mleitner@...hat.com>
To: Xin Long <lucien.xin@...il.com>
Cc: network dev <netdev@...r.kernel.org>, davem@...emloft.net
Subject: Re: [PATCH net] sctp: partial chunk should be drop without sending
abort packet
On Mon, Aug 24, 2015 at 06:08:30PM +0800, Xin Long wrote:
> as RFC 4960, 6.10 said, *if the receiver detects a partial chunk, it MUST drop
> the chunk*, we should not send the abort. but if we put this discard to inside
> state machine, it will send abort.
>
> so we just drop the partial chunk there, never let this chunk go into the state
> machine.
>
> Signed-off-by: Xin Long <lucien.xin@...il.com>
> ---
This is basically reverting a chunk of Daniel's and Vlad's 26b87c788100
("net: sctp: fix remote memory pressure from excessive queueing") .
Isn't it going to re-introduce the initial issue then?
> net/sctp/inqueue.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/sctp/inqueue.c b/net/sctp/inqueue.c
> index 7e8a16c..a22ca57 100644
> --- a/net/sctp/inqueue.c
> +++ b/net/sctp/inqueue.c
> @@ -183,9 +183,9 @@ struct sctp_chunk *sctp_inq_pop(struct sctp_inq *queue)
> /* This is not a singleton */
> chunk->singleton = 0;
> } else if (chunk->chunk_end > skb_tail_pointer(chunk->skb)) {
> - /* Discard inside state machine. */
> - chunk->pdiscard = 1;
> - chunk->chunk_end = skb_tail_pointer(chunk->skb);
> + sctp_chunk_free(chunk);
> + chunk = queue->in_progress = NULL;
> + return NULL;
> } else {
> /* We are at the end of the packet, so mark the chunk
> * in case we need to send a SACK.
> --
> 2.1.0
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists