Re: [PATCH 0/3] commit-graph: fix corruption during generation v2 upgrade
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 13, 2022, 17:41 UTC
- Message-ID
- <xmqqk08gdi5i.fsf@gitster.g>
- In-Reply-To
- <cover.1657667404.git.me@ttaylorr.com>
Taylor Blau <me@ttaylorr.com> writes:
Show 20 quoted lines
> This brief series resolves a bug where a commit-graph would become > corrupt when upgrading from generation number v1 to v2, as originally > reported in [1]. > > Some speculation occurred as to what might be causing that bug in the > thread beginning at [1], until the problem was explained in more detail > by Will Chandler in [2]. > > The crux of the issue, as is described in [2] and [3], is that the > commit_graph_data slab is reused for read and write operations involving > the commit-graph, leading to situations where data computed in > preparation of a write is clobbered by a read of existing data. > > The first patch demonstrates the issue, and the second patch prepares to > fix it by introducing a helper function. The crux of the issue is > described and fixed in the third patch. > > [1]: https://lore.kernel.org/git/YqD5dgalb9EPnz85@coredump.intra.peff.net/ > [2]: https://lore.kernel.org/git/DD88D523-0ECA-4474-9AA5-1D4A431E532A@wfchandler.org/ > [3]: https://lore.kernel.org/git/YsS7H4i5DqUZVQ5i@nand.local/
Thanks. Do we know where this breaks? Applying [1/3] on Git 2.32, 2.34, and 2.35 seems to claim that "known breakage vanished".