fres_block_spare_capacity *s;
fres_contract_ptr_seq contracts;
- if (!forb_sequence_alloc_buf(contracts, rl->length)) {
+ if (!forb_sequence_alloc_buf(&contracts, rl->length)) {
return errno;
}
contracts._length = rl->length;
NULL;
assert(fc->to_be_reserved_contract != NULL);
- forb_sequence_elem(contracts, i) = fc->to_be_reserved_contract;
+ forb_sequence_elem(&contracts, i) = fc->to_be_reserved_contract;
i++;
s = fres_contract_get_spare_capacity(fc->to_be_reserved_contract);
/* TODO: Simulate continuous granularity by discretization */
if (s && s->granularity == FRSH_GR_DISCRETE) {
fres_container_copy(fc->to_be_reserved_contract->container,
- forb_sequence_elem(s->variants, fc->sc_variant.try));
+ forb_sequence_elem(&s->variants, fc->sc_variant.try));
criterion += fc->sc_variant.try;
if (fcb_changed == NULL) {
fres_contract_destroy(fc->to_be_reserved_contract);
fc->to_be_reserved_contract = NULL;
}
- forb_sequence_free_buf(contracts, forb_no_destructor);
+ forb_sequence_free_buf(&contracts, forb_no_destructor);
return ret;
}
int i, ret = 0;
CORBA_Environment ev;
- if (!forb_sequence_alloc_buf(vreses, schedulable_contracts->_length)) {
+ if (!forb_sequence_alloc_buf(&vreses, schedulable_contracts->_length)) {
return errno;
}
vreses._length = 0;
ret = fres_forbex2err(&ev);
}
err:
- forb_sequence_free_buf(vreses, forb_no_destructor);
+ forb_sequence_free_buf(&vreses, forb_no_destructor);
return ret;
}
/* Allocate all the needed memory before doing reservation. If
* there is no enough memory, it has no sense to call resource
* manager. */
- if (!forb_sequence_alloc_buf(commit_ids, rl.length)) {
+ if (!forb_sequence_alloc_buf(&commit_ids, rl.length)) {
ret = errno;
goto err_free_fcb_contracts;
}
commit_ids._length = rl.length;
i=0;
ul_list_for_each(reservation_list, &rl, fc) {
- forb_sequence_elem(commit_ids, i) = fc->id;
+ forb_sequence_elem(&commit_ids, i) = fc->id;
i++;
}
/* Return IDs and delete canceled contracts from out database */
- if (!forb_sequence_alloc_buf(**ids_out, contracts->_length)) {
+ if (!forb_sequence_alloc_buf(*ids_out, contracts->_length)) {
ev->major = FORB_EX_NO_MEMORY;
goto err_cancel_contracts;
}
(*ids_out)->_length = contracts->_length;
for (i=0; i<contracts->_length; i++) {
struct fcb_contract *fc = fcb_contracts[i];
- forb_sequence_elem(**ids_out, i) = fc->id;
+ forb_sequence_elem(*ids_out, i) = fc->id;
if (fc->requested_contract &&
fres_contract_get_num_blocks(fc->requested_contract) == 0) {
if (utilization_set) {
int i;
- if (!forb_sequence_alloc_buf(s->variants, utilization_set->size)) {
+ if (!forb_sequence_alloc_buf(&s->variants, utilization_set->size)) {
goto err;
}
for (i=0; i<utilization_set->size; i++) {
ret = fres_container_add_timing_reqs(c, t);
- forb_sequence_elem(s->variants, i) = c;
+ forb_sequence_elem(&s->variants, i) = c;
continue;
err_ut:
fres_container_destroy(c);
return FRSH_NO_ERROR;
err:
- forb_sequence_free_buf(s->variants, forb_no_destructor);
+ forb_sequence_free_buf(&s->variants, forb_no_destructor);
free(s);
return errno;
}