 - In kseq_choose(), don't recalculate slice values for processes with a    nice of 0.  Doing so can cause an infinite loop because they should be    running, but a nice -20 process could prevent them from doing so.  - Add a new flag KEF_PRIOELEV to flag a thread that has had its priority    elevated due to priority propagation.  If a thread has had its priority    elevated, we assume that it must go on the current queue and it must    get a slice.  - In sched_userret() if our priority was elevated and we shouldn't have    a timeslice, yield here until we should.
 - In kseq_choose(), don't recalculate slice values for processes with a
   nice of 0.  Doing so can cause an infinite loop because they should be
   running, but a nice -20 process could prevent them from doing so.
 - Add a new flag KEF_PRIOELEV to flag a thread that has had its priority
   elevated due to priority propagation.  If a thread has had its priority
   elevated, we assume that it must go on the current queue and it must
   get a slice.
 - In sched_userret() if our priority was elevated and we shouldn't have
   a timeslice, yield here until we should.

Found/Tested by:	glebius

jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase