Re: [GIT PATCH] STAGING patches for 2.6.31-git

Greg KH
2009-09-16T15:34:26Z

On Wed, Sep 16, 2009 at 08:26:14AM -0700, Linus Torvalds wrote:
>
>
> On Tue, 15 Sep 2009, Greg KH wrote:
> >
> > Overall, we almost broke even with our cleanups and removals for what
> > was done here:
> > 1267 files changed, 297615 insertions(+), 214568 deletions(-)
>
> Actually, it's
>
> 1253 files changed, 287789 insertions(+), 209389 deletions(-)
>
> but there are so many changed files that the default rename detection
> limit kicks in, and your git will have only looked at 100% identical
> renames. So you missed things like:
>
> rename drivers/staging/{rt2860 => rt3090}/link_list.h (99%)
> copy drivers/staging/{rt2870/md4.h => rt3090/mlme_ex.h} (56%)
> copy drivers/staging/{rt2860/md4.h => rt3090/mlme_ex_def.h} (67%)
> copy drivers/staging/{rt2860/md4.h => rt3090/netif_block.h} (72%)
> rename drivers/staging/{rt2870/md4.h => rt3090/rt33xx.h} (79%)
> ...
>
> Now, admittedly the 'copy' ones are dubious: it's picking up on the
> f*cking Ralink GPL copyright template, which is the bulk of those files.
> But that in itself is interesting information, even if I personally find
> mindless copyright templates very annoying.
>
> Anyway, extended rename detection (ie the non-exact one that can't just
> look at the SHA1's and say "those are identical") gets disabled if your
> rename matrix is large (cost function: n*m where 'n' is number of added
> files, and 'm' is number of deleted ones), which triggers for your staging
> tree because you had both deletions and creations.
>
> The default git limit is set fairly low, because it's set for small
> machines with limited amounts of memory in particular. I suspect you might
> want to add
>
> [diff]
> renamelimit=0
>
> to your ~/.gitconfig, since you probably don't use particularly weak
> machines, and that will disable the limiting. Then you'd get the full
> renames in all their glory.

Ah, ok, will do, didn't know about that. Thanks for the info.

> Without it, you'll see just:
>
> copy drivers/staging/{rtl8192su => rtl8192e}/dot11d.h (100%)
> rename drivers/staging/{rtl8192su => rtl8192e/ieee80211}/dot11d.h (100%)
> rename drivers/staging/{rtl8192su => rtl8192e}/ieee80211/rtl_crypto.h (100%)
> rename drivers/staging/{rtl8187se => rtl8192e}/ieee80211_crypt.h (100%)
>
> while with it, you'll see examples of lots of cases of header files where
> there is more copyright header than actual content ;(

Yeah, this company is known for just taking a whole new version of
everything for their next driver, and only changing tiny bits. It's
something I'm working on getting resolved with them...

thanks,

greg k-h