Sorry, but I think that my emails posted november 08,  2001 were lost, so I
post it again today !!!

----- Original Message -----
From: "G�rard LASSAILLY" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, November 08, 2001 7:49 AM
Subject: Re: [rtl] use of RT Fifo leads to IRQ be lost (RTL 2.2)


> Many thanks for your excellent reply.
>
> In my test apps, ISR are not writing in RT FIFO. It's a periodic thread.
> I volontary make "big" write in RT FIFO because I think that under RTL2.2
> the use of RT FIFO mask all IRQ.
> I have look at RT FIFO code from RTL 3.1, it seem that change have been
made
> to "spin lock" only access to FIFO and not to mask interrupt during all
the
> time of write (or read).
> I can't change now from RTL2.2 to RTL3.1, so I search somebody who know if
> what I say is true (RTL2.2 versus RTL3.1).
>
> I know that if I want to transfert lot of data between RT LINUX and LINUX,
I
> need to use shared memory and not RT FIFO. But, I prefer RT FIFO for small
> transfert (cmd, etc ...), ONLY if that don't change IRQ latency in such
> proportion I observed with RTL2.2.
> I want to be sure that RTL3.1 solve this pb before migrating from RTL2.2
to
> RTL3.1.
>
> G�rard
>
>
> ----- Original Message -----
> From: "Dresner, Norman A." <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Cc: <[EMAIL PROTECTED]>
> Sent: Tuesday, November 06, 2001 3:54 PM
> Subject: RE: [rtl] use of RT Fifo leads to IRQ be lost RTL 2.2
>
>
> > While you might not want a real-time FIFO to interfere with IRQ latency,
> > consider that the RT-kernel has to copy the a large amount of data from
> your
> > buffer into its buffer in a way that guarantees the atomicity of the
> > operation -- most likely , with interrupts disabled.  Similarly the
> > operation of reading it out of the FIFO at the user-task's end requires
> the
> > full overhead of a system call and then the copy of an equal amount of
> data
> > from the FIFO's internal buffer into the user's buffer, again with some
> > guarantee of atomicity.  While there might be a similar number of copy
> > operations when your ISR writes it into shared memory and the user reads
> it
> > out, the time when the interrupts are disabled can be reduced to the
time
> to
> > acquire and release some sort of mutex which controls the simulated FIFO
> in
> > shared memory; once the pointers are acquired atomically, memory
transfer
> > can proceed as a normal operation -- and it's possible that the
user-task
> > doesn't need to copy the data out of shared memory but can use it in
> place,
> > thus saving even more CPU bandwidth
> >
> > Norm
> >
> > > -----Original Message-----
> > > From: G�rard LASSAILLY [SMTP:[EMAIL PROTECTED]]
> > > Sent: Thursday, November 01, 2001 7:49 AM
> > > To: [EMAIL PROTECTED]
> > > Subject: Re: [rtl] use of RT Fifo leads to IRQ be lost RTL 2.2
> > >
> > > Thanks for your reply.
> > >
> > > I also think that using shared memory is THE solution to move large
> block
> > > of
> > > data between user space and RT LINUX.
> > >
> > > But, I think that the use of RT Fifo should not affect IRQ latency on
a
> > > Real
> > > Time OS (a can see on my oscilloscope IRQ latency > 1ms !!! when i'm
> using
> > > rtl_put() with 1,5 Mbytes under RTL2.2 / kernel 2.2.14 / Pentium 266
> MMX).
> > >
> > > Somebody know if change have been made on RT FIFO code ( RTL 2.2 ->
RTL
> > > 3.1)
> > > to reduce IRQ latency?
> > >
> > > G�rard
> > >
> > > ----- Original Message -----
> > > From: "Norm Dresner" <[EMAIL PROTECTED]>
> > > To: <[EMAIL PROTECTED]>
> > > Sent: Wednesday, October 31, 2001 2:51 AM
> > > Subject: Re: [rtl] use of RT Fifo leads to IRQ be lost RTL 2.2
> > >
> > >
> > > > This doesn't seem like a good design to me.  Why can't you
> > > > write the data to shared memory (very fast) and just send a
> > > > pointer through the FIFO telling the user-task where it can
> > > > find the data.
> > > >
> > > >     Norm
> > > >
> > > > ----- Original Message -----
> > > > From: G�rard LASSAILLY
> > > > To: [EMAIL PROTECTED]
> > > > Sent: Tuesday, October 30, 2001 4:47 PM
> > > > Subject: [rtl] use of RT Fifo leads to IRQ be lost RTL 2.2
> > > >
> > > >
> > > > I'm using 4 RT Fifo under RT Linux 2.2.
> > > > I write blocs of 1.4 Mbytes in  RT FIFO (1.4 Mbytes by
> > > > rtf_put() ).
> > > > This write in RT Fifo is repeat 25 times by second.
> > > >
> > > > During this, IRQ are lost or delayed.
> > > >
> > > > I don't use RT Fifo in ISR but only to communicate between
> > > > RT task and user task under LINUX.
> > > >
> > > > I think that IRQ are masked during rtf_put() during a long
> > > > time.
> > > >
> > > > Some knowledge please ?
> > > > Do you know if RT Linux 3.0 or 3.1 workaround this
> > > > probleme?
> > > >
> > > > Thanks for your reply.
>
>

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

Reply via email to