From: Alejandro Colomar <alx@kernel.org>
To: Steven Rostedt <rostedt@goodmis.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Mark Brown <broonie@kernel.org>, Sasha Levin <sashal@kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Jacob Keller <jacob.e.keller@intel.com>,
Yeking@red54.com, kuba@kernel.org,
Jonathan Corbet <corbet@lwn.net>, Theodore Ts'o <tytso@mit.edu>,
Andy Whitcroft <apw@canonical.com>,
Joe Perches <joe@perches.com>,
Dwaipayan Ray <dwaipayanray1@gmail.com>,
Lukas Bulwahn <lukas.bulwahn@gmail.com>,
Andrew Morton <akpm@linux-foundation.org>,
workflows@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org,
tech-board-discuss@lists.linux.dev, Andrew Lunn <andrew@lunn.ch>
Subject: Re: [PATCH] Add short author date to Fixes tag
Date: Wed, 25 Feb 2026 01:57:08 +0100 [thread overview]
Message-ID: <aZ5Ir0eHPMjK7xyv@devuan> (raw)
In-Reply-To: <aZ4_sBIy8rOUL59Q@devuan>
[-- Attachment #1: Type: text/plain, Size: 7951 bytes --]
D'oh! I forgot to add the In-Reply-To tag.
I meant to reply to
<https://lore.kernel.org/all/52541f79-ba1c-49c9-a576-45c3472d1c79@intel.com/T/#mf183db5f382b4a39cf52a4a1d2ca8f96697c312e>
On 2026-02-25T01:56:08+0100, Alejandro Colomar wrote:
> Hi Steven, Greg,
>
> [I'll reply to several sub-threads at once.]
>
>
> [Message-ID: <20250113095101.4e0fff91@gandalf.local.home>]
> On Mon, Jan 13, 2025 at 09:51:01AM -0500, Steven Rostedt wrote:
> > Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> > > $ git help fixes
> > > 'fixes' is aliased to 'show --format='Fixes: %h ("%s")' -s'
> >
> > Hmm, I've just been manually adding the Fixes tags ;-) That's because when
> > I add a fixes tag, I also do a more in depth analysis to make sure the
> > commit being tagged is really the cause of the problem. A lot of my fixes
> > tags are due to very subtle bugs, and a lot of times its a combination of
> > event that happened.
>
> I also precede the generation of the fixes tag with an in-depth
> analysis. However, that doesn't conflict with using a git alias to
> generate it, once I've reached a conclusion. I use this alias to
> generate them, and it's quite handy:
> <https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING.d/git#n46>
>
> >
> > That said, maybe one day I'll use a script or alias in the future.
>
>
> [Message-ID: <20250111120935.769ab9a3@gandalf.local.home>]
> On Sat, Jan 11, 2025 at 6:08 PM Steven Rostedt <rostedt@goodmis.org> wrote:
> > On Fri, 10 Jan 2025 16:21:35 -0800
> > Jacob Keller <jacob.e.keller@intel.com> wrote:
> >
> > > I personally find the date helpful as it can help place a commit without
> > > needing to take the extra time to do a lookup.
> >
> > I've never found dates to be meaningful. I'm always more concerned about
> > when a commit was added to mainline. Thus the version where the commit was
> > added is very important for me.
>
> Indeed. I agree with this, and it's a quite important difference.
> The commit dates are strictly increasing, which means you can use the
> date to perform a search of a commit, if there's a collision in the
> hash (and possibly in the subject).
>
> I documented this in the man-pages project, where I require the commit
> date to appear in Fixes tags.
> <https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING.d/patches/trailer#n16>
>
> > This is why I keep a bare clone of Linus's
> > tree and commonly do:
> >
> > $ git describe --contains fd3040b9394c
> > v5.19-rc1~159^2~154^2
> > $ git describe --contains a76053707dbf
> > v5.15-rc1~157^2~376^2~4
> >
> > I can easily see that a76053707dbf was added in 5.15 and fd3040b9394c was
> > added in 5.19. The amount of work needed to add dates to Fixes tags would
> > greatly exceed the amount of added work someone would need to do to do the
> > above operations if they wanted to know the order of commits.
>
>
> [Message-ID: <2025011032-gargle-showing-7500@gregkh>]
> Greg wrote (Fri, 10 Jan 2025 13:32:22 +0100):
> > Please no, you will break all of our tooling and scripts that parse
> > these types of fields. The git commit id and commit header is all we
> > need to properly determine this type of information, no need to add a
> > date in here at all.
> >
> [...]
> >
> > So I don't think you need to add a date here. Dates also really do not
> > mean much with commits, what matters is what release a commit is in, not
> > when it was originally made. We have commits that take years to show up
> > in a release, so if you only look at a date, you will be mistaken many
> > times as it's not showing what came before what many times (i.e. we
> > apply commits out-of-date-order all the time.)
>
> As I said above, I agree that the commit date is the right choice.
> Author dates can be out-of-date-order by years. Commit dates are
> necessarily in order, though.
>
>
> [Message-ID: <20250110080331.04645768@gandalf.local.home>]
> Steven wrote (Fri, 10 Jan 2025 08:03:31 -0500):
> > How can it lead to misjudgment? If you have two or more hashes matching, do
> > you really think they'll have the same subjects?
>
> The possibility isn't zero. Statistically, it's quite low. However,
> it's non-zero.
>
> $ git log --format=tformat:'%s' | sort | uniq -c | sort | tail
> 248 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
> 263 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
> 275 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
> 293 Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
> 314 Merge branch 'akpm' (patches from Andrew)
> 315 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
> 318 Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
> 324 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
> 369 Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
> 670 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
> $ git log --format=tformat:'%s' | grep -v ^Merge | sort | uniq -c | sort | tail
> grep: (standard input): binary file matches
> 22 drm/amd/display: Clean up some inconsistent indenting
> 25 Auto-update from upstream
> 26 [ARM] Update mach-types
> 26 pmdomain: Merge branch fixes into next
> 30 s390: update defconfigs
> 32 tools arch x86: Sync the msr-index.h copy with the kernel sources
> 38 [SPARC64]: Update defconfig.
> 52 mmc: Merge branch fixes into next
> 59 drm/i915: Convert wait_for(I915_READ(reg)) to intel_wait_for_register()
> 62 batman-adv: Start new development cycle
>
> Subjects repeat every now and then, and the entropy in some subjects is
> actually quite low.
>
> If you include the commit date in a Fixes tag, then you preclude the
> entire possibility of a commit reference clash, because you won't have
> two patches committed in the same date with the same subject and same
> hash (unless you *really* try)
>
>
> [Message-ID: <2025011115-energize-edge-c9c7@gregkh>]
> Greg wrote (Sat, 11 Jan 2025 06:48:53 +0100):
> > And if it isn't long enough, tools like:
> > https://lore.kernel.org/r/20241226220555.3540872-1-sashal@kernel.org
> > can help figure it out as well.
>
> That uses hash+subject. This may be not enough in some cases (see how
> much subjects repeat, in the logs above). And importantly, a fixes tag
> may become ambiguous *after* it has been written, so you can't predict
> much.
>
> By having a commit date in the Fixes tag, you could even simplify the
> script to just do a binary search in case of ambiguity. Let's say I
> want to find the following commit (arbitrarily taken from the first
> Fixes tag I've found in my copy of linux.git):
>
> a2e459555c5f (2023-08-09; "shmem: stable directory offsets")
>
> We could find it, with a trivial command line. We only even need two
> characters of the hash:
>
> $ git log --oneline --after='2023-08-08' --before='2023-08-10' \
> | grep ^a2;
> a2e459555c5f shmem: stable directory offsets
>
> No need for a huge script to disambiguate. This is even typo-resistant,
> as one could eventually find something that is similar enough, if one
> had such a field with a typo (in any of the three fields). You'd be
> able to search by the other two fields, and two fields should be
> _usually_ enough for disambiguating, and the third one could corroborate
> the typo.
>
> So, what would you think of having the commit date in commit references
> such as Fixes tags?
>
>
> Have a lovely night!
> Alex
>
> --
> <https://www.alejandro-colomar.es>
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2026-02-25 0:57 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-25 0:56 [PATCH] Add short author date to Fixes tag Alejandro Colomar
2026-02-25 0:57 ` Alejandro Colomar [this message]
2026-02-25 18:00 ` Greg Kroah-Hartman
2026-02-25 18:20 ` Alejandro Colomar
2026-02-25 19:47 ` James Bottomley
2026-02-25 21:23 ` Greg Kroah-Hartman
2026-02-25 21:45 ` Alejandro Colomar
2026-02-25 22:35 ` Theodore Tso
2026-02-25 23:27 ` Sasha Levin
2026-02-25 23:46 ` Greg Kroah-Hartman
2026-02-26 0:20 ` Alejandro Colomar
2026-02-26 7:50 ` Geert Uytterhoeven
2026-02-25 20:08 ` Sasha Levin
2026-02-26 0:08 ` Steven Rostedt
2026-02-26 23:24 ` Jacob Keller
-- strict thread matches above, loose matches on Subject: below --
2025-01-10 11:53 [PATCH net v3] net: ethernet: sunplus: Switch to ndo_eth_ioctl Yeking
2025-01-10 12:20 ` [PATCH] Add short author date to Fixes tag Yeking
2025-01-10 12:32 ` Greg Kroah-Hartman
2025-01-10 13:03 ` Steven Rostedt
2025-01-11 0:21 ` Jacob Keller
2025-01-11 5:48 ` Greg Kroah-Hartman
2025-01-11 17:09 ` Steven Rostedt
2025-01-12 10:54 ` Geert Uytterhoeven
2025-01-13 14:51 ` Steven Rostedt
2025-01-13 15:08 ` Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aZ5Ir0eHPMjK7xyv@devuan \
--to=alx@kernel.org \
--cc=Yeking@red54.com \
--cc=akpm@linux-foundation.org \
--cc=andrew@lunn.ch \
--cc=apw@canonical.com \
--cc=broonie@kernel.org \
--cc=corbet@lwn.net \
--cc=dwaipayanray1@gmail.com \
--cc=geert@linux-m68k.org \
--cc=gregkh@linuxfoundation.org \
--cc=jacob.e.keller@intel.com \
--cc=joe@perches.com \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas.bulwahn@gmail.com \
--cc=rostedt@goodmis.org \
--cc=sashal@kernel.org \
--cc=tech-board-discuss@lists.linux.dev \
--cc=tytso@mit.edu \
--cc=workflows@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.