git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[BUG] Memory corruption crash with "git bisect start"

From
Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
Date
Feb 14, 2017, 11:56 UTC
Message-ID
<A7AEC719-6E15-4622-8E21-3E11BAF74A3C@linaro.org>
I'm seeing the following memory corruption crash on a script-constructed repo when starting git bisect.  I'm seeing this crash both with system git of Ubuntu Xenial and with freshly-compiled git master from the official repo.
The log of the crash is attached.
It is possible that the bug is in Xenial glibc, in which case -- please let me know and I will take it up with the glibc developers.
To reproduce the crash:

<snip> # Create a repo with 42 files, and change all of them. rm -rf .git git init for i in `seq 1 42`; do echo 0 > f$i; git add f$i; echo 1 > f$i; done git commit -m 0

# Download script to generate bisect history: pushd ../ wget https://git.linaro.org/people/maxim.kuvyrkov/tree-bisect.git/plain/construct-tree.sh popd

# Construct tree for bisect. This script creates a history graph for all permutations of changed files up to "2" in depth. # The goal of the script is to assist in reducing testcases for compiler/toolchain development. ../construct-tree.sh -d 2

# Trigger crash git bisect start bottom top </snip>

It is interesting that "42" number files is boundary.  The crash does not occur with history generated from 41 or fewer files, and only occurs with 42 or more files.  It appears that the contents of the files is not relevant for the crash.

-- Maxim Kuvyrkov www.linaro.org

Next: Christian Couder
Message 1 of 2 in “[BUG] Memory corruption crash with "git bisect start"”
  1. Maxim KuvyrkovFeb 14, 2017
  2. Christian CouderFeb 14, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.