--- freem/src/jobtab.c 2025/05/14 12:22:04 1.11 +++ freem/src/jobtab.c 2025/06/23 20:53:30 1.13 @@ -1,5 +1,5 @@ /* - * $Id: jobtab.c,v 1.11 2025/05/14 12:22:04 snw Exp $ + * $Id: jobtab.c,v 1.13 2025/06/23 20:53:30 snw Exp $ * job table implementation * * @@ -24,6 +24,12 @@ * along with FreeM. If not, see . * * $Log: jobtab.c,v $ + * Revision 1.13 2025/06/23 20:53:30 snw + * Documentation updates + * + * Revision 1.12 2025/05/14 15:28:55 snw + * Get basic job table and lock table functionality working with new shared memory architecture + * * Revision 1.11 2025/05/14 12:22:04 snw * Further work on shared memory * @@ -202,7 +208,7 @@ skip_alloc: } } - s->next = SBM(shm_config->hdr->jobtab_head); + s->next = SBM(SOA(shm_config->hdr->jobtab_head)); shm_config->hdr->jobtab_head = SBM(s); jobtab_release_sem (); @@ -223,7 +229,7 @@ void job_remove(const pid_t pid) if ((t != (job_slot_t *) NULL) && (t->pid == pid)) { - shm_config->hdr->jobtab_head = SBM(t->next); + shm_config->hdr->jobtab_head = SBM(SOA(t->next)); shm_free (t); jobtab_release_sem (); @@ -272,6 +278,8 @@ void job_request_stop(const pid_t target } + logprintf (FM_LOG_ERROR, "job_request_stop: could not find pid %ld in job table", target_pid); + jobtab_release_sem (); }