Wow, thank you for the further deep-diving.

> On May 10, 2017, at 5:21 AM, Ludovic Orban <[email protected]> wrote:
> 
> Looking at ksh' sources, my understanding is that job_post is stuck in that 
> else clause:
>        else
>        {
>               /* create a new job */
>               while((pw->p_job = job_alloc()) < 0)
>                      job_wait((pid_t)1);
>               pw->p_nxtjob = job.pwlist;
>               pw->p_nxtproc = 0;
>        }
> 
> Digging into the sources and stepping though the instructions of job_alloc 
> and job_byjid it looks like ksh cannot allocate a job id as it believes 
> they're all reserved. But so far, all this code is purely working on internal 
> structures of ksh so a LX bug would have no impact.
> 
> I'll continue looking into this as time permits and I'll post an update if I 
> find anything worth mentioning.
> 

Be careful of narrowing your focus too far.  I see some things worth 
considering:

1.) If the "if" you're not showing me dependent on something in global state 
that may have been mis-initialized by an LX emulation bug?

2.) Same question as #1, but applied to job_alloc() and job_wait().

I'm guessing LX in OmniOS is failing because I mismerged or plain forgot 
something, given that Nahum says he can run ksh93 on SmartOS just fine.


Please make sure you're looking at the bigger picture, but THANK YOU for the 
further investigation.

Dan

_______________________________________________
OmniOS-discuss mailing list
[email protected]
http://lists.omniti.com/mailman/listinfo/omnios-discuss

Reply via email to