fix(scheduler): wire mem reservation reconciliation into live rusage event path
sched_reconcile_job_resource_usage() was only reachable from sched_apply_job_rusage() (scheduler.c's sched_update(), which has no live caller), so real-usage reconciliation never actually ran outside tests. Wire it into core_events.c's XCE_CORE_EVENT_JOB_RUSAGE handler instead, the actual live path shared by both normal-mode (driver.c) and sim/replay mode (sim_loop.c). Adds link-satisfying stubs to the testsuite files that #include core_events.c directly. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y4M5MJM2zK6nU43da267Ku
This commit is contained in:
parent
728496bea0
commit
eb06f16d75
21 changed files with 389 additions and 6 deletions
|
|
@ -113,6 +113,18 @@ void kill_sched_user(void* arg) { (void)arg; }
|
|||
void kill_sched_project(void* arg) { (void)arg; }
|
||||
void kill_sched_resval(xce_val_t* val) { (void)val; }
|
||||
|
||||
/* resource-accounting.md's reconciliation (resource.c, not linked here --
|
||||
* this file only #includes core_events.c). core_events.c's
|
||||
* XCE_CORE_EVENT_JOB_RUSAGE handler calls this whenever job->accounts !=
|
||||
* NULL; link-satisfying stub only, same rationale as every other stub in
|
||||
* this block (see test_job_update.c's identical stub). */
|
||||
int sched_reconcile_job_resource_usage(xce_sched_core_t* c,
|
||||
xce_job_account_t* a,
|
||||
xce_job_rusages_t* r)
|
||||
{
|
||||
(void)c; (void)a; (void)r; return 0;
|
||||
}
|
||||
|
||||
void sched_worker_release_host_ctx(xce_sched_worker_t* w) { (void)w; }
|
||||
|
||||
int sched_fill_limit_requests(xce_scheduler_t* sched, xvec_idval_t* vec,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue