On Mon, 23 Jan 2006 11:49:33 +1100
Peter Williams <pwil3058@xxxxxxxxxxxxxx> wrote:
However, in spite of the above, the fairness mechanism should have been able to generate enough bonus points to get dd's priority back to less than 34. I'm still investigating why this didn't happen.
Problem solved. It was a scaling issue during the calculation of expected delay. The attached patch should fix both the CPU hog problem and the fairness problem. Could you give it a try?
Mmmm... it doesn't work:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5516 paolo 34 0 115m 18m 2432 S 87.5 3.7 0:23.72 transcode
5530 paolo 34 0 51000 4472 1872 S 8.0 0.9 0:02.29 tcdecode
5523 paolo 34 0 19840 1088 880 R 2.0 0.2 0:00.21 tcdemux
5522 paolo 34 0 22156 1204 972 R 0.7 0.2 0:00.02 tccat
5539 paolo 34 0 4952 1468 372 D 0.7 0.3 0:00.04 dd
5350 root 28 0 167m 16m 3228 S 0.3 3.4 0:03.64 X
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5456 paolo 34 0 115m 18m 2432 D 63.9 3.7 0:48.21 transcode
5470 paolo 37 0 50996 4472 1872 R 6.2 0.9 0:05.20 tcdecode
5493 paolo 34 0 4952 1472 372 R 1.5 0.3 0:00.22 dd
5441 paolo 28 0 86656 21m 15m S 0.2 4.4 0:00.77 konsole
5468 paolo 34 0 19840 1088 880 S 0.2 0.2 0:00.23 tcdemux