On 03/10/2007, Jarek Poplawski <jarkao2@o2.pl> wrote:just a quick patch, not tested and I've not evaluated all possible implications yet. But someone might give it a try with his/(her -- are even more welcomed :-) favourite sched_yield() load. (and white space damaged) --- sched_fair-old.c 2007-10-03 12:45:17.010306000 +0200 +++ sched_fair.c 2007-10-03 12:44:46.899851000 +0200 @@ -803,7 +803,35 @@ static void yield_task_fair(struct rq *r update_curr(cfs_rq); return; + } else if (sysctl_sched_compat_yield == 2) { + unsigned long ideal_runtime, delta_exec, + delta_exec_weighted; + + __update_rq_clock(rq); + /* + * Update run-time statistics of the 'current'. + */ + update_curr(cfs_rq); + + /* + * Emulate (speed up) the effect of us being preempted + * by scheduler_tick(). + */ + ideal_runtime = sched_slice(cfs_rq, curr); + delta_exec = curr->sum_exec_runtime - curr->prev_sum_exec_runtime; + + if (ideal_runtime > delta_exec) { + delta_exec_weighted = ideal_runtime - delta_exec; + + if (unlikely(curr->load.weight != NICE_0_LOAD)) { + delta_exec_weighted = calc_delta_fair(delta_exec_weighted, + &se->load); + } + se->vruntime += delta_exec_weighted; + } + return; } + /* * Find the rightmost entry in the rbtree: */ -- Best regards, Dmitry Adamushko
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| David Dillow | CONFIG_NO_HZ breaks blktrace timestamps |
| David Miller | Re: tg3: unable to handle null pointer dereference |
git: | |
| Martin Langhoff | Handling large files with GIT |
| Jakub Narebski | Re: VCS comparison table |
| Scott Chacon | Git Community Book |
| Matthew L Foster | git and time |
| Daniel Ouellet | identifying sparse files and get ride of them trick available? |
| Richard Stallman | Real men don't attack straw men |
| Stefan Beke | mail dovecot: pipe() failed: Too many open files |
| Rico Secada | Re: Binary kernel and base update |
| Evgeniy Polyakov | Re: [PKT_SCHED]: Add stateless NAT |
| Tantilov, Emil S | RE: [BUG] NULL pointer dereference in skb_dequeue |
| KOVACS Krisztian | [PATCH 10/14] iptables socket match |
| Ilpo Järvinen | [PATCH] [TCP]: Separate lost_retrans loop into own function |
| How to make initramfs smaller | 2 minutes ago | Linux kernel |
| how to check if a given block device is in use? | 26 minutes ago | Linux kernel |
| How to exec user process in kernel mode. | 54 minutes ago | Linux kernel |
| [IPSEC]IPSEC_MANUAL_REQID_MAX | 3 days ago | Linux kernel |
| help in UDP catching module.. | 3 days ago | Linux kernel |
| Is there anything like Real-time drivers? | 5 days ago | Linux general |
| ns16550 serail console in Linux 2.6.19 | 5 days ago | Linux general |
| what class should i use to register my devices | 5 days ago | Linux kernel |
| reset bios pasword toshiba | 6 days ago | Hardware |
| Analysis of Process Scheduling | 1 week ago | Linux kernel |
