dlm: use sctp 1-to-1 API
authorMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Tue, 11 Aug 2015 22:22:23 +0000 (19:22 -0300)
committerDavid Teigland <teigland@redhat.com>
Mon, 17 Aug 2015 21:22:20 +0000 (16:22 -0500)
commitee44b4bc054afc586c92558a225055ef9fd25d17
tree54015a32f73ec8cd75eddf28b32c42e34d2242a3
parent356344c4c36dc960f90a3457dd67fe2efcf92417
dlm: use sctp 1-to-1 API

DLM is using 1-to-many API but in a 1-to-1 fashion. That is, it's not
needed but this causes it to use sctp_do_peeloff() to mimic an
kernel_accept() and this causes a symbol dependency on sctp module.

By switching it to 1-to-1 API we can avoid this dependency and also
reduce quite a lot of SCTP-specific code in lowcomms.c.

The caveat is that now DLM won't always use the same src port. It will
choose a random one, just like TCP code. This allows the peers to
attempt simultaneous connections, which now are handled just like for
TCP.

Even more sharing between TCP and SCTP code on DLM is possible, but it
is intentionally left for a later commit.

Note that for using nodes with this commit, you have to have at least
the early fixes on this patchset otherwise it will trigger some issues
on old nodes.

Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/lowcomms.c