Re: Small patch to add support for MPTCP on Linux
- From
- Phillip Wood <phillip.wood123@gmail.com>
- Date
- May 17, 2025, 13:39 UTC
- Message-ID
- <a76dda61-f60c-4221-83db-5e165a2478b1@gmail.com>
- In-Reply-To
- <4YPEWS.J5JRNETKLXF1@unrealasia.net>
On 17/05/2025 14:10, Muhammad Nuzaihan wrote:
Show 9 quoted lines
>> I want to point out that the kernel and libc headers used to compile a >> binary need not reflect the actual code in the running kernel. With the >> advent of containers, people frequently run a different operating system >> inside a container than they do outside a container and thus we need to >> consider all of the possible combinations. > > In that case, i'll add a check for the OS that git is built on with > "defined(__linux__)" > if that helps.
As brian has already said I think it would be better to have a Makefile knob to control this which defaults to being on for linux. Take a look at the various USE_xxx definitions in the Makefile and config.mak.uname for setting default compile flags for different operating systems.
Show 7 quoted lines
> Also another check if a socket is supported by looking for a return > value of > "EAI_SOCKTYPE" (not EINVAL) and fallback to regular TCP if that is > returned. > > EAI_SOCKTYPE should work across different UNIX systems as this is a > posix error code.
That error is not mentioned in the documentation for MCTCP on Linux [1]. Please make sure your code checks for the errno values described in the documentation.
Show 7 quoted lines
>> On the Git list, we try not to assume that everyone has read all of the >> technical documentation about a subject and instead we explain, at a >> high level, how the change is and how it's supposed to work. Your >> commit message should convince me (and everyone else, especially Junio, >> the maintainer) that your change is valuable and should be applied. > > It's just a small trival amount of code but anyway.
That maybe so but please make sure that the commit message explains the reason for this change - what the advantages and disadvantages of using MPTCP are and what steps you have taken to make sure git continues to work on systems that do not support MPTCP.
Thanks
Phillip
[1] https://www.kernel.org/doc/html/next/networking/mptcp.html#creating-mptcp-sockets