Index: kernel/generic/src/mm/frame.c
===================================================================
--- kernel/generic/src/mm/frame.c	(revision 55b4437bdcc5790bfe222c92e169475ebe269545)
+++ kernel/generic/src/mm/frame.c	(revision 2936eefc2b013e1f23260bbb8ab10fec05e6f3a3)
@@ -94,5 +94,5 @@
 typedef struct {
 	SPINLOCK_DECLARE(lock);
-	int count;
+	unsigned int count;
 	zone_t *info[ZONES_MAX];
 } zones_t;
@@ -145,5 +145,5 @@
 static int zones_add_zone(zone_t *newzone)
 {
-	int i,j;
+	unsigned int i, j;
 	ipl_t ipl;
 	zone_t *z;
@@ -186,8 +186,8 @@
  * @return Pointer to locked zone containing frame
  */
-static zone_t * find_zone_and_lock(pfn_t frame, int *pzone)
-{
-	int i;
-	int hint = pzone ? *pzone : 0;
+static zone_t * find_zone_and_lock(pfn_t frame, unsigned int *pzone)
+{
+	unsigned int i;
+	unsigned int hint = pzone ? *pzone : 0;
 	zone_t *z;
 	
@@ -233,7 +233,7 @@
 static zone_t * find_free_zone_and_lock(uint8_t order, int *pzone)
 {
-	int i;
+	unsigned int i;
 	zone_t *z;
-	int hint = pzone ? *pzone : 0;
+	unsigned int hint = pzone ? *pzone : 0;
 	
 	spinlock_lock(&zones.lock);
@@ -540,5 +540,6 @@
 {
 	uint8_t max_order;
-	int i, z2idx;
+	unsigned int i;
+	int z2idx;
 	pfn_t frame_idx;
 	frame_t *frame;
@@ -562,5 +563,5 @@
 			    (void *) z);
 
-	z->frames = (frame_t *)((void *)z->buddy_system+buddy_conf_size(max_order));
+	z->frames = (frame_t *)((uint8_t *) z->buddy_system + buddy_conf_size(max_order));
 	for (i = 0; i < z->count; i++) {
 		/* This marks all frames busy */
@@ -574,7 +575,7 @@
 	 * problems with allocation/free.
 	 */
-	for (i=0; i<z1->count; i++)
+	for (i = 0; i < z1->count; i++)
 		z->frames[i] = z1->frames[i];
-	for (i=0; i < z2->count; i++) {
+	for (i = 0; i < z2->count; i++) {
 		z2idx = i + (z2->base - z1->base);
 		z->frames[z2idx] = z2->frames[i];
@@ -624,5 +625,5 @@
 	frame_t *frame;
 	count_t cframes;
-	int i;
+	unsigned int i;
 
 	pfn = ADDR2PFN((uintptr_t)KA2PA(oldzone));
@@ -635,5 +636,5 @@
 	ASSERT(!frame->buddy_order);
 
-	for (i=0; i < cframes; i++) {
+	for (i = 0; i < cframes; i++) {
 		newzone->busy_count++;
 		zone_frame_free(newzone, pfn+i-newzone->base);
@@ -658,11 +659,11 @@
 	frame_t *frame;
 	
-	ASSERT(frame_idx+count < zone->count);
+	ASSERT(frame_idx + count < zone->count);
 
 	order = zone->frames[frame_idx].buddy_order;
-	ASSERT((1 << order) >= count);
+	ASSERT((count_t) (1 << order) >= count);
 
 	/* Reduce all blocks to order 0 */
-	for (i=0; i < (1 << order); i++) {
+	for (i = 0; i < (count_t) (1 << order); i++) {
 		frame = &zone->frames[i + frame_idx];
 		frame->buddy_order = 0;
@@ -672,5 +673,5 @@
 	}
 	/* Free unneeded frames */
-	for (i=count; i < (1 << order); i++) {
+	for (i = count; i < (count_t) (1 << order); i++) {
 		zone_frame_free(zone, i + frame_idx);
 	}
@@ -686,11 +687,11 @@
  *   possible, merged configuration data occupies more space :-/
  */
-void zone_merge(int z1, int z2)
+void zone_merge(unsigned int z1, unsigned int z2)
 {
 	ipl_t ipl;
 	zone_t *zone1, *zone2, *newzone;
-	int cframes;
+	unsigned int cframes;
 	uint8_t order;
-	int i;
+	unsigned int i;
 	pfn_t pfn;
 
@@ -723,5 +724,5 @@
 		goto errout2;
 
-	newzone = (zone_t *)PA2KA(PFN2ADDR(pfn));
+	newzone = (zone_t *) PA2KA(PFN2ADDR(pfn));
 
 	_zone_merge(newzone, zone1, zone2);
@@ -780,5 +781,5 @@
 static void zone_construct(pfn_t start, count_t count, zone_t *z, int flags)
 {
-	int i;
+	unsigned int i;
 	uint8_t max_order;
 
@@ -802,6 +803,6 @@
 	/* Allocate frames _after_ the conframe */
 	/* Check sizes */
-	z->frames = (frame_t *)((void *)z->buddy_system+buddy_conf_size(max_order));
-	for (i = 0; i<count; i++) {
+	z->frames = (frame_t *)((uint8_t *) z->buddy_system + buddy_conf_size(max_order));
+	for (i = 0; i < count; i++) {
 		frame_initialize(&z->frames[i]);
 	}
@@ -849,5 +850,5 @@
 	uintptr_t addr;
 	count_t confcount;
-	int i;
+	unsigned int i;
 	int znum;
 
@@ -893,6 +894,6 @@
 
 	/* If confdata in zone, mark as unavailable */
-	if (confframe >= start && confframe < start+count)
-		for (i=confframe; i<confframe+confcount; i++) {
+	if (confframe >= start && confframe < start + count)
+		for (i = confframe; i < confframe + confcount; i++) {
 			zone_mark_unavailable(z, i - z->base);
 		}
@@ -904,5 +905,5 @@
 
 /** Set parent of frame */
-void frame_set_parent(pfn_t pfn, void *data, int hint)
+void frame_set_parent(pfn_t pfn, void *data, unsigned int hint)
 {
 	zone_t *zone = find_zone_and_lock(pfn, &hint);
@@ -914,5 +915,5 @@
 }
 
-void * frame_get_parent(pfn_t pfn, int hint)
+void * frame_get_parent(pfn_t pfn, unsigned int hint)
 {
 	zone_t *zone = find_zone_and_lock(pfn, &hint);
@@ -1045,9 +1046,9 @@
 void frame_mark_unavailable(pfn_t start, count_t count)
 {
-	int i;
+	unsigned int i;
 	zone_t *zone;
-	int prefzone = 0;
-	
-	for (i=0; i < count; i++) {
+	unsigned int prefzone = 0;
+	
+	for (i = 0; i < count; i++) {
 		zone = find_zone_and_lock(start + i, &prefzone);
 		if (!zone) /* PFN not found */
@@ -1095,5 +1096,5 @@
 void zone_print_list(void) {
 	zone_t *zone = NULL;
-	int i;
+	unsigned int i;
 	ipl_t ipl;
 
@@ -1116,8 +1117,8 @@
  * @param num Zone base address or zone number.
  */
-void zone_print_one(int num) {
+void zone_print_one(unsigned int num) {
 	zone_t *zone = NULL;
 	ipl_t ipl;
-	int i;
+	unsigned int i;
 
 	ipl = interrupts_disable();
