Re: Bug: Microblaze stopped booting after 0fa1c579349fdd90173381712ad78aa99c09d38b
From: Michal Simek
Date: Fri Mar 16 2018 - 14:02:49 EST
On 16.3.2018 16:18, Rob Herring wrote:
> On Wed, Mar 14, 2018 at 10:04 AM, Michal Simek <monstr@xxxxxxxxx> wrote:
>> On 12.3.2018 11:21, Michal Simek wrote:
>>> On 12.3.2018 08:52, Alvaro G. M. wrote:
>>>> On Fri, Mar 09, 2018 at 01:05:11PM -0600, Rob Herring wrote:
>>>>> On Fri, Mar 9, 2018 at 6:51 AM, Alvaro G. M. <alvaro.gamez@xxxxxxxxxx> wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I've found via git bisect that 0fa1c579349fdd90173381712ad78aa99c09d38b
>>>>>> makes microblaze unbootable.
>>>>>>
>>>>>> I'm sorry I can't provide any console output, as nothing appears at all,
>>>>>> even when setting earlyprintk (or at least I wasn't able to get anything
>>>>>> back!).
>>>>>
>>>>> Ah, looks like microblaze doesn't set CONFIG_NO_BOOTMEM and so
>>>>> memblock_virt_alloc() doesn't work for CONFIG_HAVE_MEMBLOCK &&
>>>>> !CONFIG_NO_BOOTMEM. AFAICT, microblaze doesn't really need bootmem and
>>>>> it can be removed, but I'm still investigating. Can you try out this
>>>>> branch[1].
>>>>>
>>>>> Rob
>>>>>
>>>>> [1] git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git
>>>>> microblaze-fixes
>>>>
>>>> Hi, Rob!
>>>>
>>>> This branch does indeed solve the issue. My microblaze system is now
>>>> booting as it did before, and everything seems normal now. Thanks!
>>>>
>>>> Tested-by: Alvaro Gamez Machado <alvaro.gamez@xxxxxxxxxx>
>>>>
>>>
>>> I have tested it and I can also confirm that your two patches are fixing
>>> issue with
>>>
>>> 809d0e2c: 00240034 26000000 746f6f62 206d656d 4.$....&bootmem
>>> 809d0e3c: 6f6c6c61 666f2063 33353220 62203830 alloc of 25308 b
>>> 809d0e4c: 73657479 69616620 2164656c 00000000 ytes failed!....
>>> 809d0e5c: 00000000 0029003c 06000000 6e72654b ....<.).....Kern
>>> 809d0e6c: 70206c65 63696e61 6e202d20 7320746f el panic - not s
>>>
>>> Can you please update that second commit with reasonable description and
>>> send it out? I will take it via my tree and will send pull request to Linus.
>>>
>>
>> I couldn't wait to fix current issue till 4.16 is done that's why I have
>> sent that patches with updated commit message to lkml.
>
> Thanks for writing my commit msg. :) I got distracted looking at
> whether other arches got broken too and didn't get this sent out.
>
> BTW, there is a more simple fix of just moving setup_memory() call to
> before unflattening if you prefer for 4.16.
I have sent pull request to Linus with your two patches and a lot of
architectures is setting this up that's why not a problem. I need to
also look at the rest of your patches and how in-kernel dtb is handled
because there is a size limit which was fine for years but we have
reached the case that it is not enough. Simple extension is easy but not
generic solution.
Thanks,
Michal
--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP SoCs
Attachment:
signature.asc
Description: OpenPGP digital signature