From: Steve D. <ste...@us...> - 2009-01-16 18:14:47
|
Update of /cvsroot/evms/evms2/engine/plugins/md In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv26794 Modified Files: linear_mgr.c md.h md_discover.c md_dlist.c md_dlist.h md_info.c md_main.c md_super.c md_super.h multipath.c raid0_mgr.c raid1_funcs.c raid1_mgr.c raid5_funcs.c raid5_mgr.c Log Message: Cleanup compiler warnings. Added bonus: My editor cleans up trailing whitespace. Index: raid5_mgr.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/raid5_mgr.c,v retrieving revision 1.117 retrieving revision 1.118 diff -u -d -r1.117 -r1.118 --- raid5_mgr.c 4 Jan 2008 22:12:21 -0000 1.117 +++ raid5_mgr.c 16 Jan 2009 18:14:39 -0000 1.118 @@ -95,14 +95,14 @@ { raid5_conf_t * conf = mdvol_to_conf(vol); disk_info_t * conf_disk; - int disk_index; + u_int32_t disk_index; md_member_t *member; storage_object_t *obj; list_element_t iter; md_super_info_t info; mdu_disk_info_t d; - int i, count, length = 0; - int conf_disks; + uint i, count, length = 0; + u_int32_t conf_disks; int rc = 0; LOG_ENTRY(); @@ -119,8 +119,8 @@ LOG_DEBUG("%s: info.raid_disks: %d, info.nr_disks: %d.\n", vol->name, info.raid_disks, info.nr_disks); conf_disks = (info.raid_disks > info.nr_disks) ? info.raid_disks : info.nr_disks; - - /* + + /* * If a spare is added to fix a degrade array and recovery is running, * its index could be greater than nr_disks. * We should take this into account when allocating memory for disks. @@ -135,7 +135,7 @@ conf_disks = member->dev_number + 1; } } - + conf->disks = EngFncs->engine_alloc(sizeof(disk_info_t) * conf_disks); conf->stripe.nr_disks = conf_disks; conf->stripe.chunks = EngFncs->engine_alloc(sizeof(chunk_t) * conf_disks); @@ -160,7 +160,7 @@ * During discovery, raid_disk is set to -1 for spare devices. * Therefore, we can not use -1, must use i instead. */ - if (disk_index == -1) { + if ((int) disk_index == -1) { disk_index = d.number; } @@ -262,7 +262,7 @@ if (conf->failed_disk_index < 0) { /* Find the missing disk. */ - for (i = 0; (i <conf->raid_disks) && (conf->failed_disk_index < 0); i++) { + for (i = 0; ((int) i <conf->raid_disks) && (conf->failed_disk_index < 0); i++) { if (conf->disks[i].used_slot == 0) { conf->failed_disk_index = i; } @@ -414,7 +414,7 @@ * * Can we remove the specified MD logical volume */ -static int raid5_can_delete( storage_object_t * region ) { +static int raid5_can_delete( storage_object_t * UNUSED(region) ) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -517,9 +517,9 @@ * Function: raid5_expand */ static int raid5_expand( storage_object_t * region, - storage_object_t * expand_object, + storage_object_t * UNUSED(expand_object), list_anchor_t input_objects, - option_array_t * options ) + option_array_t * UNUSED(options) ) { int rc = 0; list_element_t iter; @@ -645,7 +645,7 @@ sector_count_t expand_size; logical_volume_t *evms_volume; sector_count_t size; - int disk_count; + uint disk_count; raid5_conf_t *conf = mdvol_to_conf(vol); my_plugin = raid5_plugin; @@ -771,7 +771,8 @@ md_saved_info_t *info = NULL; list_element_t li = NULL; list_element_t iter; - int i, rc = 0; + u_int32_t i; + int rc = 0; list_anchor_t remove_list = NULL; storage_object_t *obj; md_member_t *member; @@ -898,9 +899,9 @@ /* Function: raid5_shrink */ static int raid5_shrink( storage_object_t * region, - storage_object_t * shrink_object, + storage_object_t * UNUSED(shrink_object), list_anchor_t input_objects, - option_array_t * options ) + option_array_t * UNUSED(options) ) { int rc = 0; list_element_t iter; @@ -1104,7 +1105,8 @@ md_saved_info_t *info = NULL; list_element_t li = NULL; list_element_t iter; - int i, rc = 0; + u_int32_t i; + int rc = 0; list_anchor_t remove_list = NULL; storage_object_t *obj; md_member_t *member; @@ -1454,7 +1456,7 @@ md_member_t *member; list_element_t iter; storage_object_t *obj; - int md_minor; + u_int32_t md_minor; LOG_ENTRY(); @@ -1728,9 +1730,9 @@ unsigned int * raid_level, unsigned int * parity_algorithm, boolean * degrade, - int * missing_index) + unsigned int * missing_index) { - int i; + uint i; int rc = 0; boolean ver1_superblock = FALSE; @@ -1904,7 +1906,7 @@ md_sb_ver_t sb_ver = {MD_SB_VER_0, 90, 0}; md_member_t *member; boolean degrade = FALSE; - int missing_index = 0; + u_int32_t missing_index = 0; boolean missing_added = FALSE; int count, min_disks; int rc = 0; @@ -1936,7 +1938,7 @@ if (count > MAX_SB_DISKS(&sb_ver)) { MESSAGE(_("Too many devices (%d) were specified." - " For MD superblock version %d.%d, the maximum is %d.\n"), + " For MD superblock version %d.%d, the maximum is %d.\n"), count, sb_ver.major_version, sb_ver.minor_version, MAX_SB_DISKS(&sb_ver)); return EINVAL; @@ -3227,7 +3229,7 @@ return rc; } -static int raid5_can_deactivate_region(storage_object_t * region) +static int raid5_can_deactivate_region(storage_object_t * UNUSED(region)) { LOG_ENTRY(); @@ -3297,7 +3299,7 @@ storage_object_t * object; list_anchor_t tmp_list; list_element_t li; - int count, i; + uint count, i; LOG_ENTRY(); @@ -3898,7 +3900,7 @@ { storage_object_t * obj = NULL; storage_object_t * spare = NULL; - u_int64_t smallest_size = -1; + u_int64_t smallest_size = UINT64_MAX; list_element_t li; md_sb_ver_t sb_ver = {MD_SB_VER_0, 90, 0}; int chunksize = MD_DEFAULT_CHUNK_SIZE >> EVMS_VSECTOR_SIZE_SHIFT; @@ -3921,7 +3923,7 @@ * If we got a smallest size, then check the size of the spare, if one * is specified and see if it is the smallest. */ - if (smallest_size != -1) { + if (smallest_size != UINT64_MAX) { if (context->option_descriptors->option[RAID5_CREATE_OPT_SPARE_DISK_INDEX].value.s != NULL) { spare = md_find_valid_input_object( context->option_descriptors->option[RAID5_CREATE_OPT_SPARE_DISK_INDEX].value.s); @@ -3937,7 +3939,7 @@ * any object whose size exceeds the threshold over the smallest * object size. */ - if (smallest_size != -1) { + if (smallest_size != UINT64_MAX) { u_int64_t diffsize; LIST_FOR_EACH(context->selected_objects, li, obj) { @@ -4154,8 +4156,8 @@ static int raid5_set_expand_object( task_context_t * context, - list_anchor_t declined_objects, - task_effect_t * effect ) + list_anchor_t UNUSED(declined_objects), + task_effect_t * UNUSED(effect) ) { int rc = 0; md_volume_t *volume = (md_volume_t *)context->object->private_data; @@ -4554,7 +4556,7 @@ xorblock.buf[0] = stripe->chunks[dev_index].data; for (i = 0, count = 1; i < conf->raid_disks; i++) { - if (i == dev_index) { + if (i == (int) dev_index) { continue; } @@ -4579,7 +4581,7 @@ static void free_stripe_data(stripe_t * stripe) { - int i; + u_int32_t i; if (stripe->data_size != 0) { /* Free up all the buffers in the stripe. */ @@ -5320,7 +5322,7 @@ fia->info[*function_count].function = MD_RAID5_FUNCTION_ADD_SPARE; fia->info[*function_count].name = EngFncs->engine_strdup("addspare"); fia->info[*function_count].verb = EngFncs->engine_strdup(_("Add spare")); - if (volume->flags & MD_DEGRADED && (volume->nr_disks < conf->raid_disks)) { + if (volume->flags & MD_DEGRADED && ((int) volume->nr_disks < conf->raid_disks)) { fia->info[*function_count].title = EngFncs->engine_strdup(_("Add spare to fix degraded array")); fia->info[*function_count].help = @@ -5639,7 +5641,7 @@ static int raid5_plugin_function(storage_object_t * region, task_action_t action, list_anchor_t objects, - option_array_t * options) { + option_array_t * UNUSED(options)) { int rc = 0; md_volume_t * vol = (md_volume_t *) region->private_data; @@ -5698,7 +5700,7 @@ LOG_EXIT_INT(rc); return rc; } - if ((vol->flags & MD_DEGRADED) && + if ((vol->flags & MD_DEGRADED) && (!(vol->region->flags & SOFLAG_ACTIVE)) ) { MESSAGE(_("Array %s is running in degrade mode. " "At least one spare must be left for the array to recover.\n"), Index: multipath.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/multipath.c,v retrieving revision 1.69 retrieving revision 1.70 diff -u -d -r1.69 -r1.70 --- multipath.c 26 May 2006 21:54:32 -0000 1.69 +++ multipath.c 16 Jan 2009 18:14:39 -0000 1.70 @@ -131,7 +131,7 @@ #endif argv[i++] = volume->region->name; argv[i++] = object_size; - + LIST_FOR_EACH(volume->region->child_objects, itr, child) { argv[i++] = child->name; } @@ -235,7 +235,8 @@ { md_volume_t *volume; char lock_file_name[256]; - int i, rc; + size_t i; + int rc; LOG_ENTRY(); @@ -311,7 +312,7 @@ LOG_EXIT_VOID(); } -static int globerror(const char *path, int error) +static int globerror(const char * UNUSED(path), int UNUSED(error)) { return 0; } @@ -326,7 +327,8 @@ static void mp_cleanup_stale_daemons(void) { glob_t result; - int i, rc; + size_t i; + int rc; LOG_ENTRY(); @@ -364,8 +366,10 @@ { dm_target_multipath_t *kernel_mp = kernel_target->data.multipath; dm_priority_group_t *kernel_pg = &kernel_mp->group[0]; - int found, matched_paths = 0, active_paths = 0; - int j, rc = EINVAL; + int found, matched_paths = 0; + u_int32_t active_paths = 0; + u_int32_t j; + int rc = EINVAL; md_member_t *member; list_element_t iter; @@ -422,7 +426,7 @@ rc = 0; } -out: +out: LOG_DEBUG("there are %d active paths and %d matched path structs\n", active_paths, matched_paths); LOG_EXIT_INT(rc); return rc; @@ -440,7 +444,7 @@ dm_priority_group_t *pg = &mp->group[0]; char device[25]; char *dev, active; - int i, fail_count; + u_int32_t i, fail_count; LOG_ENTRY(); @@ -614,8 +618,9 @@ */ static int multipath_verify_sb_info(md_volume_t * vol, boolean do_msg) { - int i, nr_disks, rc = 0; - int raid_disks = 0, spare_disks = 0, working_disks=0, active_disks=0, failed_disks=0; + u_int32_t i, nr_disks; + int rc = 0; + u_int32_t raid_disks = 0, spare_disks = 0, working_disks=0, active_disks=0, failed_disks=0; md_super_info_t info; md_member_t *member; mdu_disk_info_t d; @@ -653,17 +658,17 @@ rc = EINVAL; if (do_msg) { MESSAGE( _("Region %s has too few disk discriptors. " - "Could not find a disk descriptor at index %d for object %s.\n"), + "Could not find a disk descriptor at index %u for object %s.\n"), vol->name, i, member->obj->name ); } } else { vol->sb_func->get_sb_disk_info(member, &d); - if ( d.number != i || d.raid_disk != i ) { + if ( d.number != (int) i || d.raid_disk != (int) i ) { rc = EINVAL; if (do_msg) { - MESSAGE( _("Region %s has a disk descriptor at index %d" + MESSAGE( _("Region %s has a disk descriptor at index %u" " with a raid number that is not valid. " - "Superblock says %d but it should be %d\n"), + "Superblock says %d but it should be %u\n"), vol->name, i, info.raid_disks, i ); } } @@ -684,7 +689,7 @@ vol->sb_func->get_sb_disk_info(member, &d); switch (d.state) { - + case (1<<MD_DISK_ACTIVE | 1<<MD_DISK_SYNC): active_disks++; raid_disks++; @@ -993,7 +998,7 @@ * Can we remove the specified MD logical volume, and consolidate the * space with the freespace volume? */ -static int multipath_can_delete( storage_object_t *region ) +static int multipath_can_delete( storage_object_t * UNUSED(region) ) { my_plugin = mp_plugin; LOG_ENTRY(); @@ -1064,7 +1069,7 @@ " spares=%d, actives=%d, working=%d\n", vol->name, vol->nr_disks, vol->raid_disks, vol->spare_disks, vol->active_disks, vol->working_disks); - + LIST_FOR_EACH(vol->members, iter, member) { md_append_region_to_object(region, member->obj); @@ -1078,14 +1083,14 @@ vol->region = region; region->flags |= SOFLAG_DIRTY; md_add_object_to_list(region, output_list); - + mp_identify_backup_paths(vol); } error_out: if (rc && backup_array) { EngFncs->engine_free(backup_array); } -out: +out: LOG_EXIT_INT(rc); return rc; } @@ -1098,7 +1103,7 @@ * DLIST. */ static int multipath_create( list_anchor_t objects, - option_array_t *options, + option_array_t * UNUSED(options), list_anchor_t new_region_list ) { int rc = 0; @@ -1108,7 +1113,7 @@ list_element_t iter1; list_element_t iter2; md_sb_ver_t sb_ver = {MD_SB_VER_0, 90, 0}; - u_int64_t size = -1; + u_int64_t size = UINT64_MAX; int count, raid_disk; @@ -1119,7 +1124,7 @@ if (count > MAX_SB_DISKS(&sb_ver)) { MESSAGE(_("Too many devices (%d) were specified." - " For MD superblock version %d.%d, the maximum is %d.\n"), + " For MD superblock version %d.%d, the maximum is %d.\n"), count, sb_ver.major_version, sb_ver.minor_version, MAX_SB_DISKS(&sb_ver)); return EINVAL; @@ -1137,7 +1142,7 @@ } LIST_FOR_EACH_SAFE(objects, iter1, iter2, object) { - if (size == -1) { + if (size == UINT64_MAX) { size = md_object_usable_size(object, &sb_ver, 0); } else { if (size != md_object_usable_size(object, &sb_ver, 0)) { @@ -1429,7 +1434,7 @@ return rc; } -static int multipath_can_activate(storage_object_t *region) +static int multipath_can_activate(storage_object_t * UNUSED(region)) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -1478,7 +1483,7 @@ } -static int multipath_can_deactivate(storage_object_t *region) +static int multipath_can_deactivate(storage_object_t * UNUSED(region)) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -1574,7 +1579,7 @@ switch (context->action) { - + case EVMS_Task_Create: context->min_selected_objects = 1; @@ -1589,7 +1594,7 @@ break; case EVMS_Task_Rewrite_Superblock: - + region = context->object; vol = (md_volume_t *)region->private_data; e=EngFncs->insert_thing( context->acceptable_objects, @@ -1621,7 +1626,7 @@ * Function: multipath_set_option */ static int multipath_set_option(task_context_t *context, - u_int32_t index, + u_int32_t UNUSED(index), value_t *value, task_effect_t *effect ) { @@ -1731,7 +1736,7 @@ } } - // Test 3 ... MD superblock location + // Test 3 ... MD superblock location if (!rc) { lba = MD_NEW_SIZE_SECTORS(obj->size); LOG_DEBUG("Test 3 start ... lba= %"PRIu64"\n", lba); @@ -1846,7 +1851,7 @@ * object. */ static int multipath_set_rewrite_object( task_context_t * context, - list_anchor_t declined_objects, + list_anchor_t UNUSED(declined_objects), task_effect_t * effect ) { int rc=0; @@ -1904,7 +1909,7 @@ REQUIRE(effect != NULL); switch (context->action) { - + case EVMS_Task_Create: rc = multipath_set_create_object( context, declined_objects, effect ); break; @@ -2237,9 +2242,9 @@ * superblock so that it reflects the current configuration. */ static int rewrite_multipath_superblock( storage_object_t * region, - task_action_t action, + task_action_t UNUSED(action), list_anchor_t objects, - option_array_t * options) + option_array_t * UNUSED(options)) { int rc=EINVAL; md_volume_t *vol; @@ -2249,7 +2254,7 @@ list_element_t iter1; list_element_t iter2; list_element_t li; - u_int64_t size = -1; + u_int64_t size = UINT64_MAX; md_sb_ver_t sb_ver; int raid_disk; int md_minor; @@ -2283,7 +2288,7 @@ if (!(vol = md_allocate_volume())) { vol->flags |= MD_CORRUPT; - region->flags |= SOFLAG_CORRUPT; + region->flags |= SOFLAG_CORRUPT; LOG_EXIT_INT(ENOMEM); return ENOMEM; } @@ -2292,7 +2297,7 @@ md_volume_set_name(vol, NULL); LIST_FOR_EACH_SAFE(my_objects, iter1, iter2, object) { - if (size == -1) { + if (size == UINT64_MAX) { size = md_object_usable_size(object, &sb_ver, 0); } else { if (size != md_object_usable_size(object, &sb_ver, 0)) { @@ -2426,7 +2431,7 @@ required_engine_api_version: { major: 15, minor: 0, patchlevel: 0}, - + required_plugin_api_version: { plugin: {major: 13, minor: 0, patchlevel: 0}}, Index: md_info.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md_info.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- md_info.c 21 Aug 2008 01:15:27 -0000 1.24 +++ md_info.c 16 Jan 2009 18:14:38 -0000 1.25 @@ -52,14 +52,14 @@ char resync_status[64] = {0}; LOG_ENTRY(); - + region = vol->region; if (!region) { LOG_CRITICAL("No region was created for MD volume %s.\n", vol->name); LOG_EXIT_INT(EINVAL); return EINVAL; } - + if (region->flags & SOFLAG_ACTIVE) { md_analyze_active_region(vol); } @@ -397,7 +397,7 @@ info.major = d.major; info.minor = d.minor; info.raid_disk = d.raid_disk; - + buffer[0] = '\0'; if (d.state & (1 << MD_DISK_FAULTY)) { strcat(buffer, _("Faulty")); @@ -406,7 +406,7 @@ strcat(buffer, ", "); } strcat(buffer, _("Removed")); - } + } } else { if (d.state & (1 << MD_DISK_ACTIVE)) { if (buffer[0] != '\0') { @@ -421,7 +421,7 @@ strcat(buffer, _("Sync")); } } - + // If none of the flags are set, it must be a spare disk. if (buffer[0] == '\0') { strcpy(buffer, _("Spare")); @@ -482,7 +482,7 @@ strcat(buffer, _("Pending")); } info.state = buffer; - + rc = set_disk_info(&info, cur_info); LOG_EXIT_INT(rc); @@ -550,7 +550,7 @@ info = EngFncs->engine_alloc(sizeof(extended_info_array_t) + sizeof(extended_info_t) * (NUM_DISK_INFO_ENTRIES + 1)); if (info != NULL) { - + info->count = get_superblock_disk_info(member->vol, member->dev_number, info->info); if (info->count != NUM_DISK_INFO_ENTRIES) { @@ -603,7 +603,7 @@ extended_info_t *cur_info; int info_entries; md_super_info_t super; - int i; + uint i; LOG_ENTRY(); @@ -615,7 +615,7 @@ } info_entries = NUM_SUPER_INFO_ENTRIES + super.nr_disks*NUM_DISK_INFO_ENTRIES; - + info = EngFncs->engine_alloc(sizeof(extended_info_array_t) + sizeof(extended_info_t) * info_entries); if (info == NULL) { @@ -811,7 +811,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("set_uuid1"); cur_info->title = EngFncs->engine_strdup(_("UUID1")); @@ -826,7 +826,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("set_uuid2"); cur_info->title = EngFncs->engine_strdup(_("UUID2")); @@ -841,7 +841,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("set_uuid3"); cur_info->title = EngFncs->engine_strdup(_("UUID3")); @@ -856,7 +856,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("utime"); cur_info->title = EngFncs->engine_strdup(_("Superblock update time")); @@ -876,7 +876,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("state"); cur_info->title = EngFncs->engine_strdup(_("State")); @@ -903,7 +903,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("active_disks"); cur_info->title = EngFncs->engine_strdup(_("Active disks")); @@ -918,7 +918,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("working_disks"); cur_info->title = EngFncs->engine_strdup(_("Working disks")); @@ -948,7 +948,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("spare_disks"); cur_info->title = EngFncs->engine_strdup(_("Spare disks")); @@ -963,7 +963,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("sb_csum"); cur_info->title = EngFncs->engine_strdup(_("Check sum")); @@ -978,7 +978,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("events"); cur_info->title = EngFncs->engine_strdup(_("Update count")); @@ -993,7 +993,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("layout"); cur_info->title = EngFncs->engine_strdup(_("Layout")); @@ -1028,7 +1028,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; cur_info->name = EngFncs->engine_strdup("chunk_size"); cur_info->title = EngFncs->engine_strdup(_("Chunk size")); @@ -1043,7 +1043,7 @@ cur_info->group.group_level = 0; cur_info->group.group_name = NULL; cur_info->flags = 0; - + cur_info++; for (i=0; i<super.nr_disks; i++) { int count; @@ -1075,7 +1075,7 @@ int md_get_info(md_volume_t *vol, char *name, extended_info_array_t **info_array) { int rc = 0; - int idx = -1; + uint idx; md_member_t *member; list_element_t iter; @@ -1121,7 +1121,7 @@ else if ( ! strncmp(name, "superblock", 10) ) { // "Extra" information about the master superblock rc = md_get_superblock_info(vol, NULL, info_array); - } + } else if ( ! strncmp(name, "superblock_child_object_", 24) ) { // "Extra" information about the child superblock idx = atoi(name + 24); Index: raid1_funcs.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/raid1_funcs.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- raid1_funcs.c 17 Jan 2005 05:50:23 -0000 1.17 +++ raid1_funcs.c 16 Jan 2009 18:14:39 -0000 1.18 @@ -89,7 +89,7 @@ rc = EINVAL; goto undo_activate_spare; } - + rc = md_volume_mark_faulty(member, TRUE); // mark faulty and removed if (!rc) { parm.disk_info = disk_info; @@ -184,7 +184,7 @@ * Function: remove_active_disk_post_activate * */ -static int remove_active_disk_post_activate(md_volume_t *vol, md_ioctl_pkg_t *pkg) +static int remove_active_disk_post_activate(md_volume_t *vol, md_ioctl_pkg_t * UNUSED(pkg)) { LOG_ENTRY(); vol->region_mgr_flags &= ~MD_RAID1_CONFIG_CHANGE_PENDING; @@ -247,7 +247,7 @@ md_remove_region_from_object(vol->region, member->obj); vol->sb_func->zero_superblock(member, FALSE); md_free_member(member); - + if (md_is_region_active(vol->region)) { vol->region->flags |= (SOFLAG_NEEDS_DEACTIVATE | SOFLAG_NEEDS_ACTIVATE); } @@ -284,11 +284,11 @@ * This function should be called during SETUP phase of commit. * * - Retrieve the disk entry added in raid1_add_active_disk() - * - Change the new entry to faulty entry. + * - Change the new entry to faulty entry. * - Schedule the EVMS_MD_ADD so that on the POST_ACTIVATE phase, we will IOCTL - * the kernel MD driver to hot-add this new disk to fix the degraded array. + * the kernel MD driver to hot-add this new disk to fix the degraded array. * - Mark volume DIRTY for superblock update. - * - Next phase of commit process is FIRST_METADATA_WRITE, we will write + * - Next phase of commit process is FIRST_METADATA_WRITE, we will write * modified superblock to indicate "degraded" array. */ static int add_active_disk_setup(md_volume_t *vol, md_setup_func_t *setup) @@ -303,7 +303,7 @@ disk_info = setup->disk_info; new_disk = disk_info->object; - + member = md_volume_find_member(vol, disk_info->number); if (!member || member->obj != new_disk) { LOG_ERROR("Could not find the new disk %s to add to region [%s]\n", @@ -311,7 +311,7 @@ rc = EINVAL; goto undo_add_active_disk; } - + if (setup->proceed == FALSE) { LOG_WARNING("Cancel add new active disk (%s) to region %s\n", new_disk->name, vol->name); @@ -368,7 +368,7 @@ int rc=0; evms_md_disk_info_t *disk_info = NULL; md_member_t *member = NULL; - + LOG_ENTRY(); member = md_allocate_member(new_disk); @@ -399,7 +399,7 @@ new_disk->name); goto out; } - + md_append_region_to_object(vol->region, new_disk); if (md_is_region_active(vol->region)) { @@ -451,7 +451,7 @@ LOG_EXIT_INT(EFAULT); return EFAULT; } - + if (md_is_region_active(vol->region)) { rc = md_volume_remove_spare_from_active_region(vol, spare); } else { @@ -464,7 +464,7 @@ int raid1_remove_stale_disk(md_volume_t *vol, storage_object_t * stale_disk) { int rc=0; - + LOG_ENTRY(); if (!vol || !stale_disk) { @@ -490,7 +490,7 @@ LOG_EXIT_INT(EFAULT); return EFAULT; } - + if (md_is_region_active(vol->region)) { rc = md_volume_remove_faulty_from_active_region(vol, faulty); } else { @@ -546,9 +546,9 @@ rc = ENODEV; goto out; } else { - if ((info.major != active->dev_major) || (info.minor != active->dev_minor)) { + if ((info.major != (int) active->dev_major) || (info.minor != (int) active->dev_minor)) { LOG_WARNING("(%s) mismatch major/minor, kernel(%d:%d), EVMS(%d:%d)\n", - active->name, info.major, info.minor, + active->name, info.major, info.minor, active->dev_major, active->dev_minor); } } @@ -558,7 +558,7 @@ rc = ENOMEM; goto out; } - + rc = md_volume_mark_faulty(member, FALSE); if (rc) { goto out; Index: raid5_funcs.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/raid5_funcs.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- raid5_funcs.c 17 Jan 2005 05:50:23 -0000 1.13 +++ raid5_funcs.c 16 Jan 2009 18:14:39 -0000 1.14 @@ -59,7 +59,7 @@ LOG_EXIT_INT(EFAULT); return EFAULT; } - + if (md_is_region_active(vol->region)) { rc = md_volume_remove_faulty_from_active_region(vol, faulty); } else { @@ -72,7 +72,7 @@ int raid5_remove_stale_disk(md_volume_t *vol, storage_object_t * stale_disk) { int rc=0; - + LOG_ENTRY(); if (!vol || !stale_disk) { @@ -135,9 +135,9 @@ rc = ENODEV; goto out; } else { - if ((info.major != active->dev_major) || (info.minor != active->dev_minor)) { + if ((info.major != (int) active->dev_major) || (info.minor != (int) active->dev_minor)) { LOG_WARNING("(%s) mismatch major/minor, kernel(%d:%d), EVMS(%d:%d)\n", - active->name, info.major, info.minor, + active->name, info.major, info.minor, active->dev_major, active->dev_minor); } } @@ -152,7 +152,7 @@ rc = ENOMEM; goto out; } - + disk_info->number = member->dev_number; disk_info->major = info.major; disk_info->minor = info.minor; Index: linear_mgr.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/linear_mgr.c,v retrieving revision 1.72 retrieving revision 1.73 diff -u -d -r1.72 -r1.73 --- linear_mgr.c 26 May 2006 21:54:32 -0000 1.72 +++ linear_mgr.c 16 Jan 2009 18:14:38 -0000 1.73 @@ -43,7 +43,7 @@ if (volume->region_mgr_flags & MD_LINEAR_CONFIG_CHANGE_PENDING) { rc = FALSE; } - + LOG_EXIT_BOOL(rc); return rc; } @@ -65,7 +65,7 @@ md_member_t *member = NULL; LOG_ENTRY(); - + member = md_allocate_member(new_disk); if (!member) { rc = ENOMEM; @@ -166,7 +166,7 @@ * Can we remove the specified MD logical volume, and consolidate the * space with the freespace volume? */ -static int linear_can_delete( storage_object_t * region ) +static int linear_can_delete( storage_object_t * UNUSED(region) ) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -187,7 +187,7 @@ list_element_t li; storage_object_t *child; md_volume_t *vol = (md_volume_t *)region->private_data; - + LOG_ENTRY(); if (vol->nr_disks < 1) { LOG_EXIT_INT(ENODEV); @@ -219,7 +219,7 @@ list_element_t li; storage_object_t *child; md_volume_t *vol = (md_volume_t *)region->private_data; - + LOG_ENTRY(); if (vol->nr_disks < 1) { LOG_EXIT_INT(ENODEV); @@ -276,7 +276,7 @@ region->disk_group, VALID_INPUT_OBJECT | NO_DISK_GROUP, &tmp_list); - + /* Remove this MD object from the list */ EngFncs->remove_thing(tmp_list, region); @@ -317,8 +317,8 @@ * from the freespace volume in the same group? */ -static int linear_can_expand_by(storage_object_t * child_object, - u_int64_t * size ) +static int linear_can_expand_by(storage_object_t * UNUSED(child_object), + u_int64_t * UNUSED(size) ) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -392,8 +392,8 @@ * space into the freespace volume? If it can be shrunk, but not to * exactly new_size, reset new_size to the next lower possible size. */ -static int linear_can_shrink_by(storage_object_t * region, - u_int64_t * size ) +static int linear_can_shrink_by(storage_object_t * UNUSED(region), + u_int64_t * UNUSED(size) ) { LOG_ENTRY(); LOG_EXIT_INT(0); @@ -461,7 +461,7 @@ out: EngFncs->dm_deallocate_targets(targets); - LOG_EXIT_INT(rc); + LOG_EXIT_INT(rc); return rc; } @@ -470,7 +470,7 @@ int rc = 0; storage_object_t * region = NULL; md_member_t *member; - int i; + uint i; int length; mdu_array_info_t info; @@ -637,7 +637,7 @@ static int linear_get_create_options( option_array_t *options, md_sb_ver_t *sb_ver) { - int i; + uint i; int rc = 0; boolean version_1 = FALSE; @@ -651,7 +651,7 @@ case LINEAR_CREATE_OPT_SB1_INDEX: version_1 = options->option[i].value.b; break; - + default: break; } @@ -694,7 +694,7 @@ LOG_DEBUG("Creating new region %s: nr_disks=%d, raid_disks=%d, spares=%d, actives=%d, working=%d\n", vol->name, vol->nr_disks, vol->raid_disks, vol->spare_disks, vol->active_disks, vol->working_disks); - + if (!rc) { LIST_FOR_EACH(vol->members, iter, member) { md_append_region_to_object(region, member->obj); @@ -748,7 +748,7 @@ if (count > MAX_SB_DISKS(&sb_ver)) { MESSAGE(_("Too many devices (%d) were specified." - " For MD superblock version %d.%d, the maximum is %d.\n"), + " For MD superblock version %d.%d, the maximum is %d.\n"), count, sb_ver.major_version, sb_ver.minor_version, MAX_SB_DISKS(&sb_ver)); return EINVAL; @@ -758,7 +758,7 @@ LOG_EXIT_INT(ENOMEM); return ENOMEM; } - + rc = md_volume_get_available_name(volume, 256); if (rc) { goto error_free; @@ -767,13 +767,13 @@ LIST_FOR_EACH_SAFE(objects, iter1, iter2, object) { size = min(size, md_object_usable_size(object, &sb_ver, 0)); } - + rc = md_init_sb(volume, &sb_ver, MD_LEVEL_LINEAR, 0, size, 0); if (rc) { goto error_free; } - + LIST_FOR_EACH_SAFE(objects, iter1, iter2, object) { member = md_allocate_member(object); if (member) { @@ -981,7 +981,7 @@ { int rc = 0; md_volume_t *vol; - int saved_nr_disks; + u_int32_t saved_nr_disks; storage_object_t *candidate; md_member_t *last; list_element_t li; @@ -1043,7 +1043,7 @@ list_anchor_t removed_list; md_member_t *last; list_element_t li = NULL; - + my_plugin = linear_plugin; LOG_ENTRY(); @@ -1248,7 +1248,7 @@ u_int64_t offset = 0; md_member_t *member; list_element_t iter; - + my_plugin = linear_plugin; LOG_ENTRY(); @@ -1294,10 +1294,10 @@ } -static int linear_can_deactivate_region(storage_object_t * region) +static int linear_can_deactivate_region(storage_object_t * UNUSED(region)) { LOG_ENTRY(); - + LOG_EXIT_INT(0); return 0; } @@ -1355,7 +1355,7 @@ case EVMS_Task_Shrink: count = 0; break; - + default: count = 0; break; @@ -1411,7 +1411,7 @@ context->option_descriptors->option[LINEAR_CREATE_OPT_SB1_INDEX].type = EVMS_Type_Boolean; context->option_descriptors->option[LINEAR_CREATE_OPT_SB1_INDEX].unit = EVMS_Unit_None; context->option_descriptors->option[LINEAR_CREATE_OPT_SB1_INDEX].value.b = FALSE; - + // get a list of all valid input disks, segments, and regions. EngFncs->get_object_list(DISK | SEGMENT | REGION, DATA_TYPE, @@ -1426,7 +1426,7 @@ break; case EVMS_Task_Expand: - + vol = (md_volume_t *) context->object->private_data; context->option_descriptors->count = 0; @@ -1440,10 +1440,10 @@ /* Remove this MD object from the list */ EngFncs->remove_thing(tmp_list, context->object); - + /* Remove all parents of this MD region from acceptable list */ remove_parent_regions_from_list(tmp_list, context->object); - + /* move these items to the acceptable objects list. */ md_transfer_list(tmp_list, context->acceptable_objects); EngFncs->destroy_list(tmp_list); @@ -1452,7 +1452,7 @@ break; case EVMS_Task_Shrink: - + vol = (md_volume_t *) context->object->private_data; context->option_descriptors->count = 0; @@ -1502,7 +1502,7 @@ static int linear_set_option(task_context_t * context, u_int32_t index, value_t * value, - task_effect_t * effect ) + task_effect_t * UNUSED(effect) ) { int rc = 0; @@ -1526,11 +1526,11 @@ break; } break; - + case EVMS_Task_Expand: // no options, just return 0 break; - + case EVMS_Task_Shrink: // no options, just return 0 break; @@ -1719,7 +1719,7 @@ EngFncs->destroy_list(decline_list); EngFncs->destroy_list(reversed_list); EngFncs->destroy_list(my_list); - + *effect |= EVMS_Effect_Reload_Objects; @@ -1759,11 +1759,11 @@ // do we need any further validation here? rc = 0; break; - + case EVMS_Task_Expand: rc = linear_set_expand_object( context, declined_objects, effect ); break; - + case EVMS_Task_Shrink: rc = linear_set_shrink_object( context, declined_objects, effect ); break; @@ -1812,7 +1812,7 @@ extended_info_array_t * info = NULL; char buffer[50] = {0}; int i = 0; - + my_plugin = linear_plugin; LOG_ENTRY(); @@ -1939,24 +1939,24 @@ LIST_FOR_EACH(vol->members, iter, member) { current_end += member->data_size; if ( current_end >= io_lsn ) { - + max_sector_count = current_end - io_lsn + 1; - + if ( max_sector_count >= sectors_left_to_read ) { io_sector_count = sectors_left_to_read; } else { io_sector_count = max_sector_count; } - + link_lsn = (io_lsn - current_start); - + rc = READ(member->obj, link_lsn + member->data_offset, io_sector_count, (void *)io_buffer_ptr ); - + io_lsn += io_sector_count; io_buffer_ptr += io_sector_count*EVMS_VSECTOR_SIZE; sectors_left_to_read -= io_sector_count; - + if ((sectors_left_to_read == 0) || (rc)) break; } current_start = current_end; @@ -2033,7 +2033,7 @@ return rc; } -static int linear_get_plugin_functions(storage_object_t *region, function_info_array_t * * functions) +static int linear_get_plugin_functions(storage_object_t * UNUSED(region), function_info_array_t * * UNUSED(functions)) { my_plugin = linear_plugin; LOG_ENTRY(); @@ -2041,10 +2041,10 @@ return ENOSYS; } -static int linear_plugin_function(storage_object_t * object, - task_action_t action, - list_anchor_t objects, - option_array_t * options) +static int linear_plugin_function(storage_object_t * UNUSED(object), + task_action_t UNUSED(action), + list_anchor_t UNUSED(objects), + option_array_t * UNUSED(options)) { my_plugin = linear_plugin; LOG_ENTRY(); @@ -2061,7 +2061,7 @@ { md_volume_t *volume; int rc=0; - + my_plugin = linear_plugin; LOG_ENTRY(); Index: md_dlist.h =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md_dlist.h,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- md_dlist.h 17 Jun 2005 00:13:29 -0000 1.20 +++ md_dlist.h 16 Jan 2009 18:14:38 -0000 1.21 @@ -43,7 +43,7 @@ u_int32_t minor; storage_object_t *object; } evms_md_disk_info_t; - + union evms_md_ioctl_parm { evms_md_disk_info_t * disk_info; /* for EVMS_MD_ADD and EVMS_MD_REMOVE */ mdp_super_t *sb; /* for EVMS_MD_ACTIVATE_REGION */ @@ -77,7 +77,7 @@ // Functions exported from md_dlist.c int md_queue_corrupt_message(md_volume_t *vol, const char *message, int length); int md_count_corrupt_messages(md_volume_t *vol); -void md_display_corrupt_messages(int personality); +void md_display_corrupt_messages(u_int32_t personality); void md_destroy_list_corrupt_messages(void); int md_append_region_to_object(storage_object_t * region, Index: md_super.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md_super.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- md_super.c 25 May 2006 21:40:41 -0000 1.15 +++ md_super.c 16 Jan 2009 18:14:39 -0000 1.16 @@ -66,7 +66,7 @@ * * This function is common for both versions of MD formats. */ -static void md_analyze_sb(md_volume_t *vol, int level, int raid_disks, u_int32_t chunksize_in_bytes) +static void md_analyze_sb(md_volume_t *vol, int level, u_int32_t raid_disks, u_int32_t chunksize_in_bytes) { int length=0; int count; @@ -85,7 +85,7 @@ } if (vol->active_disks < raid_disks) { - switch ((int)level) { + switch (level) { case MD_LEVEL_MULTIPATH: case MD_LEVEL_RAID1: if (vol->active_disks >= 1) { @@ -145,7 +145,7 @@ vol->flags |= MD_CORRUPT; goto queue_corrupt_message; } - + if (((chunksize_in_bytes - 1) & chunksize_in_bytes) != 0) { length = sprintf(message_buffer, _("%s region %s is corrupt." @@ -273,7 +273,7 @@ mdp_super_t *sb = (mdp_super_t *)super; md_array_info_t *array; mdp_disk_t *d; - int i; + u_int32_t i; LOG_ENTRY(); @@ -485,7 +485,7 @@ return rc; } -static int sb0_max_disks() { +static uint sb0_max_disks() { return MD_SB_DISKS; } @@ -648,7 +648,7 @@ member->data_offset = 0; member->super_offset = MD_NEW_SIZE_SECTORS(member->obj->size); - if (member->data_size == -1) { + if (member->data_size == UINT64_MAX) { member->data_size = md_object_usable_size(member->obj, &member->vol->sb_ver, member->vol->chunksize); @@ -763,8 +763,8 @@ } member->raid_disk = -1; - member->data_offset = -1; - member->data_size = -1; + member->data_offset = UINT64_MAX; + member->data_size = UINT64_MAX; member->flags = MD_MEMBER_DISK_REMOVED; out: LOG_EXIT_INT(rc); @@ -1088,20 +1088,20 @@ return rc; } -static int sb0_mark_disk_missing(md_volume_t *vol, int dev_number) +static int sb0_mark_disk_missing(md_volume_t *vol, u_int32_t dev_number) { mdp_super_t *master_sb; mdp_disk_t *disk; int rc = 0; LOG_ENTRY(); - + if (!vol || !vol->sb) { LOG_MD_BUG(); rc = EINVAL; goto out; } - + master_sb = (mdp_super_t *)vol->sb; disk = &master_sb->disks[dev_number]; disk->state = (1<<MD_DISK_FAULTY) | (1<<MD_DISK_REMOVED); @@ -1126,7 +1126,7 @@ static int sb0_write_sb(md_member_t *member) { int rc = 0; - int i; + u_int32_t i; mdp_super_t *sb; mdp_super_t *master; storage_object_t *obj; @@ -1431,7 +1431,7 @@ return loc; } -static u_int64_t sb1_minor_version_to_data_offset(storage_object_t *obj, int minor_version) +static u_int64_t sb1_minor_version_to_data_offset(storage_object_t * UNUSED(obj), int minor_version) { u_int64_t offset; @@ -1493,7 +1493,7 @@ */ static void sb1_disk_to_cpu(mdp_sb_1_t * sb) { - int i; + u_int32_t i; LOG_ENTRY(); sb->magic = DISK_TO_CPU32(sb->magic); @@ -1531,7 +1531,7 @@ */ static void sb1_cpu_to_disk(mdp_sb_1_t * sb) { - int i; + u_int32_t i; LOG_ENTRY(); sb->magic = CPU_TO_DISK32(sb->magic); @@ -1565,7 +1565,7 @@ static void sb1_print_sb(void *super) { mdp_sb_1_t *sb = (mdp_sb_1_t *)super; - int i; + u_int32_t i; LOG_ENTRY(); LOG_DEBUG("Sizeof structure: %d bytes.\n", sizeof(*sb)); LOG_DEBUG("magic: %x.\n", sb->magic); @@ -1584,8 +1584,8 @@ LOG_DEBUG("dev_number: %d,\n", sb->dev_number); LOG_DEBUG("cnt_corrected_read: %d,\n", sb->cnt_corrected_read); LOG_DEBUG("events: %"PRIu64".\n", sb->events); - if (sb->resync_offset == -1) - LOG_DEBUG("resync_offset: -1.\n"); + if (sb->resync_offset == UINT64_MAX) + LOG_DEBUG("resync_offset: UINT64_MAX.\n"); else LOG_DEBUG("resync_offset: %"PRIu64".\n", sb->resync_offset); LOG_DEBUG("max_dev: %d,\n", sb->max_dev); @@ -1753,7 +1753,7 @@ sb->dev_number = member->dev_number; - if (member->data_size == -1) { + if (member->data_size == UINT64_MAX) { sb->data_size = md_object_usable_size(member->obj, &member->vol->sb_ver, member->vol->chunksize); @@ -1762,7 +1762,7 @@ sb->data_size = member->data_size; } - if (member->data_offset == -1) { + if (member->data_offset == UINT64_MAX) { sb->data_offset = sb1_minor_version_to_data_offset(member->obj, member->vol->sb_ver.minor_version); member->data_offset = sb->data_offset; @@ -1770,7 +1770,7 @@ sb->data_offset = member->data_offset; } - if (member->super_offset == -1) { + if (member->super_offset == UINT64_MAX) { sb->super_offset = sb1_minor_version_to_super_offset(member->obj, member->vol->sb_ver.minor_version); member->super_offset = sb->super_offset; @@ -1891,8 +1891,8 @@ } member->raid_disk = -1; - member->data_offset = -1; - member->data_size = -1; + member->data_offset = UINT64_MAX; + member->data_size = UINT64_MAX; member->flags = MD_MEMBER_DISK_REMOVED; out: LOG_EXIT_INT(rc); @@ -2132,7 +2132,7 @@ /* * Note: mark_removed parameter is not used in this function. */ -static int sb1_mark_disk_faulty(md_member_t *member, boolean mark_removed) +static int sb1_mark_disk_faulty(md_member_t *member, boolean UNUSED(mark_removed)) { mdp_sb_1_t *master_sb; int rc = 0; @@ -2164,13 +2164,13 @@ return rc; } -static int sb1_mark_disk_missing(md_volume_t *vol, int dev_number) +static int sb1_mark_disk_missing(md_volume_t *vol, u_int32_t dev_number) { mdp_sb_1_t *master_sb; int rc = 0; LOG_ENTRY(); - + if (!vol || !vol->sb) { LOG_MD_BUG(); rc = EINVAL; @@ -2277,7 +2277,7 @@ { mdp_sb_1_t *sb = (mdp_sb_1_t *)super; md_array_info_t *array; - int i; + u_int32_t i; LOG_ENTRY(); @@ -2320,7 +2320,7 @@ static void sb1_get_sb_info(void *super, md_super_info_t *info) { mdp_sb_1_t *sb = (mdp_sb_1_t *)super; - int i; + u_int32_t i; LOG_ENTRY(); @@ -2397,7 +2397,7 @@ return sb1->level; } -static int sb1_max_disks() +static uint sb1_max_disks() { return MD_SB_1_DISKS; } @@ -2479,11 +2479,11 @@ vol = member->vol; master = (mdp_sb_1_t *)vol->sb; - + if (vol->flags & (MD_NEW_REGION | MD_DEGRADED)) { LOG_WARNING("%s: Creating new array with missing disk," - " set resync_offset to -1.\n", vol->name); - master->resync_offset = -1; + " set resync_offset to UINT64_MAX.\n", vol->name); + master->resync_offset = UINT64_MAX; } /* Copy from master superblock */ @@ -2766,7 +2766,7 @@ goto out; } - if (member->dev_number == -1) { + if (member->dev_number == UINT32_MAX) { md_volume_get_super_info(vol, &info); vol->nr_disks = info.nr_disks; member->dev_number = vol->nr_disks; @@ -2860,7 +2860,7 @@ info.state_flags = MD_SUPER_INFO_CLEAN; vol->sb_func->set_sb_info(vol->sb, &info); vol->sb_func->mark_disk_missing(vol, info.nr_disks-1); - + /* Free all existing superblocks, then re-create from the master */ LIST_FOR_EACH(vol->members, iter, my_member) { if (my_member->sb) { @@ -2883,7 +2883,7 @@ vol->working_disks = info.working_disks; vol->failed_disks = info.failed_disks; vol->flags |= MD_DEGRADED; - + LOG_DEBUG("MD region %s: nr_disks(%d) raid_disks(%d) active_disks(%d)" " spare_disks(%d) working_disks(%d) failed_disks(%d).\n", vol->name, vol->nr_disks, vol->raid_disks, vol->active_disks, @@ -3223,7 +3223,7 @@ rc = EngFncs->read_object(obj, fd, buf, sects<<EVMS_VSECTOR_SIZE_SHIFT, loc<<EVMS_VSECTOR_SIZE_SHIFT); - if (rc == (sects<<EVMS_VSECTOR_SIZE_SHIFT)) { + if (rc == (int32_t) (sects<<EVMS_VSECTOR_SIZE_SHIFT)) { rc = 0; } else { LOG_ERROR("READ from %s failed, rc=%d.\n", obj->name, rc); Index: md_main.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md_main.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -d -r1.59 -r1.60 --- md_main.c 6 Jan 2009 23:05:11 -0000 1.59 +++ md_main.c 16 Jan 2009 18:14:38 -0000 1.60 @@ -73,10 +73,10 @@ LOG_ENTRY(); fp = fopen("/proc/version", "r"); - if (fp >= 0) { + if (fp != NULL) { fread(haystack, 1, 255, fp); fclose(fp); - + ver = strstr(haystack, needle); if (ver) { sscanf(ver, "%*s %d.%d.%d", &kernel_major, &kernel_minor, &kernel_patch); @@ -169,7 +169,7 @@ boolean load_kernel_md_driver(void) { FILE *fp; - + LOG_ENTRY(); if (md_driver_loaded == FALSE) { @@ -200,7 +200,7 @@ storage_object_t *region; LOG_ENTRY(); - + while (vol) { region = vol->region; if (region && (vol->flags & MD_DISCOVERED)) { @@ -226,7 +226,7 @@ storage_object_t *new_child) { int rc = 0; - logical_volume_t *evms_volume; + logical_volume_t *evms_volume; u_int64_t child_size, new_child_size; md_volume_t *vol; @@ -251,11 +251,11 @@ rc = EINVAL; goto out; } - + LOG_DEBUG("region: %s, child:%s, new child:%s\n", region->name, child->name, new_child ? new_child->name : "<unknown>"); - + if (new_child) { /* * The Engine passed in new child object, @@ -307,7 +307,7 @@ rc = EINVAL; goto out; } - + child_size = md_object_usable_size(child, &vol->sb_ver, vol->chunksize); new_child_size = md_object_usable_size(new_child, &vol->sb_ver, vol->chunksize); @@ -465,7 +465,7 @@ } -int md_can_deactivate_region(storage_object_t * region) +int md_can_deactivate_region(storage_object_t * UNUSED(region)) { LOG_ENTRY(); @@ -483,7 +483,7 @@ LOG_EXIT_INT(EFAULT); return EFAULT; } - + /* If the region is not active, just clear flags and return success */ if (!md_is_region_active(region)) { region->flags &= ~(SOFLAG_ACTIVE | SOFLAG_NEEDS_DEACTIVATE); @@ -513,7 +513,7 @@ } } } - + if (!rc || (rc == ENODEV)) { region->flags &= ~(SOFLAG_ACTIVE | SOFLAG_NEEDS_DEACTIVATE); rc = 0; @@ -577,7 +577,7 @@ recovery_running = TRUE; p += 6; } - + /* found mdx, break out of while() loop */ break; } @@ -606,12 +606,12 @@ vol = (md_volume_t *)region->private_data; recovery_running = mdstat_check_recovery(vol->md_minor, NULL); - + LOG_EXIT_INT(recovery_running); return recovery_running; } -int md_fix_dev_major_minor(md_volume_t *vol, boolean do_msg) +int md_fix_dev_major_minor(md_volume_t *vol, boolean UNUSED(do_msg)) { storage_object_t *obj; md_member_t *member; @@ -624,7 +624,7 @@ LOG_EXIT_INT(EFAULT); return EFAULT; } - + if (!vol->region) { LOG_MD_BUG(); LOG_EXIT_INT(EFAULT); @@ -643,12 +643,12 @@ LOG_EXIT_INT(0); return 0; } - + if (md_is_region_active(vol->region)) { LOG_WARNING("MD region %s is active, can not change device major/minor.\n", vol->name); LOG_EXIT_INT(0); - return 0; + return 0; } LIST_FOR_EACH(vol->members, iter, member) { @@ -657,8 +657,8 @@ if (obj->flags & SOFLAG_ACTIVE) { major = md_member_get_disk_major(member); minor = md_member_get_disk_minor(member); - if (( major != obj->dev_major) || - ( minor != obj->dev_minor)) { + if (( major != (int) obj->dev_major) || + ( minor != (int) obj->dev_minor)) { MESSAGE(_("Region %s: The MD superblock has old device " "major/minor number for object (%s). " "When this MD region is activated," @@ -693,7 +693,7 @@ "If you elect not to remove [%s] at this time, " "you should consider removing it later via the region's option menu.\n"), faulty->name, faulty->name, volume->name, faulty->name); - + return answer ? TRUE : FALSE; } @@ -713,7 +713,7 @@ LOG_EXIT_BOOL(TRUE); return TRUE; } - + if (md_is_region_active(region)) { if (region->volume) { if (!(region->volume->flags & VOLFLAG_COMPATIBILITY)) { @@ -727,7 +727,7 @@ rc = FALSE; } } - + if (EngFncs->list_count(region->parent_objects)) { LOG_DETAILS("Region %s has parent(s).\n", region->name); rc = FALSE; @@ -784,7 +784,7 @@ * This function performs an extensive search for a member whose object * major an minor match the input parameters. */ -md_member_t *md_find_member(int major, int minor) +md_member_t *md_find_member(u_int32_t major, u_int32_t minor) { md_volume_t *vol; list_element_t iter; @@ -828,7 +828,7 @@ return NULL; } -md_member_t * md_volume_find_member_from_major_minor(md_volume_t *vol, int major, int minor) +md_member_t * md_volume_find_member_from_major_minor(md_volume_t *vol, u_int32_t major, u_int32_t minor) { list_element_t iter; md_member_t *member; @@ -845,7 +845,7 @@ return NULL; } -md_member_t * md_volume_find_member(md_volume_t *vol, int dev_number) +md_member_t * md_volume_find_member(md_volume_t *vol, u_int32_t dev_number) { list_element_t iter; md_member_t *member; @@ -880,7 +880,7 @@ return FALSE; } -int md_volume_count_children(md_volume_t *vol) +uint md_volume_count_children(md_volume_t *vol) { int count=0; list_element_t iter; @@ -897,7 +897,7 @@ return count; } -int md_volume_count_active_disks(md_volume_t *vol) +uint md_volume_count_active_disks(md_volume_t *vol) { int count=0; list_element_t iter; @@ -916,7 +916,7 @@ return count; } -int md_volume_count_faulty_disks(md_volume_t *vol) +uint md_volume_count_faulty_disks(md_volume_t *vol) { int count=0; list_element_t iter; @@ -934,7 +934,7 @@ return count; } -int md_volume_count_spare_disks(md_volume_t *vol) +uint md_volume_count_spare_disks(md_volume_t *vol) { int count=0; list_element_t iter; @@ -952,7 +952,7 @@ return count; } -int md_volume_count_stale_disks(md_volume_t *vol) +uint md_volume_count_stale_disks(md_volume_t *vol) { int count=0; list_element_t iter; @@ -991,10 +991,10 @@ if (new_member) { new_member->obj = obj; new_member->raid_disk = -1; - new_member->dev_number = -1; - new_member->data_size = -1; - new_member->data_offset = -1; - new_member->super_offset = -1; + new_member->dev_number = UINT32_MAX; + new_member->data_size = UINT64_MAX; + new_member->data_offset = UINT64_MAX; + new_member->super_offset = UINT64_MAX; } LOG_EXIT_PTR(new_member); return new_member; @@ -1062,7 +1062,7 @@ LOG_EXIT_VOID(); return; } - + LIST_FOR_EACH(vol->members, iter, member) { md_free_member(member); } @@ -1080,7 +1080,7 @@ EngFncs->destroy_list(vol->ioctl_pkgs); vol->ioctl_pkgs = NULL; } - + if (vol->ioctl_cleanup != NULL) { free_ioctl_pkgs(vol); EngFncs->destroy_list(vol->ioctl_cleanup); @@ -1223,11 +1223,11 @@ return new_vol; } -int md_volume_sort_members(void *thing1, void *thing2, void *user_data) +int md_volume_sort_members(void *thing1, void *thing2, void * UNUSED(user_data)) { md_member_t *m1 = (md_member_t *)thing1; md_member_t *m2 = (md_member_t *)thing2; - + if (m1->dev_number < m2->dev_number) return -1; if (m1->dev_number > m2->dev_number) return 1; return 0; @@ -1257,7 +1257,7 @@ LOG_EXIT_VOID(); } -boolean md_volume_is_minor_taken(int md_minor) +boolean md_volume_is_minor_taken(u_int32_t md_minor) { md_volume_t *vol = volume_list_head; @@ -1380,7 +1380,7 @@ break; } } - + for (md_minor=limit; md_minor >= 0; md_minor--) { if (md_volume_is_minor_taken(md_minor) == FALSE) { @@ -1536,7 +1536,7 @@ /* * This common callback handler will free the memory allocated for disk_info */ -static int free_disk_info_post_ioctl(md_volume_t *vol, md_ioctl_pkg_t *pkg) +static int free_disk_info_post_ioctl(md_volume_t * UNUSED(vol), md_ioctl_pkg_t *pkg) { LOG_ENTRY(); if (pkg->parm.disk_info) { @@ -1582,7 +1582,7 @@ rc = EINVAL; goto out; } - + vol->flags |= MD_DIRTY; vol->commit_flag |= MD_COMMIT_DONT_CHECK_ACTIVE; @@ -1594,7 +1594,7 @@ } out: - + LOG_EXIT_INT(rc); return rc; } @@ -1652,7 +1652,7 @@ } md_append_region_to_object(vol->region, spare); - + LOG_EXIT_INT(0); return 0; @@ -1727,7 +1727,7 @@ evms_md_ioctl_parm_t parm; mdu_disk_info_t info; md_member_t *member; - + LOG_ENTRY(); member = md_volume_find_object(vol, spare); @@ -1755,7 +1755,7 @@ rc = ENODEV; goto out; } else { - if ((info.major != spare->dev_major) || (info.minor != spare->dev_minor)) { + if ((info.major != (int) spare->dev_major) || (info.minor != (int) spare->dev_minor)) { MESSAGE(_("WARNING: Region:%s, Device:%s: Index:%d\n" " There is a mismatch major/minor, Kernel MD driver has (%d:%d), EVMS has (%d:%d)." @@ -1767,7 +1767,7 @@ vol->name); } } - + disk_info = EngFncs->engine_alloc(sizeof(evms_md_disk_info_t)); if ( !disk_info ) { rc = ENOMEM; @@ -1798,7 +1798,7 @@ { int rc=0; md_member_t *member; - + LOG_ENTRY(); if (!vol || !spare) { LOG_EXIT_INT(EFAULT); @@ -1848,9 +1848,9 @@ mdu_disk_info_t info; md_member_t *member; int kernel_idx; - + LOG_ENTRY(); - + member = md_volume_find_object(vol, faulty); if (!member) { LOG_WARNING("%s is not in region %s.\n", faulty->name, vol->name); @@ -1873,7 +1873,7 @@ faulty->dev_minor); if (kernel_idx != -1) { /* Faulty disk is still in the active region */ - if (kernel_idx != member->dev_number) { + if (kernel_idx != (int) member->dev_number) { LOG_WARNING("The superblock has %s at index=%d," " whereas the kernel said index=%d.\n", faulty->name, member->dev_number, kernel_idx); @@ -1884,7 +1884,7 @@ goto out; } - if ((info.major != faulty->dev_major) || (info.minor != faulty->dev_minor)) { + if ((info.major != (int) faulty->dev_major) || (info.minor != (int) faulty->dev_minor)) { MESSAGE(_("WARNING: Region:%s, Device:%s: Index:%d\n" " There is a mismatch major/minor, Kernel MD driver has (%d:%d)," " EVMS has (%d:%d). However, if %s was created by another MD tool" @@ -1912,7 +1912,7 @@ } else { goto out_remove_faulty; } - + out_remove_faulty: rc = md_volume_remove_member(member, FALSE); if (!rc) { @@ -1991,15 +1991,15 @@ stale_disk->dev_minor); if (kernel_idx != -1) { /* Stale disk is still in the active region */ - if (kernel_idx != member->dev_number) { + if (kernel_idx != (int) member->dev_number) { LOG_WARNING("The superblock has %s at index=%d," " whereas the kernel said index=%d.\n", stale_disk->name, member->dev_number, kernel_idx); } info.number = kernel_idx; rc = md_ioctl_get_disk_info(vol->region, &info); - if (!rc && (info.major == stale_disk->dev_major) && - (info.minor == stale_disk->dev_minor)) { + if (!rc && (info.major == (int) stale_disk->dev_major) && + (info.minor == (int) stale_disk->dev_minor)) { if (!(info.state & (1<<MD_DISK_REMOVED))) { disk_info = EngFncs->engine_alloc(sizeof(evms_md_disk_info_t)); if (!disk_info ) { Index: md.h =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md.h,v retrieving revision 1.60 retrieving revision 1.61 diff -u -d -r1.60 -r1.61 --- md.h 15 Feb 2005 00:38:53 -0000 1.60 +++ md.h 16 Jan 2009 18:14:38 -0000 1.61 @@ -246,7 +246,7 @@ #define MD_COMMIT_BACKUP_METADATA (1 << 1) typedef struct md_volume_s { - storage_object_t * region; + storage_object_t * region; list_anchor_t members; // List of all members (ie. disks) md_sb_ver_t sb_ver; // Version of MD superblock void *sb; // Master superblock @@ -355,9 +355,9 @@ md_member_t * md_volume_find_object(md_volume_t *vol, storage_object_t *obj); int find_disk_in_active_region(storage_object_t *region, int major, int minor); -md_member_t *md_find_member(int major, int minor); -md_member_t * md_volume_find_member(md_volume_t *vol, int dev_number); -md_member_t * md_volume_find_member_from_major_minor(md_volume_t *vol, int major, int minor); +md_member_t *md_find_member(u_int32_t major, u_int32_t minor); +md_member_t * md_volume_find_member(md_volume_t *vol, u_int32_t dev_number); +md_member_t * md_volume_find_member_from_major_minor(md_volume_t *vol, u_int32_t major, u_int32_t minor); //int find_empty_slot(mdp_super_t *sb); int md_fix_dev_major_minor(md_volume_t * vol, boolean do_msg); @@ -368,7 +368,7 @@ void md_free_volume(md_volume_t *vol); int md_delete_volume(md_volume_t * volume, boolean tear_down); md_volume_t * md_clone_volume(md_volume_t *vol); -boolean md_volume_is_minor_taken(int md_minor); +boolean md_volume_is_minor_taken(u_int32_t md_minor); storage_object_t * md_find_valid_input_object( char * name ); @@ -376,11 +376,11 @@ int md_volume_get_alternative_name(md_volume_t *vol, int limit); int md_volume_sort_members(void *thing1, void *thing2, void *user_data); -int md_volume_count_children(md_volume_t *vol); -int md_volume_count_active_disks(md_volume_t *vol); -int md_volume_count_faulty_disks(md_volume_t *vol); -int md_volume_count_spare_disks(md_volume_t *vol); -int md_volume_count_stale_disks(md_volume_t *vol); +uint md_volume_count_children(md_volume_t *vol); +uint md_volume_count_active_disks(md_volume_t *vol); +uint md_volume_count_faulty_disks(md_volume_t *vol); +uint md_volume_count_spare_disks(md_volume_t *vol); +uint md_volume_count_stale_disks(md_volume_t *vol); u_int64_t md_volume_smallest_data_size(md_volume_t *vol); void md_volume_add_member(md_volume_t *vol, md_member_t *member); Index: md_dlist.c =================================================================== RCS file: /cvsroot/evms/evms2/engine/plugins/md/md_dlist.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- md_dlist.c 28 Nov 2005 14:29:46 -0000 1.42 +++ md_dlist.c 16 Jan 2009 18:14:38 -0000 1.43 @@ -145,7 +145,7 @@ * This function should be called by each of the pesonalities * at the end of their final discovery process. */ -void md_display_corrupt_messages(int personality) +void md_display_corrupt_messages(u_int32_t personality) { list_element_t iter1; list_element_t iter2; @@ -312,7 +312,7 @@ { int rc=0; list_element_t li = NULL; - + LOG_ENTRY(); li = EngFncs->insert_thing(objects, object, INSERT_AFTER, NULL); @@ -375,7 +375,7 @@ { md_setup_func_t *setup; list_element_t iter1, iter2; - + LOG_ENTRY(); LIST_FOR_EACH_SAFE(vol->setup_funcs,iter1,iter2,setup) { @@ -397,14 +397,14 @@ int rc=0; md_setup_func_t *setup; list_element_t li; - + LOG_ENTRY(); if (!vol) { LOG_MD_BUG(); LOG_EXIT_INT(EFAULT); return EFAULT; - + } if (!vol->region) { @@ -419,7 +419,7 @@ } setup = EngFncs->engine_alloc(sizeof(md_setup_func_t)); - + if (!setup) { LOG_EXIT_INT(ENOMEM); return ENOMEM; @@ -427,7 +427,7 @@ setup->disk_info = disk_info; setup->setup_func = setup_func; - + li = EngFncs->insert_thing(vol->setup_funcs, setup, INSERT_AFTER, NULL); if (!li) { EngFncs->engine_free(setup); @@ -446,7 +446,7 @@ md_volume_t * vol; LOG_ENTRY(); - + if (!region) { LOG_EXIT_INT(EFAULT); return rc; @@ -457,7 +457,7 @@ LOG_EXIT_INT(EFAULT); return rc; } - + LIST_FOR_EACH_SAFE(vol->setup_funcs, iter1, iter2, setup) { setup->proceed = TRUE; rc = setup->setup_func(vol, setup); @@ -478,7 +478,7 @@ { md_ioctl_pkg_t *pkg; list_element_t iter1, iter2; - + LOG_ENTRY(); if (vol->... [truncated message content] |