Subject: Re: linux-next: tidy up of trees

From: Stephen Rothwell <[email-masked]>
Date: Thu, 22 Jan 2015 08:09:27 +1100

Hi Steven,

On Wed, 21 Jan 2015 08:37:39 -0500 Steven Rostedt <[email-masked]> wrote:
>
> On Wed, 21 Jan 2015 15:10:09 +1100
> Stephen Rothwell <[email-masked]> wrote:
> 
> > Hi all,
> > 
> > [affected tree contacts are bcc'd on this email]
> > 
> 
> > kconfig
> > Git URL: git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig.git#for-next
> > 
> 
> This is my localmodconfig repo. I only use it when someone points out
> something broke or I find a better way of doing something.
> 
> It doesn't get updated much because so far, I hear localmodconfig and
> localyesconfig are doing everything that people like. It may not ever
> get updated again if everyone (including myself) stays happy with it :-)
> 
> But in case that changes, and I need to restructure it, this will be
> needed again. Should I just let this go out of next, but I'll probably
> forget that it does, and still think my for-next branch is active.
> 
> If it is any extra burden on you to keep it, then I'm fine with it
> falling off the radar. But if it's just "I have X repos in next, and
> I'm trying to make it Y", I'd rather keep it in.

No worries, I have put it back.

I guess what I am trying to do is get the attention of people who have
trees that they are finished with, or have very stale commits in them.
After a while it can take git a significant amount of work to merge a
tree that is forked from a very old version of Linus' tree (I guess
finding the merge base gets hard).

So one thing that helps is that if even "empty" trees keep their head
"near" the head of Linus' tree i.e. within a couple of releases (and a
year is 4 releases).  That means that "git merge" is really fast (and
does nothing) and I don't care.  If a merge takes 30 seconds (even to
do nothing), and I have to do 230 merges a day, then it impacts on what
I can get through.

And worse, what looks like abandoned work in some trees could impact on
ongoing work in other trees.

OK, I just did a test:

$ git describe kconfig/for-next 
v3.13-rc4-1-g95edca5c523c
$ time git merge kconfig/for-next 
Already up-to-date.

real	0m1.443s
user	0m1.408s
sys	0m0.036s

So, not a real problem.  But this:

$ git describe logfs/master 
v3.6-rc4-55-g339466142b3f
$ time git merge logfs/master 
Performing inexact rename detection:  32% (126388520/126388520), done.
Auto-merging fs/logfs/super.c
Merge made by the 'recursive' strategy.
 fs/logfs/dev_mtd.c | 2 +-
 fs/logfs/super.c   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

real	1m12.023s
user	1m7.920s
sys	0m0.792s
$ git reset --hard HEAD^
HEAD is now at e1e12812e428 Add linux-next specific files for 20150121
$ time git merge logfs/master 
Performing inexact rename detection:  32% (126388520/126388520), done.
Auto-merging fs/logfs/super.c
Merge made by the 'recursive' strategy.
 fs/logfs/dev_mtd.c | 2 +-
 fs/logfs/super.c   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

real	1m7.794s
user	1m7.216s
sys	0m0.616s

(I did it twice so that the second time it was all hot)  And then I
have to do the build (which admittedly doesn't take too long in this
case) but if a header file gets touched it is a real problem.

-- 
Cheers,
Stephen Rothwell                    [email-masked]