Lines Matching defs:res_info

90 typedef struct res_info {
825 res_info_t *res_info;
832 if ((res_info = calloc(nelem, sizeof (res_info_t))) == NULL) {
844 &res_info[j].ri_max) == PO_FAIL ||
846 &res_info[j].ri_min) == PO_FAIL ||
848 &res_info[j].ri_oldsize) == PO_FAIL ||
850 &res_info[j].ri_pinned) == PO_FAIL) {
851 free(res_info);
854 res_info[j].ri_res = res[j];
866 real_min = MAX(res_info[j].ri_pinned, res_info[j].ri_min);
867 if (res_info[j].ri_res != default_res &&
868 res_info[j].ri_oldsize > real_min) {
872 num = res_info[j].ri_oldsize - real_min;
875 res_info[j].ri_res, default_res, num) !=
877 free(res_info);
889 if (res_info[j].ri_res != default_res &&
890 res_info[j].ri_oldsize < res_info[j].ri_min) {
893 default_res, res_info[j].ri_res,
894 res_info[j].ri_min - res_info[j].ri_oldsize) !=
896 free(res_info);
901 free(res_info);
929 res_info_t *res_info;
947 if ((res_info = calloc(nelem, sizeof (res_info_t))) == NULL) {
962 default_res_info = &(res_info[j]);
966 if (resource_get_max(res[j], &res_info[j].ri_max) == PO_FAIL ||
967 resource_get_min(res[j], &res_info[j].ri_min) == PO_FAIL ||
968 resource_get_size(res[j], &res_info[j].ri_oldsize) ==
971 &res_info[j].ri_pinned) == PO_FAIL) {
972 free(res_info);
977 res_info[j].ri_newsize = res_info[j].ri_min;
980 if (res_info[j].ri_pinned > res_info[j].ri_min) {
981 res_info[j].ri_newsize = res_info[j].ri_pinned;
982 res_info[j].ri_dealt =
983 res_info[j].ri_newsize - res_info[j].ri_min;
985 res_info[j].ri_res = res[j];
988 tot_resources += res_info[j].ri_oldsize;
989 tot_min += res_info[j].ri_newsize;
994 dprintf("size=%llu\n", res_info[j].ri_oldsize);
1011 if (res_info[j].ri_dealt >= deal)
1014 if (res_info[j].ri_newsize < res_info[j].ri_max) {
1016 res_info[j].ri_dealt++;
1017 res_info[j].ri_newsize++;
1018 if (res_info[j].ri_newsize ==
1019 res_info[j].ri_max)
1044 qsort(res_info, nelem, sizeof (res_info_t),
1064 if (res_info[donor].ri_transfer != 0) {
1065 free(res_info);
1071 if (res_info[donor].ri_transfer == 0) {
1076 if (res_info[receiver].ri_transfer == 0) {
1083 ntrans = MIN(res_info[donor].ri_transfer,
1084 -res_info[receiver].ri_transfer);
1087 TO_CONF(TO_ELEM(res_info[donor].ri_res)),
1088 res_info[donor].ri_res, res_info[receiver].ri_res,
1090 free(res_info);
1093 res_info[donor].ri_transfer -= ntrans;
1094 res_info[receiver].ri_transfer += ntrans;
1100 free(res_info);