Hi, On Wed, May 17, 2023 at 12:01 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Emily Shaffer <nasamuffin@xxxxxxxxxx> writes: > > > Following is a report from inside of Google: > > > > **What did you do before the bug happened? (Steps to reproduce your issue)** > > > > ``` > > # With the attached patches, where all of the patches have a > > # Message-Id but the cover letter doesn't. > > git send-email *.patch > > ``` > > > > Specifically, you can see me doing it: > > > > ``` > > $ git send-email *.patch > > 0000-cover-letter.patch > > 0001-dt-bindings-interrupt-controller-arm-gic-v3-Add-quir.patch > > ... > > 0006-arm64-dts-mediatek-mt8195-Add-mediatek-gicr-save-qui.patch > > To whom should the emails be sent (if anyone)? > > Message-ID to be used as In-Reply-To for the first email (if any)? > > (mbox) Adding cc: Douglas Anderson <dianders@xxxxxxxxxxxx> from line > > 'From: Douglas Anderson <dianders@xxxxxxxxxxxx>' > > > > From: Douglas Anderson <dianders@xxxxxxxxxxxx> > > To: > > Cc: Douglas Anderson <dianders@xxxxxxxxxxxx> > > Subject: [PATCH 0/6] irqchip/gic-v3: Disable pseudo NMIs on Mediatek > > Chromebooks w/ bad FW > > Date: Thu, 11 May 2023 15:25:55 -0700 > > Message-ID: <20230511151719.6.Ia0b6ebbaa351e3cd67e201355b9ae67783c7d718@changeid> > > ``` > > > > If you look at `0000-cover-letter.patch` you can see that it has no > > Message-ID, but the above clearly shows that the cover letter is being > > sent with a Message-ID (and the one from the last patch). > > It is correct that Message-ID needs to be assigned by send-email if > the outgoing message lacks one. I am not sure what is meant by > "from the last patch". Do you mean that Message-ID exists in > 0006-*.patch but not in 0000-cover-letter.patch [*]? Yes. It exists in all of the patches except 0000-cover-letter.patch. ...but when the mail gets actually sent the cover letter and last patch (0006 in the case I reported) end up sharing the same Change ID. With older versions of git send-email the cover letter would get an auto-generated Message-Id. > I suspect that > is the root cause of the problem; if 000[1-6]-*.patch already has > their own Message-ID: because --thread is used when running > git-format-patch, they would also have In-Reply-To: and References:, > but there is no way for them to reference 0000-cover-letter.patch > (because format-patch did not get a chance to generate Message-ID to > it), is there? The patches were generated with git-format-patch but the Message-ID was added by patman [1]. The Message-ID encodes the local Change-Id which can make it easier to associate one version of the same patch with another (same reason gerrit uses Change-Id) [2]. There is no Change-Id associated with the cover letter so patman doesn't bother adding one there and has always just let it be auto-generated. We could certainly change patman to make up a Message-Id for the cover letter, but there is no real need. [1] https://source.denx.de/u-boot/u-boot/-/blob/master/tools/patman/patman.rst [2] https://source.denx.de/u-boot/u-boot/-/commit/833e4192cd791733ddc0106996a4f86f9269ceba