Thread (7 messages) 7 messages, 4 authors, 2011-07-15

change kthread priority

From: loody <hidden>
Date: 2011-07-11 06:53:56

hi:


2011/7/11 Dave Hylands [off-list ref]:
Hi Milody,

On Sun, Jul 10, 2011 at 8:55 PM, loody [off-list ref] wrote:
quoted
hi:

2011/7/11 Mulyadi Santosa [off-list ref]:
quoted
Hi...
...snip...
quoted
quoted
AFAIK they are user mode libc functions...
I found there are the same export_symbols in kernel.
I use them to dynamically change the priority.
It works but I found something interesting:
1. if thread use schedule algorithm of SCHED_NORMAL, it cannot change
the priority.
2. can we set the priority ?to any number less than (MAX_USER_RT_PRIO-1)?
( I tried to set the priority as 99, but it fail)
You need to change the scheduling algorithim to be SCHED_FIFO or
SCHED_RR in order to use the real-time priorities.
I saw kernel restrict the algorithm as SCHED_FIFO and SCHED_RR to
change the priority.
What are the differences between rt_priority, prio, static_prio and normal_prio?
sched_setscheduler seems only change rt_priority.

normal_prio is MAX_RT_PRIO-1 - t_priority
prio will be min(normal_prio, task_top_pi_waiter)

what is the real priority that kthread runs after calling sched_setscheduler ?

quoted
3. can we get the name of thread from task_struct or pid?
(I use "cat /proc/338/status", I can see the name of thread. But I
look around the task_struct, I cannot find any name information in
it.)
You can use the comm field from the task struct. This can be set using
the prctl API and passing in PR_SET_NAME. You can see the task name by
doing something like

ps -T -o pid,ppid,user,time,comm

Normally, ps shows the args column.

--
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com


-- 
Regards,
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help