Re: hppa64-linux-ld: mm/hugetlb.o(.text+0x50dc): cannot reach printk

From: John David Anglin
Date: Mon Jan 25 2021 - 16:21:26 EST


On 2021-01-25 4:13 p.m., Helge Deller wrote:
> On 1/25/21 10:08 PM, John David Anglin wrote:
>> I would suggest the following for this hunk:
>>
>> +    ldil    L%intr_restore, %r2
>> +    BL    preempt_schedule_irq
>> +    ldo     R%intr_restore(%r2), %r2
>>
>>     ldil    L%intr_restore, %r1
>>     b,l    preempt_schedule_irq,%r2
>>     ldo     R%intr_restore(%r1), %r2
>>
>> On PA 2.0 hardware that gives a 22-bit call.
> "BL" is already using "b,l", see #define in arch/parisc/include/asm/assembly.h
>
> The 22-bit weren't sufficient, that's why I changed it too.
Okay but "b,l" only provides a 22-bit branch with %r2 as link register.  You also need to use %r1 in the ldil and ldo instructions.

Dave

--
John David Anglin dave.anglin@xxxxxxxx