[parisc-linux] Panic on boot in 64 bit 2.6.6-rc1-pa0
John David Anglin
dave at hiauly1.hia.nrc.ca
Fri Apr 23 10:57:10 MDT 2004
> It has a .level 2.0w (with the appropriate #ifdefs) at the top.
The .level 2.0w should come before any actual assembly code. If the
includes define any assembly code this could be a problem. The assembler
isn't very smart about changing levels.
> Now, if you look at an objdump of the .o, it shows:
>
> 000000000000205c <syscall_do_resched>:
> 205c: e8 40 00 00 b,l 2064 <syscall_do_resched+0x8>,rp
> 205c: R_PARISC_PCREL17F schedule
> 2060: 37 dd 3f e1 ldo -10(sp),ret1
> 2064: e8 1f 1b ed b,l 1e60 <syscall_check_bh>,r0
> 2068: 08 00 02 40 nop
>
> I suppose this means gas thinks it has to emit short relocations.
Yes. The code is using "bl". It looks as if the assembler is
generating a 17-bit branch (sub-opcode 0) when it sees a "bl"
even when generating PA 2.0w code. This would appear to be
wrong although I haven't checked what the HP assembler does.
Can you use "b,l" for PA 2.0 code?
Dave
--
J. David Anglin dave.anglin at nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
More information about the parisc-linux
mailing list