param.h tweaks

上级 bdd6f279
......@@ -315,7 +315,6 @@ initkalloc(u64 mbaddr)
void
kfree(void *v)
{
verifyfree((char*) v, mykmem()->size);
kfree_pool(mykmem(), (char*) v);
}
......@@ -324,22 +323,3 @@ ksfree(int slab, void *v)
{
kfree_pool(slabmem[slab], (char*) v);
}
void
verifyfree(char *ptr, u64 nbytes)
{
#if VERIFYFREE
char *p = ptr;
char *e = p + nbytes;
for (; p < e; p++) {
// Search for pointers in the ptr region
u64 x = *(uptr *)p;
if ((KBASE < x && x < KBASE+(128ull<<30)) || (KCODE < x)) {
struct klockstat *kls = (struct klockstat *) x;
if (kls->magic == LOCKSTAT_MAGIC)
panic("LOCKSTAT_MAGIC %p(%lu):%p->%p",
ptr, nbytes, p, kls);
}
}
#endif
}
......@@ -117,7 +117,6 @@ kmfree(void *ap, u64 nbytes)
int b = bucket(nbytes);
struct header *h = (struct header *) ap;
verifyfree((char *) ap, (1<<b));
if (ALLOC_MEMSET)
memset(ap, 3, (1<<b));
......
#pragma once
#define DEBUG 0
#define NPROC 64 // maximum number of processes
#define KSTACKSIZE 8192 // size of per-process kernel stack
#define NOFILE 64 // open files per process
......@@ -14,13 +13,11 @@
#define CACHELINE 64 // cache line size
#define CPUKSTACKS (NPROC + NCPU*2)
#define QUANTUM 10 // scheduling time quantum and tick length (in msec)
#define CILKSHIFT 4 // 2^WORKSHIFT work queue slots
#define VICTIMAGE 1000000 // cycles a proc executes before an eligible victim
#define VERBOSE 0 // print kernel diagnostics
#define SPINLOCK_DEBUG DEBUG // Debug spin locks
#define RCU_TYPE_DEBUG DEBUG
#define LOCKSTAT DEBUG
#define VERIFYFREE 0 // Unreliable, e.g. vma's vmnode pointer gets reused
#define ALLOC_MEMSET DEBUG
#define KSHAREDSIZE (32 << 10)
#define USERWQSIZE (1 << 14)
......@@ -28,29 +25,34 @@
#define WQSHIFT 7
#define CILKENABLE 0
#if defined(HW_qemu)
#define NCPU 8 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#define NCPU 8 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#elif defined(HW_josmp)
#define NCPU 16 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (1<<20ull)
#define DEBUG 0
#define NCPU 16 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (1<<20ull)
#elif defined(HW_ud0)
#define NCPU 4 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (512<<20ull)
#define NCPU 4 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (512<<20ull)
#elif defined(HW_tom)
#define NCPU 48 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (1<<20ull)
#define NCPU 48 // maximum number of CPUs
#define MTRACE 0
#define PERFSIZE (1<<20ull)
#elif defined(HW_user)
#define NCPU 256
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#define NCPU 256
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#elif defined(HW_wq)
#define NCPU 2
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#define NCPU 2
#define MTRACE 0
#define PERFSIZE (16<<20ull)
#else
#error "Unknown HW"
#endif
#ifndef DEBUG
#define DEBUG 1
#endif
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论