wuzj@xxxxxxxxxx wrote:
>> HI!
>>
>> I'm planning to port RE_PREEMPT to loongson2f(a mipsel compatible
>> processor), the "FAQ" web page of RTWiKi(rt.wiki.kernel.org) shows that
>> "There are systems representing the x86, x86_64, ARM, MIPS, and Power
>> architectures using the CONFIG_PREEMPT_RT patch.", does it means that
>> RT_PREEMPT support MIPS architecture? because i can not find any more
>> information about it, I tried to use the latest RT_PREEMPT on qemu
>> 0.9.1/mipssim, it can not boot, so I come to get your help, could you give
>> any current status of RT_PREEMPT for mips? such as:
>>
>> 1. does the latest RT_PREEMPT(for linux 2.6.26.8) support MIPS
>> architecture? or any older one support it?
>> 2. if Yes, which MIPS processors have been successfully running
RT_PREEMPT?
>>
>> looking forward to your reply, thanks!
>>
>> Best Regards,
>> falcon
> I do not have information for current versions of the kernel, but last year
> I was running 2.6.24-rt1 on a Toshiba tx4937 to do some experiments.
thanks very much, currently, there are two versions of rt-preempt working
on fuloong box(loongson2f based machine), one is linux-2.6.26.8, another
is the latest linux-2.6.29-rc6.
and i have tested them via rt-tests, the result is like this:
0% load: < 29us
100% load: < 130 us
> I have a few trivial patches for the latency tracer, but if you use a newer
> kernel they are not needed because ftrace replaced the latency tracer
> in 2.6.24-rt2.
now, ftrace have been migrated to mipsel(loongson2f), including the 32bit
and 64bit. but dyn-ftrace not work yet, which should be fixed later.
and about timestamp information in ftrace, the sched_clock(called by
ring_buffer_time_stamp) have not enough precision(only 1000us) on
mips(loongson2f), i have tried to fix it via adding it with the tsc
time(in kernel/trace/ring_buffer.c):
cyc2ns(clock, clock->read() - clock->cycle_last)
which seems works well(achieve 1us). and i have tried to call
getnstimeofday directly, but it will result in deadlock.
> -Frank Rowand
> Sony Corporation of America
the attachments include two files:
patch-2.6.29-rc6-fl-090305 linux patch for loongson2f
patch-2.6.29-rc6-fl-rt-ftrace-mips rt-preempt patch for mipsel(loongson2f)
usage:
1. download the following files
from http://www.kernel.org:
linux-2.6.28.tar.gz
patch-2.6.29-rc6
from http://www.kernel.org/pub/linux/kernel/projects/rt/:
patch-2.6.29-rc6-rt3
2. decompress linux kernel
3. patch the following patches one by one
patch-2.6.29-rc6
patch-2.6.29-rc6-fl-090305
patch-2.6.29-rc6-rt3
patch-2.6.29-rc6-fl-rt-ftrace-mips
4. configure, compile and use it.
PS: kft(Kernel function tracing) patch for linux-2.6.29-rc6 is also
running on loongson2f now.