>>>>> "yodaiken" == yodaiken <[EMAIL PROTECTED]> writes:
yodaiken> On Mon, Jan 24, 2000 at 10:55:00AM -0500, Paul Koning
yodaiken> wrote:
>> A related point: the rtf_get and rtf_put operations lock out
>> interrupts for the full duration of the transfer. You need that
>> to get mode (3). I expect there are plenty of fifos that don't
>> need this, they only need (1). You pay an interrupt latency
>> penalty you don't need in that case. How about another set of
>> calls (rtf_get_single?) or a mode setting to select (1) and avoid
>> most or all of the interrupt disabling?
yodaiken> The question is whether the time spent during cli is
yodaiken> significant and I think it is not, but perhaps I have not
yodaiken> seen something.
Well, the memcpy is done during cli, which seems like a bad idea.
>> Finally, I think I could use some additional rtfifo services,
>> specifically (a) a way to query how much is currently in the fifo
>> and how much space is left, so I can avoid doing an rtf_get or
>> rtf_put that will do a partial transfer, (b) a "flush the fifo"
>> operation.
>>
>> Reason for (a) is: if you transfer structured data via a fifo
>> (similar to the "frank" sample application) then you don't want to
>> do an rtf_get and get less than sizeof (your_struct) coming back.
yodaiken> One useful mode would be a "mailbox" mode where each input
yodaiken> output will be in multiples of message-size. That would
yodaiken> avoid the extra querying in the user of the fifo.
yodaiken> IF you can add that efficiently, I'd be happy to take the
yodaiken> patch.
Ok. Which approach do you prefer, an rtfifo mode, or a different API
call? The latter would be more efficient, clearly there can't be a
performance penalty on the existing API calls that way.
paul
--- [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/~rtlinux/