On 1/16/19 12:39 AM, Ming Lei wrote: > On Tue, Jan 15, 2019 at 08:17:36PM -0700, Jens Axboe wrote: >> On 1/15/19 8:13 PM, Ming Lei wrote: >>> On Tue, Jan 15, 2019 at 07:55:39PM -0700, Jens Axboe wrote: >>>> On 1/15/19 7:25 PM, Stephen Rothwell wrote: >>>>> Hi all, >>>>> >>>>> Today's linux-next merge of the block tree got a conflict in: >>>>> >>>>> fs/ext4/readpage.c >>>>> >>>>> between commit: >>>>> >>>>> acc9eb0a6073 ("ext4: add fs-verity read support") >>>>> >>>>> from the fscrypt tree and commit: >>>>> >>>>> eb754eb2a953 ("block: allow bio_for_each_segment_all() to iterate over multi-page bvec") >>>>> >>>>> from the block tree. >>>>> >>>>> I fixed it up (see below - the former moved the code modified by the >>>>> latter) and can carry the fix as necessary. This is now fixed as far as >>>>> linux-next is concerned, but any non trivial conflicts should be mentioned >>>>> to your upstream maintainer when your tree is submitted for merging. >>>>> You may also want to consider cooperating with the maintainer of the >>>>> conflicting tree to minimise any particularly complex conflicts. >>>> >>>> Ming, I'm pulling this, I thought we agreed none of these bullshit >>>> renames? The fact that a patch looks like this: >>>> >>>> - for_each_bvec(bv, (it)->bvecs, __cur_iter, __cur_iter) \ >>>> + for_each_segment(bv, (it)->bvecs, __cur_iter, __cur_iter) \ >>>> >>>> is SUPER annoying and does NOTHING but to cause merge conflicts. >>>> >>>> Resend it without that. >>> >>> We need to differentiate 'segment' with 'bvec' in bvec helpers, which is >>> usually seldom used by drivers. For example, only two in-tree users(ceph, iov_iter). >>> That is why I rename it, and seems Christoph prefers to do it too. >> >> If you want to do a rename, then we do it after. I don't want to deal with >> weeks and weeks of fallout from this. Write a rename script that we can >> then run at the end of the next merge window. You're going to be playing >> catch-up until that happens if we go the current route, and honestly >> I'm not at all interested in the fallout from that. >> >> I know exactly what will happen until 5.1-rc opens, and what my tree will >> look like from having to deal with this. And then I know exactly what Linus >> is going to say, and I can't even argue against it, since he'll be totally >> right. >> >> Hence it's not going to happen this way. > > I can remove the renaming in patch 'block: rename bvec helpers', but > change on bio_for_each_segment_all() is inevitable, and it is still an > API change, so merge conflict can't avoid too. That's not what I'm complaining about, API changes are inevitable for something like this. What I'm complaining about is the very example I posted above, and which has already caused issues. That's a frivolous name change. Don't do it. -- Jens Axboe