From 6de0381d619f01777d84cbcd3affa96ad376c2e1 Mon Sep 17 00:00:00 2001 From: Robert Morris Date: Tue, 10 Aug 2021 07:12:41 -0400 Subject: [PATCH] check for alignment just once --- kernel/exec.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/kernel/exec.c b/kernel/exec.c index 0e8762f..26fc8ec 100644 --- a/kernel/exec.c +++ b/kernel/exec.c @@ -52,7 +52,7 @@ exec(char *path, char **argv) if((sz1 = uvmalloc(pagetable, sz, ph.vaddr + ph.memsz)) == 0) goto bad; sz = sz1; - if(ph.vaddr % PGSIZE != 0) + if((ph.vaddr % PGSIZE) != 0) goto bad; if(loadseg(pagetable, ph.vaddr, ip, ph.off, ph.filesz) < 0) goto bad; @@ -138,9 +138,6 @@ loadseg(pagetable_t pagetable, uint64 va, struct inode *ip, uint offset, uint sz uint i, n; uint64 pa; - if((va % PGSIZE) != 0) - panic("loadseg: va must be page aligned"); - for(i = 0; i < sz; i += PGSIZE){ pa = walkaddr(pagetable, va + i); if(pa == 0)