Commit 860fbbc3 authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller

sctp: prepare for socket backlog behavior change

sctp_inq_push() will soon be called without BH being blocked
when generic socket code flushes the socket backlog.

It is very possible SCTP can be converted to not rely on BH,
but this needs to be done by SCTP experts.
Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent e61da9e2
...@@ -89,10 +89,12 @@ void sctp_inq_push(struct sctp_inq *q, struct sctp_chunk *chunk) ...@@ -89,10 +89,12 @@ void sctp_inq_push(struct sctp_inq *q, struct sctp_chunk *chunk)
* Eventually, we should clean up inqueue to not rely * Eventually, we should clean up inqueue to not rely
* on the BH related data structures. * on the BH related data structures.
*/ */
local_bh_disable();
list_add_tail(&chunk->list, &q->in_chunk_list); list_add_tail(&chunk->list, &q->in_chunk_list);
if (chunk->asoc) if (chunk->asoc)
chunk->asoc->stats.ipackets++; chunk->asoc->stats.ipackets++;
q->immediate.func(&q->immediate); q->immediate.func(&q->immediate);
local_bh_enable();
} }
/* Peek at the next chunk on the inqeue. */ /* Peek at the next chunk on the inqeue. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment