I wrote a small C program to dump the priorities using the current method
and the new method. It is easy to see the difference in behavior using this.
oldprio(7) 0 1 2 3 4 5 6 7
newprio(7) 0 1 2 3 4 5 6 7
oldprio(6) 1 2 3 4 5 6 7 0
newprio(6) 7 0 1 2 3 4 5 6
oldprio(5) 2 3 4 5 6 7 0 1
newprio(5) 6 7 0 1 2 3 4 5
oldprio(4) 3 4 5 6 7 0 1 2
newprio(4) 5 6 7 0 1 2 3 4
oldprio(3) 4 5 6 7 0 1 2 3
newprio(3) 4 5 6 7 0 1 2 3
oldprio(2) 5 6 7 0 1 2 3 4
newprio(2) 3 4 5 6 7 0 1 2
oldprio(1) 6 7 0 1 2 3 4 5
newprio(1) 2 3 4 5 6 7 0 1
oldprio(0) 7 0 1 2 3 4 5 6
newprio(0) 1 2 3 4 5 6 7 0