* 2.6 preemptive kernel on mips
@ 2004-08-03 19:22 Song Wang
2004-08-03 19:40 ` Jun Sun
0 siblings, 1 reply; 7+ messages in thread
From: Song Wang @ 2004-08-03 19:22 UTC (permalink / raw)
To: linux-mips
Hi,
Has anyone tried to enable kernel preemption on
Linux mips 2.6 kernel (mips32) and test it? If
so, which version does it work?
I tried on 2.6.3 and it didn't work.
Thanks.
-Song
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - 100MB free storage!
http://promotions.yahoo.com/new_mail
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-08-03 19:22 2.6 preemptive kernel on mips Song Wang
@ 2004-08-03 19:40 ` Jun Sun
2004-08-04 21:51 ` Tom Rini
2004-10-04 12:15 ` Atsushi Nemoto
0 siblings, 2 replies; 7+ messages in thread
From: Jun Sun @ 2004-08-03 19:40 UTC (permalink / raw)
To: Song Wang; +Cc: linux-mips, jsun
On Tue, Aug 03, 2004 at 12:22:44PM -0700, Song Wang wrote:
> Hi,
>
> Has anyone tried to enable kernel preemption on
> Linux mips 2.6 kernel (mips32) and test it? If
> so, which version does it work?
>
> I tried on 2.6.3 and it didn't work.
>
Try the latest kernel. I checked preemption around 2.6.5 time
and I believe all the obvious problems are fixed then.
There are still some issues with both SMP and PREEMPT, but most
people won't see them in normal cases.
Jun
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-08-03 19:40 ` Jun Sun
@ 2004-08-04 21:51 ` Tom Rini
2004-08-04 22:25 ` Jun Sun
2004-10-04 12:15 ` Atsushi Nemoto
1 sibling, 1 reply; 7+ messages in thread
From: Tom Rini @ 2004-08-04 21:51 UTC (permalink / raw)
To: Jun Sun; +Cc: Song Wang, linux-mips
On Tue, Aug 03, 2004 at 12:40:48PM -0700, Jun Sun wrote:
> On Tue, Aug 03, 2004 at 12:22:44PM -0700, Song Wang wrote:
> > Hi,
> >
> > Has anyone tried to enable kernel preemption on
> > Linux mips 2.6 kernel (mips32) and test it? If
> > so, which version does it work?
> >
> > I tried on 2.6.3 and it didn't work.
> >
>
> Try the latest kernel. I checked preemption around 2.6.5 time
> and I believe all the obvious problems are fixed then.
>
> There are still some issues with both SMP and PREEMPT, but most
> people won't see them in normal cases.
MIPS or generic? It's claimed, at least, that SMP&&PREEMPT have no
fatal, generic, issues now (I forget if that was the case around 2.6.5).
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-08-04 21:51 ` Tom Rini
@ 2004-08-04 22:25 ` Jun Sun
0 siblings, 0 replies; 7+ messages in thread
From: Jun Sun @ 2004-08-04 22:25 UTC (permalink / raw)
To: Tom Rini; +Cc: Song Wang, linux-mips, jsun
On Wed, Aug 04, 2004 at 02:51:40PM -0700, Tom Rini wrote:
> On Tue, Aug 03, 2004 at 12:40:48PM -0700, Jun Sun wrote:
>
> > On Tue, Aug 03, 2004 at 12:22:44PM -0700, Song Wang wrote:
> > > Hi,
> > >
> > > Has anyone tried to enable kernel preemption on
> > > Linux mips 2.6 kernel (mips32) and test it? If
> > > so, which version does it work?
> > >
> > > I tried on 2.6.3 and it didn't work.
> > >
> >
> > Try the latest kernel. I checked preemption around 2.6.5 time
> > and I believe all the obvious problems are fixed then.
> >
> > There are still some issues with both SMP and PREEMPT, but most
> > people won't see them in normal cases.
>
> MIPS or generic? It's claimed, at least, that SMP&&PREEMPT have no
> fatal, generic, issues now (I forget if that was the case around 2.6.5).
>
It is MIPS specific problems I was referring to (such as unsafe
smp_processor_id() reference etc).
If you think about it the real problem is that kernel has non-migratable
regions, a section where process should not migrate from one CPU to
another. Before preemtible kernel is introduced such non-migratable
regions are not a problem because they can't migrate during those
regions.
So a potentially better solution is to introduce non-migratable
regions during which scheduler promises not to migrate the processes.
Under such promises a process can actually be preempted while
it is in such a region.
Jun
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-08-03 19:40 ` Jun Sun
2004-08-04 21:51 ` Tom Rini
@ 2004-10-04 12:15 ` Atsushi Nemoto
2004-10-05 0:00 ` Jun Sun
1 sibling, 1 reply; 7+ messages in thread
From: Atsushi Nemoto @ 2004-10-04 12:15 UTC (permalink / raw)
To: jsun; +Cc: wsonguci, linux-mips
>>>>> On Tue, 3 Aug 2004 12:40:48 -0700, Jun Sun <jsun@mvista.com> said:
jsun> Try the latest kernel. I checked preemption around 2.6.5 time
jsun> and I believe all the obvious problems are fixed then.
Hi. Now I'm looking current (2.6.9-rc1) code.
It lacks some preempt_disable/preempt_enable which were in
preempt-patch for 2.4 kernel. Are these all unnecessary at all?
For example, fpu-emulation is not preemptive-safe, isn't it?
---
Atsushi Nemoto
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-10-04 12:15 ` Atsushi Nemoto
@ 2004-10-05 0:00 ` Jun Sun
2004-10-05 4:58 ` Atsushi Nemoto
0 siblings, 1 reply; 7+ messages in thread
From: Jun Sun @ 2004-10-05 0:00 UTC (permalink / raw)
To: Atsushi Nemoto; +Cc: jsun, wsonguci, linux-mips
On Mon, Oct 04, 2004 at 09:15:04PM +0900, Atsushi Nemoto wrote:
> >>>>> On Tue, 3 Aug 2004 12:40:48 -0700, Jun Sun <jsun@mvista.com> said:
> jsun> Try the latest kernel. I checked preemption around 2.6.5 time
> jsun> and I believe all the obvious problems are fixed then.
>
> Hi. Now I'm looking current (2.6.9-rc1) code.
>
> It lacks some preempt_disable/preempt_enable which were in
> preempt-patch for 2.4 kernel. Are these all unnecessary at all?
>
They are necessary.
> For example, fpu-emulation is not preemptive-safe, isn't it?
>
That is correct.
I think the best thing to do right now is to go through
2.4 preemption patch and pick up the missing ones for 2.6.
It will probably take me a little given other things on my hand.
I strongly enourage someone else to take a shoot at it. The latest
2.4 MIPS preemption patch seems to be
http://linux.junsun.net/patches/oss.sgi.com/experimental/030304-b.preempt-mips.patch
Jun
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 2.6 preemptive kernel on mips
2004-10-05 0:00 ` Jun Sun
@ 2004-10-05 4:58 ` Atsushi Nemoto
0 siblings, 0 replies; 7+ messages in thread
From: Atsushi Nemoto @ 2004-10-05 4:58 UTC (permalink / raw)
To: jsun; +Cc: jsun, wsonguci, linux-mips
>>>>> On Mon, 4 Oct 2004 17:00:02 -0700, Jun Sun <jsun@junsun.net> said:
>> It lacks some preempt_disable/preempt_enable which were in
>> preempt-patch for 2.4 kernel. Are these all unnecessary at all?
jsun> They are necessary.
>> For example, fpu-emulation is not preemptive-safe, isn't it?
jsun> That is correct.
jsun> I think the best thing to do right now is to go through 2.4
jsun> preemption patch and pick up the missing ones for 2.6.
Thank you. I think there are some issue to fix.
1. ll/sc emulation (ll_bit, ll_task). This is easy to fix.
2. There is an global variable ieee754_csr in math-emu. This must be
protected by preempt_disable. But math-emu uses put_user/get_user
which can not be used with preempt disabled. (Is it true?)
3. save_fp_context/restore_fp_context is not preemptable. But these
function uses put_user/get_user.
Actually, math-emu/fp_context issues are not only for preemptive
kernel. I suppose bad things can happen if a process going to sleep
on get_user/put_user in math-emu/save_fp_context/restore_fp_context...
---
Atsushi Nemoto
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2004-10-05 5:00 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-03 19:22 2.6 preemptive kernel on mips Song Wang
2004-08-03 19:40 ` Jun Sun
2004-08-04 21:51 ` Tom Rini
2004-08-04 22:25 ` Jun Sun
2004-10-04 12:15 ` Atsushi Nemoto
2004-10-05 0:00 ` Jun Sun
2004-10-05 4:58 ` Atsushi Nemoto
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.