diff options
author | Frans Kaashoek <[email protected]> | 2011-08-17 20:23:36 -0400 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2011-08-17 20:23:36 -0400 |
commit | fa81545f1c15630573dc1d312fa75f261f82b9f1 (patch) | |
tree | 0c70c6825e7b165329e84e790d127bfccbc80c8a | |
parent | 5f069dcf2f9d833a6c4f58ed87269d61c6abb687 (diff) | |
download | xv6-labs-fa81545f1c15630573dc1d312fa75f261f82b9f1.tar.gz xv6-labs-fa81545f1c15630573dc1d312fa75f261f82b9f1.tar.bz2 xv6-labs-fa81545f1c15630573dc1d312fa75f261f82b9f1.zip |
Make elf proghdr fields match what objdump prints
-rw-r--r-- | bootmain.c | 4 | ||||
-rw-r--r-- | elf.h | 6 | ||||
-rw-r--r-- | exec.c | 4 |
3 files changed, 7 insertions, 7 deletions
@@ -35,8 +35,8 @@ bootmain(void) ph = (struct proghdr*)((uchar*)elf + elf->phoff); eph = ph + elf->phnum; for(; ph < eph; ph++){ - pa = (uchar*)ph->pa; - readseg(pa, ph->filesz, ph->offset); + pa = (uchar*)ph->paddr; + readseg(pa, ph->filesz, ph->off); if(ph->memsz > ph->filesz) stosb(pa + ph->filesz, 0, ph->memsz - ph->filesz); } @@ -24,9 +24,9 @@ struct elfhdr { // Program section header struct proghdr { uint type; - uint offset; - uint va; - uint pa; + uint off; + uint vaddr; + uint paddr; uint filesz; uint memsz; uint flags; @@ -41,9 +41,9 @@ exec(char *path, char **argv) continue; if(ph.memsz < ph.filesz) goto bad; - if((sz = allocuvm(pgdir, sz, ph.va + ph.memsz)) == 0) + if((sz = allocuvm(pgdir, sz, ph.vaddr + ph.memsz)) == 0) goto bad; - if(loaduvm(pgdir, (char*)ph.va, ip, ph.offset, ph.filesz) < 0) + if(loaduvm(pgdir, (char*)ph.vaddr, ip, ph.off, ph.filesz) < 0) goto bad; } iunlockput(ip); |