Port-powerpc archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: evbppc/powerpc cant run init
On Dec 12, 2003, at 8:52 AM, Juergen Hannken-Illjes wrote:
With the recent change to kern/exec_elf32.c evbppc/powerpc can't run
init:
kern/exec_elf32.c treats every program section with VM_PROT_WRITE as
data.
/sbin/init is
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg
Align
PHDR 0x000034 0x01800034 0x01800034 0x000c0 0x000c0 R E 0x4
INTERP 0x000114 0x01800114 0x01800114 0x00013 0x00013 R 0x1
LOAD 0x000000 0x01800000 0x01800000 0x0427c 0x0427c RWE
0x10000
LOAD 0x00427c 0x0181427c 0x0181427c 0x00158 0x0066c RWE
0x10000
DYNAMIC 0x0042e0 0x018142e0 0x018142e0 0x000c8 0x000c8 RW 0x4
NOTE 0x000128 0x01800128 0x01800128 0x00018 0x00018 R 0x4
Both text and data are rwx and thus treated as data.
--
Juergen Hannken-Illjes - hannken%eis.cs.tu-bs.de@localhost - TU Braunschweig
(Germany)
This is actually due to a bug in gcc 3.3.2 which was marking the .init
and
.fini sections as writable. I pulled up a fix from gcc -current which
fixes
the problem.
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg
Align
PHDR 0x000034 0x01800034 0x01800034 0x000c0 0x000c0 R E 0x4
INTERP 0x000114 0x01800114 0x01800114 0x00013 0x00013 R 0x1
[Requesting program interpreter: /libexec/ld.elf_so]
LOAD 0x000000 0x01800000 0x01800000 0x042b4 0x042b4 R E
0x10000
LOAD 0x0042b4 0x018142b4 0x018142b4 0x00158 0x00674 RWE
0x10000
DYNAMIC 0x004318 0x01814318 0x01814318 0x000c8 0x000c8 RW 0x4
NOTE 0x000128 0x01800128 0x01800128 0x00018 0x00018 R 0x4
So you'll have to do a new full build to get things to work again.
--
Matt Thomas email: matt%3am-software.com@localhost
3am Software Foundry www: http://3am-software.com/bio/matt/
Cupertino, CA disclaimer: I avow all knowledge of this
message.
Home |
Main Index |
Thread Index |
Old Index