[git pull] drm pull for 3.20-rc1

Linus Torvalds torvalds at linux-foundation.org
Mon Feb 16 16:07:26 PST 2015


On Sun, Feb 15, 2015 at 10:43 PM, Dave Airlie <airlied at linux.ie> wrote:
>
> This is the main drm pull, it has a shared branch with some alsa crossover
> but everything should be acked by relevant people.

Ugh. Your diffstat is crap, because you don't show the inexact renames
that are very abundant in the nouveau driver.

The reason is likely that there are just so many renames that the
default git limits kick in, as it takes some amount of CPU and memory
to do well, and the git defaults are set to work on some really crappy
machines too.

Normally you don't hit the limits, because it's pretty unusual to see
that many renames, but the nouveau guys clearly reorganized their
whole subdirectory. And the difference is quite noticeable:

  # without inexact rename detection:
   1558 files changed, 141213 insertions(+), 125111 deletions(-)

  # with inexact rename detection:
   1138 files changed, 50782 insertions(+), 34680 deletions(-)

Git will actually warn you about a low renamelimit setting. So you
should have seen a warning something like

    warning: inexact rename detection was skipped due to too many files.
    warning: you may want to set your diff.renameLimit variable to at
least XYZ and retry the command.

but you might have overlooked it.

So may I ask you to just add

   [diff]
        renamelimit=0

to your ~/.gitconfig.  Or you can just do

    git config --global diff.renamelimit 0

to do it without editing it yourself, if that's what you prefer (the
"--global" just does it to your ~/.gitconfig so that it will affect
all your git projects - you can obviously just do it to the
".git/config" for individual repositories instead if you prefer).

Oh, and you can do it for merges too - just replace the "diff" with
"merge" - where it can arguably be even more important.

                     Linus


More information about the dri-devel mailing list