linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: Dove: allow PCI to be disabled
Date: Mon, 10 Sep 2012 09:29:42 +0100	[thread overview]
Message-ID: <20120910082941.GO13739@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <20120910014422.GQ4575@titan.lakedaemon.net>

On Sun, Sep 09, 2012 at 09:44:22PM -0400, Jason Cooper wrote:
> iiuc, the regression you are refering to would occur iff this patch
> (without the select) makes it into mainline _before_ Andrew's patch in
> Greg's tree.  As I haven't pulled this patch yet, I can add a dependency
> in the tag message listing the patch in gregkh's usb tree.

For the regression to occur, you need to land on a commit in the tree
where this patch (without the select) is in the history but not the
patch in Greg's tree.

The commit history remains a series of independent branches even after
trees are merged into Linus' tree - there is _no_ linearisation of the
history in git.

This means when anyone comes to use git bisect, they _can_ land on any
commit in any branch, which means if this patch and the other patch
take two different routes, and this patch does not have the select, you
_will_ hit the regression.

Let me illustrate:

---A----B----C----D---...---E----M
   `--G----H----I----J---...---K-'

Let's say A-E is Greg's tree, and D is the commit you are talking about.
Let's say G-K is Arnd's tree, and H is my patch without the 'select'
statement.  Let's also say that '...' in each case includes a significant
number of commits.

If, through a git bisect (or manual commit selection) you end up trying
to build at any commit I to K, you will not be builting a tree with D
in, but you will be building a tree with H in.  You end up with EHCI
being disabled in your configuration.

What this also means is that when building Arnd's tree without Greg's tree,
you will also end up with EHCI disabled in those configurations (because
you also don't have commit D.)

See?  There is no such thing as "lets make sure tree X gets merged before
tree Y because commit A depends on commit B".  That "solution" doesn't fix
any dependency between the two commits - it merely gives the impression
that it does because you're looking only at the result.

That kind of solution is broken thinking.

> Arnd and
> Olof would heed this and make sure this patch comes after Andrews.  This
> should prevent the regression.

As you can see from the above, tree order does not solve these issues.
It gives the impression from the final result that it does, but it
doesn't.  It breaks at least our most powerful regression debug tool -
git bisect.

  reply	other threads:[~2012-09-10  8:29 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-09 19:34 [PATCH] ARM: Dove: allow PCI to be disabled Russell King
2012-09-09 20:47 ` Andrew Lunn
2012-09-09 20:55   ` Russell King - ARM Linux
2012-09-09 21:01     ` Jason Cooper
2012-09-10  0:45       ` Russell King - ARM Linux
2012-09-10  1:44         ` Jason Cooper
2012-09-10  8:29           ` Russell King - ARM Linux [this message]
2012-09-10 17:01             ` Nicolas Pitre
2012-09-15  0:13             ` Jason Cooper
2012-09-10 16:45           ` Nicolas Pitre
2012-09-15  0:02             ` Jason Cooper
  -- strict thread matches above, loose matches on Subject: below --
2012-08-15  8:57 Russell King - ARM Linux
2012-08-15 12:18 ` Jason Cooper
2012-08-15 14:52   ` Russell King - ARM Linux

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=20120910082941.GO13739@n2100.arm.linux.org.uk \
    --to=linux@arm.linux.org.uk \
    --cc=linux-arm-kernel@lists.infradead.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).