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

Address ID passed to pm netlink add_addr command is overridden #89

Open
ossama-othman opened this issue Dec 3, 2020 · 1 comment
Open
Labels
bug Something isn't working question Further information is requested
Milestone

Comments

@ossama-othman
Copy link
Member

ossama-othman commented Dec 3, 2020

NOTE: This issue is meant to document an address ID tracking conflict between the user-space (mptcpd) and the kernel. It is not necessarily an issue that needs to be corrected in mptcpd, at least at this point in time.

Describe the bug
The address ID passed to the mptcpd_pm_add_addr() function is overridden by the kernel. Finding out what the actual address ID associated with the added local address is can only be done by iterating through the list of addresses obtained through the dump_addr PM netlink command, This makes keeping track of address IDs in the user-space difficult.

To Reproduce
Steps to reproduce the behavior:

  1. On a kernel with no addresses advertised through ADD_ADDR, e.g. a freshly booted kernel, call mptcpd_pm_addr() with an address ID other than 1.
  2. Call mptcpd_pm_get_addr() with the same address ID used in the first step.
  3. The get_addr call will fail with an "address not found" error returned from the kernel since the address ID passed to the kernel in step 1 is overridden.

Expected behavior
Ideally the kernel should not override user IDs managed by the user space, e.g. mptcpd. Otherwise it becomes difficult for the user-space to trigger a MPTCP REMOVE_ADDR since the required address ID is unknown due to the kernel override.

Desktop (please complete the following information):

  • Linux Kernel: 5.9.10
  • Compiler: 10.2.1

Additional context
See "Address ID assignment in netlink PM" on the old MPTCP community mailing list or the same thread on the current mailing list.

@ossama-othman ossama-othman added bug Something isn't working question Further information is requested labels Dec 3, 2020
@ossama-othman
Copy link
Member Author

The corresponding kernel side issue is multipath-tcp/mptcp_net-next#117.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working question Further information is requested
Projects
None yet
Development

No branches or pull requests

1 participant