Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

in-kernel PM: closed subflows before RM_ADDR will not decrement add_addr_accepted #498

Open
matttbe opened this issue Jun 7, 2024 · 1 comment
Assignees
Labels
bug pm path-manager

Comments

@matttbe
Copy link
Member

matttbe commented Jun 7, 2024

(Linked to #496 - maybe can be marked as fixed once this modification is in place if we are OK to take this direction)

If subflows are removed from the list of subflows (closed from the other peer, error, never established, etc.) before receiving a RM_ADDR, the RM_ADDR will not decrement the add_addr_accepted counter if there is no other subflows using the remote ID from the RM_ADDR.

In other words, when subflows are getting closed, the in-kernel PM might need to do some extra actions, like decrementing the add_addr_accepted counter if there is no other subflows using the remote ID of the ones getting removed.

@matttbe matttbe added bug pm path-manager labels Jun 7, 2024
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
MPTCPimporter pushed a commit that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: #498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Message-Id: <tencent_0FE3ED0442E69C9D86C0AEEE338A49F90305@qq.com>
kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 11, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 12, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
@geliangtang geliangtang self-assigned this Dec 12, 2024
@geliangtang
Copy link
Member

Hi Matt, I assigned this issue to myself since my colleague Gang Yan is looking at it.

kuba-moo pushed a commit to linux-netdev/testing that referenced this issue Dec 12, 2024
This patch fixes an issue where an invalid address is announce as a
signal, the 'add_addr_accepted' is incorrectly added several times
when 'retransmit ADD_ADDR'. So we need to update this variable
when the connection is removed from conn_list by mptcp_worker. So that
the available address can be added in time.

In fact, the 'add_addr_accepted' is only declined when 'RM_ADDR'
by now, so when subflows are getting closed from the other peer,
the new signal is not accepted as well.

We noticed there have exist some problems related to this.I think
this patch effectively resolves them.

Closes: multipath-tcp/mptcp_net-next#498
Signed-off-by: Gang Yan <yangang@kylinos.cn>
Signed-off-by: NipaLocal <nipa@local>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug pm path-manager
Projects
None yet
Development

No branches or pull requests

2 participants