[rtl] Re: [ANNOUNCE] Adaptive Domain Environment for Operating Systems

2001-02-16 Thread William Montgomery


I have read your whitepapers very carefully and I believe that the
approach is feasable.  This looks like a great project, I would definitely
be interested in joining the effort.  

This approach appears to handle some of the weaknesses of the RTLinux
method; namely that a binary module can still contain the cli/sti
instructions and destroy the determinism.  In fact, even a user mode
program with root permissions can do the same.  The best example is 
some of the X servers.

One comment on implementation; you may have to filter some of the in/out
instructions to virtualize the timers.  Most operating systems will want
to control those to some extent.

Wm




RE: [rtl] Linux BootPrompt Question

2000-11-28 Thread William Montgomery


Based on your original posting, it may be a problem with your
lilo.conf file.  I'm not sure you can have two append statements,
try commenting out the other one and see if this cures the problem.
I think you can pass multiple arguments in a single append
statement.

Regards,

Wm

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




Re: [rtl] RTAI latency (Athlon 800 - XFree 4.0.1)

2000-11-22 Thread William Montgomery

Hi Erwin,

I have seen similar latencies with XFree servers when acceleration
is turned on.  The problem was traced to PCI bus activity and is not
really interrupt related.  Some X server acceleration uses a mode
of the PCI bridge which basically enables an infinite retry sequence.
A command is given to the video chip and then the status is read, the
chip does not respond right away and the PCI bus essentially hangs
while the PCI hardware retries the read until the video chip responds.

This is a particularly nasty featue of the PCI bus and can destroy
determinism in a system which requires real time response.  In some
X servers this PCI retry can be turned off while retaining other
acceleration features.

Regards,

Wm

On Tue, 21 Nov 2000, Erwin Rol wrote:

> Hey Paolo,
> 
> I don't see it "every" key press , i see it every enter/return key 
> press. Which maybe has nothing to do with the keypress , but with the 
> scrolling in the terminal window ?
> 
> As mentioned in my other mail it works normaly when i disable 
> acceleration of the video card. 
> 
> tonight i will do a serious stress test, to see if it is really stable 
> and stays under 50 usec. When that is successful, i will try with a 
> other videocard and see if thats causes problems too under XFree 4.0.1 
> or if it is just my video card that sucks (which it does :-)
> 
> 
> 
> an other question, is there anyway to figure out if it is caused by 
> "lockingup" the PCI-bus , without a logic-analizer or scoop ?
> 
> BTW who is eDwin ? :-)
> 
> - Erwin
> 
> 
> Paolo Mantegazza wrote:
> > 
> > [EMAIL PROTECTED] wrote:
> > >
> > >
> > > This is possible, however, I suspect that Edwin's problem is not with X.
> > > Before speculating too much, he should see if a big I/O load without X
> > > gets the same behavior.
> > >
> > 
> > As I told Edwin, I am not able to reproduce his problem on a PIII 350,
> > UP/MP,
> > by doing the same actions under X, with a looping cp/sync and a ping -f.
> > 
> > I tested just for 10 minutes or so with X 3.3.6. Since Edwin's problem
> > is deterministic, he sees it at every keypress, I think it should not be
> > a matter of waiting more time.
> > 
> > Ciao, Paolo.
> > -- [rtl] ---
> > To unsubscribe:
> > echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> > echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
> > ---
> > For more information on Real-Time Linux see:
> > http://www.rtlinux.org/rtlinux/
> -- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
> ---
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/rtlinux/
> 

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




[rtl] SMP irq affinity

2000-08-21 Thread William Montgomery


An SMP system with lots of PCI bus activity, can have serious
and sometimes unacceptable RT task jitter for high rate (3000 - 4000Hz)
tasks doing data acquisition.  Since the CPUs share the PCI bus, the
Linux kernel (running on one CPU) can interfere with RT deadlines
on the other CPU.  One way to minimize this is to force designated irqs to
be handled on a specified CPU.

I realize that the 2.3.x and 2.4pre kernels have this capability,
however I am stuck with 2.2.x.  Is there a way to enforce this behavior
in RTLinux?

Wm

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




Re: [rtl] Debugging RTL-Tasks

2000-08-17 Thread William Montgomery

Download RTLv2.3 from the rtlinux site - it has the debugging stuff in it.

On 17 Aug 2000 [EMAIL PROTECTED] wrote:

> 
> 
> Hi,
> 
> I'm working at the moment with RTL 2.2. Is there a chance to debug a
> RTL-task. I've read of a rtl_debug modul, but don't know where to find.
> 
> Thanks for any help.
> 
> Oliver
> 
> 
> 

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




Re: [rtl] debugging a Page Fault

2000-08-16 Thread William Montgomery


Thanks for the reply.

I agree with the analysis below.  I just wanted confirmation on the 
definition of "Page Fault (exception 14)".  I believe this means
a pointer has referenced an address which in _not_ in physical memory.
Is this correct?

Is there a way to look at the stack in gdb?
When I do a "backtrace" command the results look reasonable.
How can I examine the actual (raw) stack contents?
Also, I would like to see where the stack pointer is and how deep
I have gone into the stack.

On Wed, 16 Aug 2000, Norm Dresner wrote:

> If you're causing a page fault when you're returning from a function call,
> one possibility is that the function has overwritten the stack and that the
> place to which you "return" is not the place from which it was called but
> something way off in outer space -- hence a page fault.
> 
>   Norm
> 
> At 06:42 PM 8/16/2000 -0400, William Montgomery wrote:
> >
> >I have a large module which causes my machine to lockup
> >from which there is no escape but power off/on.  Thanks to the
> >great work by the RTLinux folks I am using the new rtl_debug
> >module and gdb to find this.  The dmesg produces:
> >
> >rtl_debug: exception 14 in rt_process (EIP=0xc80c63d0), thread id
> >0xc6e00600;
> >(re)start GDB to debug
> >
> >I am able to see the line this occurs at using gdb but this is just
> >pointing to a function return brace.  I see that this is a Page Fault
> >exception but I'm not sure what this means or what might be the cause.
> >
> >Any hints?
> >
> >Wm
> >
> >-- [rtl] ---
> >To unsubscribe:
> >echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> >echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
> >---
> >For more information on Real-Time Linux see:
> >http://www.rtlinux.org/rtlinux/
> >
> >
> 

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




[rtl] debugging a Page Fault

2000-08-16 Thread William Montgomery


I have a large module which causes my machine to lockup
from which there is no escape but power off/on.  Thanks to the
great work by the RTLinux folks I am using the new rtl_debug
module and gdb to find this.  The dmesg produces:

rtl_debug: exception 14 in rt_process (EIP=0xc80c63d0), thread id
0xc6e00600;
(re)start GDB to debug

I am able to see the line this occurs at using gdb but this is just
pointing to a function return brace.  I see that this is a Page Fault
exception but I'm not sure what this means or what might be the cause.

Any hints?

Wm

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




Re: [rtl] Soft Real Time

2000-07-11 Thread William Montgomery

Hi Bernhard,

Interesting comments on PCI bus latencies.
Do you (or anyone on this list) have any sample code or other
data on programming the PCI bridge chips in the way you describe?

Wm

On Sun, 25 Jun 2000, Bernhard Kuhn wrote:

> Herman Bruyninckx wrote:
> 
> > I have a dual Pentium III 700Mhz, and I wanted to investigate how it
> > compares to DSP performance, when everything can be kept in cache.
> 
> Keeping things in cache is only half of the way ... the bigger
> problem is to bother around with latencies caused by
> the pci-architecture ... with modern chip-sets, it´s hard to
> tell what exactly is going on ... several things have to
> be taken into account:
> 
> 1. CPU to Host-Bridge latency: you will have to disable caching and
>write combinig in case your I/O card is memory mapped.
>Even then, you have latencies when sharing the CPU-bus
>with another processor.
> 
> 2. Host-Bridge to PCI-Bus latency: you might disable the
>read/write fifo (usual depth: 64) of the Host-Bridge.
> 
> 3. you realy should disable PCI-Burst operations, which
>can by up to 64 cycles. Otherwise having, for example,
>five PCI-device, the arbitration could go up to 10 µs in
>this stage.
> 
> 4. Latencys caused be the I/O-Card itself
> 
> 
> If a worst case latency of about 20 µs are just fine for
> your application, then stay with RTL and standard settings.
> 
> Otherwise it´s going deep into details:
> 
> One solution could be the mentioned idea with the second
> OS on the second CPU.
> 
> Another method would be to disallow any kind of linux-kernel
> activities on the second processor. Some times ago,
> i took a look into the code of the kernel scheduler ...
> it should be feasabel to keep away user-space processes
> and kernel threads from the second processor by modifiying
> the code a little bit.
> Linux-Interrupts can be directed the the first CPU
> by simply reprograming the I/O-APIC, as far as i got it.
> So the second CPU should completly belongs to your
> RTL-application, that even could fit into the L1-Cache
> of the CPU.
> 
> If this didn´t scared you then go reading on:
> 
> Getting rid of the PCI-latencies is a little bit more
> difficult: You could use the three-wire APIC protocoll to
> attach a special I/O-Card directly onto the CPU.
> The maximum latency/jitter is less then one microsecond in
> this case, but then you have to bother around with
> a 100 MHz serial line, simulation a local APIC ...
> 
> Just a dream ...
> 
> Bernhard
> -- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
> ---
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/rtlinux/
> 

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




[rtl] RTAI-v1.3 tulip conflict

2000-06-06 Thread William Montgomery


I am having a problem with rtai-1.3 conflicting with the tulip network
driver.  The CPU is a dual PIII 700MHz with 128M RAM, the kernel is 2.2.15.
The network is fine after boot up - I can ping, rlogin, nfs and others.
As soon as I do ldmod (loading basic rtai modules) the network stops
responding.  This seems to be related to SMP only, I have a CPU from the
same manufacturer with same chipsets but single processor which works
fine with rtai-1.3.  I am including dmesg output below:

[..]
PPP line discipline registered.
PPP BSD Compression module registered
tulip.c:v0.91g-ppc 7/16/99 [EMAIL PROTECTED]
eth0: Digital DS21143 Tulip rev 65 at 0xec00, 00:10:6F:02:1F:4E, IRQ 19.
eth0:  EEPROM default media type Autosense.
eth0:  Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
eth0:  Index #1 - Media 10baseT-FD (#4) described by a 21142 Serial PHY (2) block.
eth0:  Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
eth0:  Index #3 - Media 100baseTx-FD (#5) described by a 21143 SYM PHY (4) block.
eth0: Using user-specified media 10baseT(forced).

=
Network is working fine...
./ldmod
=

 RT memory manager v0.2 Loaded. 


* STARTING THE REAL TIME SCHEDULER WITH NO LINUX *
* FP SUPPORT AND READY FOR A PERIODIC TIMER *
***<> LINUX TICK AT 120 (HZ) <>***
***<> CALIBRATED CPU FREQUENCY 698803742 (HZ) <>***
***<> CALIBRATED APIC_INTERRUPT-TO-SCHEDULER LATENCY 3001 (ns) <>***
***<> CALIBRATED ONE SHOT APIC SETUP TIME 499 (ns) <>***


* RTAI NEWLY MOUNTED (MOUNT COUNT 1) **

eth0: 21140 transmit timed out, status f06980c5, SIA 52ca 0001 fff8 
8ffd0008, resetting...
eth0: 21140 transmit timed out, status f06980c7, SIA 52ca 0001 fff8 
8ffd0008, resetting...
eth0: 21140 transmit timed out, status f06980c7, SIA 52ca 0001 fff8 
8ffd0008, resetting...

=
Network is now broken.

Anybody have ideas?

I have also tried Donald Becker's latest tulip driver v0.92 with same
results.  The tulip driver is compiled as a kernel module.
I can recover the network by doing:
  ifconfig eth0 down
  rmmod tulip
  remod
  insmod tulip
  /etc/rc.d/rc.inet1

Suggestions welcome.

William Montgomery

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/




Re: [rtl] mbuff_attach for non-root user? (mbuff-0.6.5 relesed).

2000-02-23 Thread William Montgomery


On Wed, 23 Feb 2000, Tomasz Motylewski wrote:

> Are there any wishes for 0.6 and 0.7 series? Some documentation I have
> missed to include?
> 
Could you provide a mechanism for allocating memory suitable for DMA
(i.e. physically consecutive addresses)?

Regards,

William Montgomery

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl " | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/