linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Landley <rob@landley.net>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Jeff Garzik <jgarzik@pobox.com>, Andrew Morton <akpm@osdl.org>,
	linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [git patches] 2.6.x libata updates
Date: Sun, 30 Oct 2005 20:35:26 -0600	[thread overview]
Message-ID: <200510302035.26523.rob@landley.net> (raw)
In-Reply-To: <Pine.LNX.4.64.0510301654310.27915@g5.osdl.org>

On Sunday 30 October 2005 18:58, Linus Torvalds wrote:

> Using "git bisect" to generate successive bisections (and then building up
> a linearization patch from that) would work, but it would result in some
> _really_ strange things:

Which is fine for a debugging tool.

It sounds like any git user could make one of these patches now, and put them 
up each time you cut a release.  (Hmmm, is this likely to be scriptable, or 
does it require poking at the git source?  Coming up to speed on git is a 
to-do item for me.  It has its own _vocabulary_, not exactly a trivial time 
expenditure to understand what's going on for those of us who never got 
around to using bitkeeper...)

> it would basically have one patch do one thing, 
> then the next patch might _undo_ that, and do another, and then the third
> patch would re-do it and do them both together.
>
> And that's really sometimes the best linearization you can do. But that's
> just too strange and confusing, I think. And the patches would be horribly
> inefficient.

"Horribly inefficient" seems pretty standard for a debugging tool.  Dwarf2 
bloats executables by a factor of 10 or more.  If it's a big issue, perhaps 
kernel.org could offer both "rc1-rc2.patch" (the "simple diff between trees" 
version) and "rc1-rc2-bisect.patch" (the "ugly granular debugging" version).

Also, the patch description in the bisect version could easily include a URL 
to an online git diff viewer (can http://www.kernel.org/git do this?) in case 
people want to see what it did, since the patch for artificially linearized 
changes can easily be unintelligible, ala:

The human readable version of this patch is at:
http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3e6716e748609a3a899e8d670e42832921bd45bc

> At that point I'd rather teach people to use "git bisect" natively. It
> wouldn't be any less confusing than the patches ;)

The problem with teaching people to use "git bisect" is you have people who 
aren't kernel developers who have a bug, and want to help track down the bug, 
and you're telling them "Ok, to debug this you need to install git, use it to 
check out the linux-kernel repository, then..."

I suspect even the best-intentioned dilettantes seldom make it to "then".  
Telling them to binary search through a downloadable text file on the marker 
"===newpatch===" or some such sounds like a much easier sell.  It doesn't 
even need a shell script:

grep -n MARKER bisect.patch | less
(pick a line number)
head -n linenumber bisect.patch > test.patch

If that's not it, revert test.patch and then try again.  Tell us the first 
line number that failed, which is the end of the patch we want...

Hmmm...  The logical place to put the URL to gitweb is at the _end_ of the 
patch, attached to the marker.  So that's what they see in the grep, and the 
last thing they test when they cut at that line with head -n...

>   Linus

Rob

  reply	other threads:[~2005-10-31  2:35 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-29 18:22 [git patches] 2.6.x libata updates Jeff Garzik
2005-10-29 19:14 ` Andrew Morton
2005-10-29 19:20   ` Jeff Garzik
2005-10-29 19:37     ` Linus Torvalds
2005-10-29 20:09       ` Al Viro
2005-10-29 20:16       ` Jeff Garzik
2005-10-29 20:18       ` Nicolas Pitre
2005-10-29 21:01         ` Linus Torvalds
2005-10-30 15:46           ` Nicolas Pitre
2005-10-29 22:21       ` Andrew Morton
2005-10-29 22:30         ` Linus Torvalds
2005-10-30  0:55           ` Tony Luck
2005-10-30  2:28       ` Horst von Brand
2005-10-30 12:44       ` Rob Landley
2005-10-30 22:36         ` Linus Torvalds
2005-10-30 23:31           ` Rob Landley
2005-10-31  0:58             ` Linus Torvalds
2005-10-31  2:35               ` Rob Landley [this message]
2005-10-31  7:46                 ` Junio C Hamano
2005-10-31  8:10                   ` David Lang
2005-10-31  8:28                     ` David Lang
2005-10-31  9:00                     ` Junio C Hamano
2005-10-31  9:13                       ` David Lang
2005-10-31  9:34                         ` Rob Landley
2005-10-31 11:45                           ` Giuseppe Bilotta
2005-10-31 17:49                             ` David Lang
2005-10-31 18:06                               ` Giuseppe Bilotta
2005-10-31  2:52               ` Rob Landley
2005-11-10  0:36               ` Matthias Urlichs
2005-10-30 23:59           ` Rob Landley
2005-10-31  0:16             ` Randy.Dunlap
2005-10-30 13:11       ` Pavel Machek
2005-10-31  3:55       ` David Lang
  -- strict thread matches above, loose matches on Subject: below --
2006-01-18  2:15 Jeff Garzik
2006-01-18  2:33 ` Andrew Morton
2006-01-18  5:18   ` Jeff Garzik
2006-01-03 16:43 Jeff Garzik
2006-01-03 16:51 ` Bartlomiej Zolnierkiewicz
2006-01-03 16:56   ` Jeff Garzik
2006-01-03 17:32   ` Alan Cox
2006-01-03 17:43     ` Jeff Garzik
2006-01-03 18:35       ` Bartlomiej Zolnierkiewicz
2006-01-03 18:50         ` Alan Cox
2006-01-04 14:02       ` Alan Cox
2005-11-11 16:23 Jeff Garzik
2005-11-09  6:54 Jeff Garzik
2005-10-28  0:49 Jeff Garzik
2005-10-28 16:08 ` Linus Torvalds
2005-08-29  0:25 Jeff Garzik
2005-06-28 16:59 Jeff Garzik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200510302035.26523.rob@landley.net \
    --to=rob@landley.net \
    --cc=akpm@osdl.org \
    --cc=jgarzik@pobox.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).