save works
This commit is contained in:
parent
b748e30d20
commit
f4b1ba4cd7
21 changed files with 373 additions and 324 deletions
|
|
@ -537,14 +537,14 @@ typedef struct {
|
|||
|
||||
static size_t job_datasize(va_list ap)
|
||||
{
|
||||
size_t sz = sizeof(xce_job_t);
|
||||
size_t sz = sizeof(job_t);
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
static int job_init(meta_obj_t* obj, va_list ap)
|
||||
{
|
||||
xce_job_t* dst = RTTI_OBJ_TO_DATA(xce_job_t, obj);
|
||||
job_t* dst = RTTI_OBJ_TO_DATA(job_t, obj);
|
||||
job_private_t* priv = (job_private_t*)RTTI_OBJ_TO_PRIV(obj);
|
||||
xce_job_t* src = va_arg(ap, xce_job_t*);
|
||||
|
||||
|
|
@ -552,22 +552,22 @@ static int job_init(meta_obj_t* obj, va_list ap)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
dst->jobid = src->jobid;
|
||||
dst->submit = makeJobsub(src->submit);
|
||||
dst->sub_time = src->sub_time;
|
||||
dst->queue_time = src->queue_time;
|
||||
dst->start_time = src->start_time;
|
||||
dst->finish_time = src->finish_time;
|
||||
MOVE_PTR(dst->pidinfo, src->pidinfo);
|
||||
dst->state = src->state;
|
||||
MOVE_PTR(dst->allocs, src->allocs);
|
||||
MOVE_PTR(dst->accounts, src->accounts);
|
||||
dst->run_time = src->run_time;
|
||||
MOVE_PTR(dst->run_usage, src->run_usage);
|
||||
MOVE_PTR(dst->exit_info, src->exit_info);
|
||||
dst->ckptinfo = makeString(src->ckptinfo);
|
||||
dst->pending_ctrl = src->pending_ctrl;
|
||||
MOVE_PTR(dst->pend_reasons, src->pend_reasons);
|
||||
dst->job.jobid = src->jobid;
|
||||
dst->job.submit = makeJobsub(src->submit);
|
||||
dst->job.sub_time = src->sub_time;
|
||||
dst->job.queue_time = src->queue_time;
|
||||
dst->job.start_time = src->start_time;
|
||||
dst->job.finish_time = src->finish_time;
|
||||
MOVE_PTR(dst->job.pidinfo, src->pidinfo);
|
||||
dst->job.state = src->state;
|
||||
MOVE_PTR(dst->job.allocs, src->allocs);
|
||||
MOVE_PTR(dst->job.accounts, src->accounts);
|
||||
dst->job.run_time = src->run_time;
|
||||
MOVE_PTR(dst->job.run_usage, src->run_usage);
|
||||
MOVE_PTR(dst->job.exit_info, src->exit_info);
|
||||
dst->job.ckptinfo = makeString(src->ckptinfo);
|
||||
dst->job.pending_ctrl = src->pending_ctrl;
|
||||
MOVE_PTR(dst->job.pend_reasons, src->pend_reasons);
|
||||
|
||||
my_rwlock_init(&(priv->lock));
|
||||
priv->refcount = 1;
|
||||
|
|
@ -577,24 +577,24 @@ static int job_init(meta_obj_t* obj, va_list ap)
|
|||
|
||||
static void job_destroy(meta_obj_t* obj)
|
||||
{
|
||||
xce_job_t* j = RTTI_OBJ_TO_DATA(xce_job_t, obj);
|
||||
job_t* j = RTTI_OBJ_TO_DATA(job_t, obj);
|
||||
job_private_t* priv = (job_private_t*)RTTI_OBJ_TO_PRIV(obj);
|
||||
|
||||
dereference(j->submit);
|
||||
dereference(j->ckptinfo);
|
||||
dereference(j->job.submit);
|
||||
dereference(j->job.ckptinfo);
|
||||
|
||||
/* FIXME: */
|
||||
if (j->pidinfo != NULL) { }
|
||||
if (j->job.pidinfo != NULL) { }
|
||||
|
||||
if (j->allocs != NULL) { }
|
||||
if (j->job.allocs != NULL) { }
|
||||
|
||||
if (j->accounts != NULL) { }
|
||||
if (j->job.accounts != NULL) { }
|
||||
|
||||
if (j->run_usage != NULL) { }
|
||||
if (j->job.run_usage != NULL) { }
|
||||
|
||||
if (j->exit_info != NULL) { }
|
||||
if (j->job.exit_info != NULL) { }
|
||||
|
||||
if (j->pend_reasons != NULL) { }
|
||||
if (j->job.pend_reasons != NULL) { }
|
||||
|
||||
my_rwlock_fini(&(priv->lock));
|
||||
memset(priv, 0x0, sizeof(*priv));
|
||||
|
|
@ -616,7 +616,7 @@ static int job_reference(meta_obj_t* obj)
|
|||
static void job_dereference(meta_obj_t* obj)
|
||||
{
|
||||
job_private_t* priv = (job_private_t*)RTTI_OBJ_TO_PRIV(obj);
|
||||
xce_job_t* j = RTTI_OBJ_TO_DATA(xce_job_t, obj);
|
||||
job_t* j = RTTI_OBJ_TO_DATA(job_t, obj);
|
||||
uint64_t count;
|
||||
|
||||
my_rwlock_wlock(&(priv->lock));
|
||||
|
|
@ -674,9 +674,10 @@ static typeinfo_t job_type = {
|
|||
.unlock = (unlock_fn_t)job_unlock } }
|
||||
};
|
||||
|
||||
xce_job_t* makeJob(xce_job_t* j)
|
||||
job_t* makeJob(var jobmgr, xce_job_t* j)
|
||||
{
|
||||
xce_job_t* job = makeInstance(&job_type, j);
|
||||
job_t* job = makeInstance(&job_type, j);
|
||||
/* FIXME */
|
||||
return job;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue