提交 7d71762b 创建 作者: Silas Boyd-Wickizer's avatar Silas Boyd-Wickizer

Merge branch 'scale-amd64' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6 into scale-amd64

...@@ -73,6 +73,7 @@ void panic(const char*, ...) ...@@ -73,6 +73,7 @@ void panic(const char*, ...)
__noret__ __attribute__((format(printf, 1, 2))); __noret__ __attribute__((format(printf, 1, 2)));
void kerneltrap(struct trapframe *tf) __noret__; void kerneltrap(struct trapframe *tf) __noret__;
void snprintf(char *buf, u32 n, const char *fmt, ...); void snprintf(char *buf, u32 n, const char *fmt, ...);
void printtrace(u64 rbp);
#define assert(c) if (!(c)) { cprintf("%s:%d: ", __FILE__, __LINE__); panic("assertion failure"); } #define assert(c) if (!(c)) { cprintf("%s:%d: ", __FILE__, __LINE__); panic("assertion failure"); }
......
...@@ -148,7 +148,7 @@ puts(const char *s) ...@@ -148,7 +148,7 @@ puts(const char *s)
} }
static inline void void
printtrace(u64 rbp) printtrace(u64 rbp)
{ {
uptr pc[10]; uptr pc[10];
......
...@@ -479,8 +479,10 @@ vmap::pagefault(uptr va, u32 err) ...@@ -479,8 +479,10 @@ vmap::pagefault(uptr va, u32 err)
return -1; return -1;
atomic<pme_t> *pte = walkpgdir(pml4, va, 1); atomic<pme_t> *pte = walkpgdir(pml4, va, 1);
if (pte == nullptr) if (pte == nullptr) {
panic("pagefault: couldn't allocate page table"); cprintf("pagefault: couldn't allocate page table\n");
return -1;
}
retry: retry:
pme_t ptev = pte->load(); pme_t ptev = pte->load();
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论