From 6dbab3072e8f50e25137fa53c7ffce0d111c2338 Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Thu, 19 Aug 2010 12:08:01 -0500 Subject: Enable -Wall and fix warnings. --- config.mk | 7 ++++--- src/include/kernel/console.H | 2 +- src/kernel/console.C | 3 ++- src/kernel/cpumgr.C | 2 +- src/kernel/heapmgr.C | 4 ++-- src/kernel/pagemgr.C | 10 +++++----- src/kernel/vmmmgr.C | 24 ++++++++++++------------ src/lib/string.c | 1 + 8 files changed, 28 insertions(+), 25 deletions(-) diff --git a/config.mk b/config.mk index 82484c96a..d74cd051f 100644 --- a/config.mk +++ b/config.mk @@ -2,10 +2,11 @@ CC = ppc64-linux-gcc CXX = ppc64-linux-g++ LD = ppc64-linux-ld -COMMONFLAGS = -O3 -nostdlib -CFLAGS = ${COMMONFLAGS} -mcpu=power7 -nostdinc -g -msoft-float -mno-altivec +COMMONFLAGS = -O3 -nostdlib ${EXTRACOMMONFLAGS} +CFLAGS = ${COMMONFLAGS} -mcpu=power7 -nostdinc -g -msoft-float -mno-altivec \ + -Wall ASMFLAGS = ${COMMONFLAGS} -mcpu=power7 -CXXFLAGS = ${CFLAGS} -nostdinc++ -fno-rtti -fno-exceptions +CXXFLAGS = ${CFLAGS} -nostdinc++ -fno-rtti -fno-exceptions -Wall LDFLAGS = -static --sort-common -Map $@.map ${COMMONFLAGS} INCDIR = ${OBJDIR}/../src/include/ diff --git a/src/include/kernel/console.H b/src/include/kernel/console.H index d54132ffb..31bb9c94a 100644 --- a/src/include/kernel/console.H +++ b/src/include/kernel/console.H @@ -18,8 +18,8 @@ class Console ~Console() {}; private: + size_t iv_pos; char * iv_buffer; - size_t iv_pos; }; #endif diff --git a/src/kernel/console.C b/src/kernel/console.C index ec1110202..032d74213 100644 --- a/src/kernel/console.C +++ b/src/kernel/console.C @@ -19,6 +19,7 @@ int Console::putc(int c) { iv_buffer[__sync_fetch_and_add(&iv_pos, 1)] = c; } + return c; } class ConsoleTraits @@ -117,7 +118,7 @@ void printk(const char* str, ...) Console& console = Singleton::instance(); bool format = false; - int size; + int size = 0; while('\0' != *str) { diff --git a/src/kernel/cpumgr.C b/src/kernel/cpumgr.C index 58fabdd8c..bfb6b5af9 100644 --- a/src/kernel/cpumgr.C +++ b/src/kernel/cpumgr.C @@ -41,7 +41,7 @@ void CpuManager::startCPU(ssize_t i) i = getCpuId(); currentCPU = true; } - else if (getCpuId() == i) + else if (getCpuId() == (uint64_t)i) { currentCPU = true; } diff --git a/src/kernel/heapmgr.C b/src/kernel/heapmgr.C index b6e47140c..cac6999b5 100644 --- a/src/kernel/heapmgr.C +++ b/src/kernel/heapmgr.C @@ -22,8 +22,8 @@ void HeapManager::free(void* p) void* HeapManager::_allocate(size_t n) { - int which_bucket = 0; - while (n > ((1 << (which_bucket + 4)) - 8)) which_bucket++; + size_t which_bucket = 0; + while (n > (size_t)((1 << (which_bucket + 4)) - 8)) which_bucket++; chunk_t* chunk = (chunk_t*)NULL; chunk = pop_bucket(which_bucket); diff --git a/src/kernel/pagemgr.C b/src/kernel/pagemgr.C index a184ee23f..022b642b0 100644 --- a/src/kernel/pagemgr.C +++ b/src/kernel/pagemgr.C @@ -42,7 +42,7 @@ PageManager::PageManager() size_t page_length = BUCKETS-1; while(length > 0) { - while (length < (1 << page_length)) + while (length < (size_t)(1 << page_length)) page_length--; first_page[page_length].push(page); @@ -55,8 +55,8 @@ PageManager::PageManager() void* PageManager::_allocatePage(size_t n) { - int which_bucket = 0; - while (n > (1 << which_bucket)) which_bucket++; + size_t which_bucket = 0; + while (n > (size_t)(1 << which_bucket)) which_bucket++; int retries = 0; page_t* page = (page_t*)NULL; @@ -80,8 +80,8 @@ void PageManager::_freePage(void* p, size_t n) { if ((NULL == p) || (0 == n)) return; - int which_bucket = 0; - while (n > (1 << which_bucket)) which_bucket++; + size_t which_bucket = 0; + while (n > (size_t)(1 << which_bucket)) which_bucket++; push_bucket((page_t*)p, which_bucket); return; diff --git a/src/kernel/vmmmgr.C b/src/kernel/vmmmgr.C index 71fb33523..3aac6fed1 100644 --- a/src/kernel/vmmmgr.C +++ b/src/kernel/vmmmgr.C @@ -61,12 +61,12 @@ void VmmManager::initSLB() void VmmManager::initPTEs() { // Invalidate all. - for(int i = 0; i < PTEG_COUNT; i++) - for (int j = 0; j < PTEG_SIZE; j++) + for(size_t i = 0; i < PTEG_COUNT; i++) + for (size_t j = 0; j < PTEG_SIZE; j++) setValid(false, getPte(i,j)); // Set up linear map. - for(int i = 0; i < (FULL_MEM_SIZE / PAGESIZE); i++) + for(size_t i = 0; i < (FULL_MEM_SIZE / PAGESIZE); i++) { ACCESS_TYPES access = NORMAL_ACCESS; if (0 == i) @@ -164,17 +164,17 @@ void* VmmManager::_mmioMap(void* ra, size_t pages) uint64_t _ra = (uint64_t) ra; // Search for memory already mapped in. - for (int i = 0; i < MMIO_T_ENTRIES; i++) + for (size_t i = 0; i < MMIO_T_ENTRIES; i++) { - if ((mmioMapT[i] & ~(PAGESIZE - 1) == _ra)) + if ((mmioMapT[i] & ~(PAGESIZE - 1)) == _ra) { if (i + pages < MMIO_T_ENTRIES) { bool matched = true; - for (int j = 1; j < pages; j++) + for (size_t j = 1; j < pages; j++) { - if ((mmioMapT[i+j] & ~(PAGESIZE - 1) != - (_ra + (j*PAGESIZE)))) + if ((mmioMapT[i+j] & ~(PAGESIZE - 1)) != + (_ra + (j*PAGESIZE))) { matched = false; break; @@ -193,7 +193,7 @@ void* VmmManager::_mmioMap(void* ra, size_t pages) if (-1 != match) { // Increment ref counts. - for (int i = 0; i < pages; i++) + for (size_t i = 0; i < pages; i++) { mmioMapT[match + i]++; } @@ -203,12 +203,12 @@ void* VmmManager::_mmioMap(void* ra, size_t pages) } // Search for empty region in map. - for (int i = 0; i < MMIO_T_ENTRIES; i++) + for (size_t i = 0; i < MMIO_T_ENTRIES; i++) { if (0 == mmioMapT[i]) { bool matched = true; - for (int j = 1; j < pages; j++) + for (size_t j = 1; j < pages; j++) { if (0 != mmioMapT[i+j]) { @@ -227,7 +227,7 @@ void* VmmManager::_mmioMap(void* ra, size_t pages) // Found region to use for map. if (-1 != match) { - for (int i = 0; i < pages; i++) + for (size_t i = 0; i < pages; i++) { mmioMapT[match + i] = _ra + 1; // RA + ref count of 1. } diff --git a/src/lib/string.c b/src/lib/string.c index eb8fe3d1c..c267c11d7 100644 --- a/src/lib/string.c +++ b/src/lib/string.c @@ -8,6 +8,7 @@ void* memset(void* s, int c, size_t n) *_s = c; _s++; n--; } + return s; } char* strcpy(char* d, const char* s) -- cgit v1.2.1