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

Re: Segfault during a big messy rebase

From
Jeff King <peff@peff.net>
Date
Jun 27, 2016, 16:30 UTC
Message-ID
<20160627163029.GB4430@sigill.intra.peff.net>
In-Reply-To
<loom.20160627T084323-107@post.gmane.org>
On Mon, Jun 27, 2016 at 06:51:26AM +0000, Greg Werbin wrote:
Show 8 quoted lines
> I was in the middle of a big messy rebase when the following
> happened:
> 
> $ git rebase --continue
> /usr/local/Cellar/git/2.9.0/libexec/git-core/git-rebase--interactive:
> line 238: 60305 
> Segmentation fault: 11  "$@"
> Could not commit staged changes.
Can you reproduce this segfault if you run the rebase again?

It's hard to tell what command even had a problem (one can guess "git commit" from the message). Running it with GIT_TRACE=1 would show more details.

The simplest way to debug a segfault is generally to get a core file and ask gdb for the backtrace. On Linux, that is generally:

  # turn on cores; most modern distros turn them off by default
  ulimit -c unlimited
  # run your command
  git rebase ...
  # now find the core file; it's dumped in the cwd of the command
  # that segfaulted, which is probably either .git or the top of the
  # worktree
  core=$(find . -name core)
  # and then ask gdb for the backtrace
  gdb -ex backtrace git $(core)

I see you have /usr/local/Cellar, which IIRC is a homebrew thing. Some of those commands may need adjusting on OS X.

-Peff
Previous: Greg Werbin
Message 2 of 2 in “Segfault during a big messy rebase”
  1. Greg WerbinJun 27, 2016
  2. Jeff KingJun 27, 2016

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.