[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <2d23db3f-27fb-4f9c-b516-97b5687f2a36@kernel.org>
Date: Mon, 29 Sep 2025 19:29:54 +0100
From: Matthieu Baerts <matttbe@...nel.org>
To: Jakub Kicinski <kuba@...nel.org>
Cc: Alexandra Winter <wintera@...ux.ibm.com>,
Sidraya Jayagond <sidraya@...ux.ibm.com>,
Julian Ruess <julianr@...ux.ibm.com>, Aswin Karuvally <aswin@...ux.ibm.com>,
Halil Pasic <pasic@...ux.ibm.com>, Mahanta Jambigi <mjambigi@...ux.ibm.com>,
Tony Lu <tonylu@...ux.alibaba.com>, Wen Gu <guwen@...ux.alibaba.com>,
linux-rdma@...r.kernel.org, netdev@...r.kernel.org,
linux-s390@...r.kernel.org, Heiko Carstens <hca@...ux.ibm.com>,
Vasily Gorbik <gor@...ux.ibm.com>, Alexander Gordeev
<agordeev@...ux.ibm.com>, Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>, Simon Horman <horms@...nel.org>,
Eric Biggers <ebiggers@...nel.org>, Ard Biesheuvel <ardb@...nel.org>,
Herbert Xu <herbert@...dor.apana.org.au>,
Harald Freudenberger <freude@...ux.ibm.com>,
Konstantin Shkolnyy <kshk@...ux.ibm.com>,
Dan Williams <dan.j.williams@...el.com>, Dave Jiang <dave.jiang@...el.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Shannon Nelson <sln@...main.com>, Geert Uytterhoeven <geert@...ux-m68k.org>,
Jason Gunthorpe <jgg@...pe.ca>, "D. Wythe" <alibuda@...ux.alibaba.com>,
Dust Li <dust.li@...ux.alibaba.com>, Wenjia Zhang <wenjia@...ux.ibm.com>,
David Miller <davem@...emloft.net>, Paolo Abeni <pabeni@...hat.com>,
Eric Dumazet <edumazet@...gle.com>, Andrew Lunn <andrew+netdev@...n.ch>,
Stephen Rothwell <sfr@...b.auug.org.au>
Subject: Re: [PATCH net-next v3 13/14] dibs: Move data path to dibs layer:
manual merge
Hi Jakub,
(Sorry for the delay, I was travelling)
On 25/09/2025 18:57, Jakub Kicinski wrote:
> On Wed, 24 Sep 2025 10:07:35 +0100 Matthieu Baerts wrote:
>> Regarding this conflict, I hope the resolution is correct. The patch
>> from 'net' was modifying 'net/smc/smc_loopback.c' in
>> smc_lo_register_dmb() and __smc_lo_unregister_dmb(). I applied the same
>> modifications in 'drivers/dibs/dibs_loopback.c', in
>> dibs_lo_register_dmb() and __dibs_lo_unregister_dmb(). In net-next,
>> kfree(cpu_addr) was used instead of kvfree(cpu_addr), but this was done
>> on purpose. Also, I had to include mm.h to be able to build this driver.
>> I also attached a simple diff of the modifications I did.
>
> Thanks a lot for sharing the resolutions!
You are very welcome!
>> Note: no rerere cache is available for this kind of conflicts.
>
> BTW have you figured out how to resolve that automatically?
> NIPA does trusts rerere but because it didn't work we were running
> without net for the last few days (knowingly) :(
When I was in charge of supporting MPTCP on top of a few old stable
kernels, and keeping new features in sync on all these kernels, I ended
up automating the resolution of such conflicts. In my case, I was
cherry-picking patches, and I could then simply take a fingerprint based
on the 'git diff' output without the index and lines numbers. With the
hash of the diff, I could either create or get the corresponding
'.patch' file can be automatically applied with the 'patch' command to
resolve the conflicts.
In your case, you are merging trees that are regularly changing, if I'm
not mistaken. In this case, the fingerprint should not be based on
everything pending during the merge, but I guess it should be possible
to get a fingerprint, e.g. a diff showing the conflicts.
Note that in the MPTCP tree, we use 'TopGit' [1], and our tree is
regularly synced with 'net' and 'net-next'. When there are conflicts, I
only have to fix them once, because TopGit merges multiple branches and
keep a continuous history. That's another solution, but it might not be
adapted to NIPA's needs.
[1] https://mackyle.github.io/topgit/
Cheers,
Matt
--
Sponsored by the NGI0 Core fund.
Powered by blists - more mailing lists