diff options
author | Robert Morris <[email protected]> | 2019-07-01 17:01:50 -0400 |
---|---|---|
committer | Robert Morris <[email protected]> | 2019-07-01 17:01:50 -0400 |
commit | 18e76a6c47b0f62b2458430d4357f3eb68bfd759 (patch) | |
tree | 24b532218d747883681e96b4d6d3e33964d83459 /user | |
parent | 9b99f007434ea3af0c4834a91f19952d5670e16b (diff) | |
download | xv6-labs-18e76a6c47b0f62b2458430d4357f3eb68bfd759.tar.gz xv6-labs-18e76a6c47b0f62b2458430d4357f3eb68bfd759.tar.bz2 xv6-labs-18e76a6c47b0f62b2458430d4357f3eb68bfd759.zip |
sbrk() returns a pointer, so it should be 64 bits
Diffstat (limited to 'user')
-rw-r--r-- | user/usertests.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/user/usertests.c b/user/usertests.c index beca8f9..0aafe73 100644 --- a/user/usertests.c +++ b/user/usertests.c @@ -1438,6 +1438,13 @@ sbrktest(void) printf(stdout, "sbrk test\n"); oldbrk = sbrk(0); + // does sbrk() return the expected failure value? + a = sbrk(1024*1024*1024); + if(a != (char*)0xffffffffffffffffL){ + printf(stdout, "sbrk(<toomuch>) returned %p\n", a); + exit(); + } + // can one sbrk() less than a page? a = sbrk(0); for(i = 0; i < 5000; i++){ @@ -1478,7 +1485,7 @@ sbrktest(void) // can one de-allocate? a = sbrk(0); c = sbrk(-4096); - if(c == (char*)0xffffffff){ + if(c == (char*)0xffffffffffffffffL){ printf(stdout, "sbrk could not deallocate\n"); exit(); } @@ -1551,7 +1558,7 @@ sbrktest(void) kill(pids[i]); wait(); } - if(c == (char*)0xffffffff){ + if(c == (char*)0xffffffffffffffffL){ printf(stdout, "failed sbrk leaked memory\n"); exit(); } |