* Steven Rostedt <[email protected]> wrote:
> > actually, what priorities do the yielding tasks have? sched_yield() does
> > not guarantee that the CPU will be given up, of if a highest-prio
> > SCHED_FIFO task is in a yield() loop it will livelock the system.
>
> What scares me is the code in fs/inode.c with that
> __wait_on_freeing_inode. Look at the code in find_inode and
> find_inode_fast. Here you will see that they really are busy loops
> with a yield in them, if the inode they are waiting on is I_FREEING or
> I_CLEAR and the process doing this hasn't set I_LOCK. I haven't
> looked much at this, but my kernel has livelocked on it.
ok, makes sense.
> Currently my fix is in yield to lower the priority of the task calling
> yield and raise it after the schedule. This is NOT a proper fix. It's
> just a hack so I can get by it and test other parts.
yeah, yield() is a quite RT-incompatible concept, which could livelock
an upstream kernel just as much - if the task in question is SCHED_FIFO.
Almost all yield() uses should be eliminated from the upstream kernel,
step by step.
Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- References:
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]