|
|
|
@ -733,23 +733,36 @@ int tree_view_edit() {
|
|
|
|
|
main_config.hard_raw_limit[index] = edit_get_hard();
|
|
|
|
|
main_config.swap[index] = edit_get_limit_swap();
|
|
|
|
|
main_config.cpu_limit[index] = edit_get_limit_cpu();
|
|
|
|
|
//main_config.i_o_limit_read[index] = edit_get_read_device();
|
|
|
|
|
//main_config.i_o_limit_write[index] = edit_get_write_device();
|
|
|
|
|
|
|
|
|
|
// philos_free_string_array(&main_config.i_o_limit_read[index], index);
|
|
|
|
|
// philos_free_int_array(&main_config.i_o_limit_read_size[index], index);
|
|
|
|
|
// philos_free_string_array(&main_config.i_o_limit_write[index], index);
|
|
|
|
|
// philos_free_int_array(&main_config.i_o_limit_write_size[index], index);
|
|
|
|
|
// philos_free_string_array(&main_config.disk[index], index);
|
|
|
|
|
|
|
|
|
|
yon_char_parsed_copy(&main_config.i_o_limit_read[index], edit_get_read_device());
|
|
|
|
|
philos_array_int_copy(&main_config.i_o_limit_read_size[index], edit_get_read_device_size_pow());
|
|
|
|
|
yon_char_parsed_copy(&main_config.disk[index], edit_get_select_device());
|
|
|
|
|
|
|
|
|
|
yon_char_parsed_copy(&main_config.i_o_limit_write[index], edit_get_write_device());
|
|
|
|
|
philos_array_int_copy(&main_config.i_o_limit_write_size[index], edit_get_write_device_size_pow());
|
|
|
|
|
yon_char_parsed_copy(&main_config.disk[index], edit_get_select_device());
|
|
|
|
|
|
|
|
|
|
main_config.soft_raw_limit_size[index] = edit_get_soft_size();
|
|
|
|
|
main_config.hard_raw_limit_size[index] = edit_get_hard_size();
|
|
|
|
|
main_config.swap_size[index] = edit_get_limit_swap_size();
|
|
|
|
|
main_config.cpu_limit_size[index] = edit_get_limit_cpu_size();
|
|
|
|
|
//main_config.i_o_limit_read_size[index] = edit_get_read_device_size();
|
|
|
|
|
//main_config.i_o_limit_write_size[index] = edit_get_write_device_size();
|
|
|
|
|
|
|
|
|
|
char* str_io_read = format_io_limit_in_tree_view(main_config.disk, main_config.i_o_limit_read, main_config.i_o_limit_read_size, index);
|
|
|
|
|
char* str_io_write = format_io_limit_in_tree_view(main_config.disk, main_config.i_o_limit_write, main_config.i_o_limit_write_size, index);
|
|
|
|
|
gtk_list_store_set(main_config.list,&iter,0,main_config.type_quota[index],
|
|
|
|
|
1,main_config.quota_volume[index],
|
|
|
|
|
2,main_config.soft_raw_limit[index],
|
|
|
|
|
3,main_config.hard_raw_limit[index],
|
|
|
|
|
4,main_config.swap[index],
|
|
|
|
|
5,main_config.cpu_limit[index]
|
|
|
|
|
/*6,main_config.i_o_limit_read[index],
|
|
|
|
|
7,main_config.i_o_limit_write[index],-1*/);
|
|
|
|
|
5,main_config.cpu_limit[index],
|
|
|
|
|
6,str_io_read,
|
|
|
|
|
7,str_io_write,-1);
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
@ -892,11 +905,17 @@ void tree_view_del_line() {
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.cpu_limit = yon_char_parsed_shrink(main_config.cpu_limit, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
//main_config.i_o_limit_read = yon_char_parsed_shrink(main_config.i_o_limit_read, &main_config.size_tree_view,index);
|
|
|
|
|
//main_config.size_tree_view++;
|
|
|
|
|
//main_config.i_o_limit_write = yon_char_parsed_shrink(main_config.i_o_limit_write, &main_config.size_tree_view,index);
|
|
|
|
|
//main_config.size_tree_view++;
|
|
|
|
|
main_config.i_o_limit_read = yon_char_parsed_shrink_n3(main_config.i_o_limit_read, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.i_o_limit_write = yon_char_parsed_shrink_n3(main_config.i_o_limit_write, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.i_o_limit_write = yon_char_parsed_shrink_n3(main_config.disk, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
|
|
|
|
|
main_config.i_o_limit_read_size = remove_element_int_array_n3(main_config.i_o_limit_read_size, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.i_o_limit_write_size = remove_element_int_array_n3(main_config.i_o_limit_write_size, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.type_quota_size = remove_element_int_array(main_config.type_quota_size, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.quota_volume_size = remove_element_int_array(main_config.quota_volume_size, &main_config.size_tree_view,index);
|
|
|
|
@ -908,10 +927,7 @@ void tree_view_del_line() {
|
|
|
|
|
main_config.swap_size = remove_element_int_array(main_config.swap_size, &main_config.size_tree_view,index);
|
|
|
|
|
main_config.size_tree_view++;
|
|
|
|
|
main_config.cpu_limit_size = remove_element_int_array(main_config.cpu_limit_size, &main_config.size_tree_view,index);
|
|
|
|
|
//main_config.size_tree_view++;
|
|
|
|
|
//main_config.i_o_limit_read_size = remove_element_int_array(main_config.i_o_limit_read_size, &main_config.size_tree_view,index);
|
|
|
|
|
//main_config.size_tree_view++;
|
|
|
|
|
//main_config.i_o_limit_write_size = remove_element_int_array(main_config.i_o_limit_write_size, &main_config.size_tree_view,index);
|
|
|
|
|
|
|
|
|
|
main_fill_tree_view_after_remove();
|
|
|
|
|
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->treeViewMain), model);
|
|
|
|
|
free(str_iter);
|
|
|
|
@ -992,14 +1008,6 @@ char* save_format_value(int index) {
|
|
|
|
|
}
|
|
|
|
|
value = add_io_str_format_ubconfig(value, "IOReadBandwidthMax", main_config.i_o_limit_read, main_config.disk, index);
|
|
|
|
|
value = add_io_str_format_ubconfig(value, "IOWriteBandwidthMax", main_config.i_o_limit_write, main_config.disk, index);
|
|
|
|
|
//if (strstr(main_config.i_o_limit_read[index], "-") == NULL) {
|
|
|
|
|
//value = yon_char_unite(value ,split_simvol, philos_format_cfg_str_size_memory("IOReadBandwidthMax", main_config.i_o_limit_read[index],main_config.i_o_limit_read_size[index]), NULL);
|
|
|
|
|
// split_simvol[0] = ',';
|
|
|
|
|
// split_simvol[1] = '\0';
|
|
|
|
|
//}
|
|
|
|
|
//if (strstr(main_config.i_o_limit_write[index], "-") == NULL) {
|
|
|
|
|
//value = yon_char_unite(value ,split_simvol, philos_format_cfg_str_size_memory("IOWriteBandwidthMax", main_config.i_o_limit_write[index],main_config.i_o_limit_write_size[index]), NULL);
|
|
|
|
|
//}
|
|
|
|
|
return value;
|
|
|
|
|
}
|
|
|
|
|
char* add_io_str_format_ubconfig(char* cmd_io, char* key, char*** i_o_limit, char*** disk, int index) {
|
|
|
|
@ -1113,14 +1121,16 @@ void main_fill_tree_view_after_remove() {
|
|
|
|
|
for (int index= 0; index < main_config.size_tree_view; index++) {
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
gtk_list_store_append(main_config.list,&iter);
|
|
|
|
|
char* str_io_read = format_io_limit_in_tree_view(main_config.disk, main_config.i_o_limit_read, main_config.i_o_limit_read_size, index);
|
|
|
|
|
char* str_io_write = format_io_limit_in_tree_view(main_config.disk, main_config.i_o_limit_write, main_config.i_o_limit_write_size, index);
|
|
|
|
|
gtk_list_store_set(main_config.list,&iter,0,main_config.type_quota[index],
|
|
|
|
|
1,main_config.quota_volume[index],
|
|
|
|
|
2,main_config.soft_raw_limit[index],
|
|
|
|
|
3,main_config.hard_raw_limit[index],
|
|
|
|
|
4,main_config.swap[index],
|
|
|
|
|
5,main_config.cpu_limit[index]
|
|
|
|
|
/*6,main_config.i_o_limit_read[index],
|
|
|
|
|
7,main_config.i_o_limit_write[index],-1*/);
|
|
|
|
|
5,main_config.cpu_limit[index],
|
|
|
|
|
6,str_io_read,
|
|
|
|
|
7,str_io_write,-1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1236,8 +1246,8 @@ int main(int argc, char *argv[]){
|
|
|
|
|
gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),
|
|
|
|
|
GTK_STYLE_PROVIDER(css),
|
|
|
|
|
-1);
|
|
|
|
|
//load_global_cfg();
|
|
|
|
|
//load_system_cfg();
|
|
|
|
|
load_global_cfg();
|
|
|
|
|
load_system_cfg();
|
|
|
|
|
gtk_main();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|