rem: kernel_image->regions[0].start = areaInfo.address;
add: kernel_image->regions[0].start = (addr)areaInfo.address;
context: elf_init(kernel_args *ka){	area_info areaInfo;	mutex_init(&image_lock, "kimages_lock");	mutex_init(&image_load_lock, "kimages_load_lock");	// build a image structure for the kernel, which has already been loaded	kernel_image = create_image_struct();	kernel_image->name = strdup("kernel");	// text segment	kernel_image->regions[0].id = find_area("kernel_ro");	if (kernel_image->regions[0].id < 0)		panic("elf_init: could not look up kernel text segment region\n");	get_area_info(kernel_image->regions[0].id, &areaInfo);	kernel_image->regions[0].start = areaInfo.address;	kernel_image->regions[0].size = areaInfo.size;	// data segment	kernel_image->regions[1].id = find_area("kernel_rw");	if (kernel_image->regions[1].id < 0)		panic("elf_init: could not look up kernel data segment region\n");	get_area_info(kernel_image->regions[1].id, &areaInfo);	kernel_image->regions[1].start = areaInfo.address;	kernel_image->regions[1].size = areaInfo.size;	// we know where the dynamic section is	kernel_image->dynamic_ptr = (addr)ka->kernel_dynamic_section_addr.start;	// parse the dynamic section	if (elf_parse_dynamic_section(kernel_image) < 0)		dprintf("elf_init: WARNING elf_parse_dynamic_section couldn't find dynamic section.\n");	// insert it first in the list of kernel images loaded	kernel_images = NULL;	insert_image_in_list(kernel_image);	add_debugger_command("ls", &print_address_info, "lookup symbol for a particular address");	return 0;}