Kernel 3.15: Boot problems with a PA6T board
Christian Zigotzky
chzigotzky at xenosoft.de
Tue Jun 10 20:58:30 EST 2014
Hi Michael,
I have two times bisected with git. It seems the commit "PCI: Remove
pci_find_parent_resource() use for allocation" is the problem. I have
removed this patch from the kernel source code but unfortunately the
kernel doesn't boot. Have you another tip for me, please?
Cheers,
Christian
Am 01.06.14 00:33, schrieb Christian Zigotzky:
> On 31.05.2014 13:01, Christian Zigotzky wrote:
>> On 31.05.2014 12:28, Christian Zigotzky wrote:
>>> On 29.05.2014 04:48, Michael Ellerman wrote:
>>>> On Wed, 2014-05-28 at 13:25 +0200, Christian Zigotzky wrote:
>>>>> On 28.05.2014 10:53, Christian Zigotzky wrote:
>>>>>> Hi Michael,
>>>>>>
>>>>>> Thank you for your answer and thank you for your help. :-)
>>>>>>
>>>>>> On 28.05.2014 06:23, Michael Ellerman wrote:
>>>>>>> On Wed, 2014-05-28 at 01:08 +0200, Christian Zigotzky wrote:
>>>>>>>
>>>>>>> I'm going to guess that cd427485357c0c4b99f69719251baacf25946e11 is
>>>>>>> BAD. Can
>>>>>>> you please confirm or deny that?
>>>>>> It's not BAD. It boots.
>>>> Hmm, interesting.
>>>>
>>>>>>> If cd42748 is *good*, then you'll need to do a bigger bisect from
>>>>>>> d8ff9cd to
>>>>>>> 18a1a7a.
>>>>> OK :-)
>>>>>
>>>>> -> git clone
>>>>> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>>>> linux2-git
>>>>> -> git bisect start
>>>>> -> git bisect good d8ff9cdf68fd119d491f3de90e1a612afc2f3b2b
>>>>> -> git bisect bad 18a1a7a1d862ae0794a0179473d08a414dd49234
>>>>>
>>>>> Output:
>>>>> Bisecting: 5900 revisions left to test after this (roughly 13 steps)
>>>>> [cb1595563880a81dab6eab9a5ecb4520d2e76077] Merge tag
>>>>> 'tty-3.15-rc1' of
>>>>> git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
>>>>>
>>>>> Unfortunately it doesn't boot. :-(
>>>> OK. So you do:
>>>>
>>>> $ git bisect bad
>>>>
>>>> And it will pick a new commit for you to test. Repeat that ~13
>>>> times and you
>>>> should have identified the bad commit.
>>> OK :-)
>>>
>>> git bisect bad
>>> Bisecting: 2902 revisions left to test after this (roughly 12 steps)
>>> [b22f136071b1a797e96b3ee6fb0dc32625bd152e] staging: rtl8821ae: Fix
>>> quoted string split across lines <- Kernel boots :-)
>>>
>>> What shall I do next?
>> OK, I know it: git bisect good
>>
>> -- Christian
>>
> git bisect good
> Bisecting: 1494 revisions left to test after this (roughly 11 steps)
> [3786075b5ebc8c4eaefd9e3ebf72883934fb64b3] Merge tag 'regulator-v3.15'
> of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator <-
> Kernel boots
>
> git bisect good
> Bisecting: 797 revisions left to test after this (roughly 10 steps)
> [69dd89fd2b9406603d218cab8996cfb232d5b8b9] Merge tag 'asoc-v3.15-4' of
> git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into
> for-linus <- Kernel boots
>
> git bisect good
> Bisecting: 372 revisions left to test after this (roughly 9 steps)
> [4b1779c2cf030c68aefe939d946475e4136c1895] Merge tag
> 'pci-v3.15-changes' of
> git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci <- Doesn't boot
>
> git bisect bad
> Bisecting: 212 revisions left to test after this (roughly 8 steps)
> [45b15d98a96ffdb3c608bdad952f51930c151420] Merge remote-tracking
> branches 'spi/topic/xilinx' and 'spi/topic/xtfpga' into spi-next <-
> Kernel boots
>
> git bisect good
> Bisecting: 118 revisions left to test after this (roughly 7 steps)
> [91b4adc983d8e9975bc677c2b8395631edf7b92d] Merge branch 'pci/misc'
> into next <- Kernel boots
>
> git bisect good
> Bisecting: 41 revisions left to test after this (roughly 6 steps)
> [26f31fb936042459d481557a83bda7a3f4d61906] Merge tag 'hwmon-for-linus'
> of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
> <- Kernel boots
>
> git bisect good
> Bisecting: 20 revisions left to test after this (roughly 4 steps)
> [e20fa6609a0076def469aeb799b1c25558e70042] PCI: Don't check
> resource_size() in pci_bus_alloc_resource() <- Doesn't boot
>
> git bisect bad
> Bisecting: 10 revisions left to test after this (roughly 3 steps)
> [cd8a4d3657c3f2cf9ce3780707be1debb8fea6e2] PCI: Check IORESOURCE_UNSET
> before updating BAR <- Doesn't boot
>
> git bisect bad
> Bisecting: 4 revisions left to test after this (roughly 2 steps)
> [5edb93b89f6cc3089ee283656555e7a9ad36a8a0] resource: Add
> resource_contains() <- Kernel boots
>
> git bisect good
> Bisecting: 2 revisions left to test after this (roughly 1 step)
> [f44116ae881868ab72274df1eff48fdbde9898af] PCI: Remove
> pci_find_parent_resource() use for allocation <- Doesn't boot
>
> git bisect bad
> Bisecting: 0 revisions left to test after this (roughly 0 steps)
> [d19cb803a2ff85d1b64b9628e1aec2aa76a9260b] vsprintf: Add support for
> IORESOURCE_UNSET in %pR <- Kernel boots
>
> git bisect good
> f44116ae881868ab72274df1eff48fdbde9898af is the first bad commit
> commit f44116ae881868ab72274df1eff48fdbde9898af
> Author: Bjorn Helgaas <bhelgaas at google.com>
> Date: Wed Feb 26 11:25:58 2014 -0700
>
> PCI: Remove pci_find_parent_resource() use for allocation
>
> If the resource hasn't been allocated yet,
> pci_find_parent_resource() is
> documented as returning the region "where it should be allocated
> from."
> This is impossible in general because there may be several
> candidates: a
> prefetchable BAR can be put in either a prefetchable or
> non-prefetchable
> window, a transparent bridge may have overlapping positively- and
> subtractively-decoded windows, and a root bus may have several
> windows of
> the same type.
>
> Allocation should be done by pci_bus_alloc_resource(), which iterates
> through all bus resources and looks for the best match, e.g., one
> with the
> desired prefetchability attributes, and falls back to less-desired
> possibilities.
>
> The only valid use of pci_find_parent_resource() is to find the
> parent of
> an already-allocated resource so we can claim it via
> request_resource(),
> and all we need for that is a bus region of the correct type that
> contains
> the resource.
>
> Note that like 8c8def26bfaa ("PCI: allow matching of prefetchable
> resources
> to non-prefetchable windows"), this depends on
> pci_bus_for_each_resource()
> iterating through positively-decoded regions before
> subtractively-decoded
> ones. We prefer not to return a subtractively-decoded region because
> requesting from it will likely conflict with the overlapping
> positively-
> decoded window (see Launchpad report below).
>
> Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/424142
> Signed-off-by: Bjorn Helgaas <bhelgaas at google.com>
> CC: Linus Torvalds <torvalds at linux-foundation.org>
>
> :040000 040000 d9f2e04d3a635126a3c42406400b156aea3d2e30
> 43278454117307fa7e155fb241b16b1863ea45d0 M drivers
>
>
More information about the Linuxppc-dev
mailing list