On 2017-12-06 09:15, Stéphane Ancelot wrote:
> Hi,
> 
> I have done an application that does this thing.
> 
> the application manages a stack of frames with priorities. high
> priorities frame are sent at synchronised time (each ms, synchronised by
> external clock) and then if there is enough remaining time, low priority
> frames. (ethercat bus application)
> 
> The job is not done in driver, but in realtime application process.
> 
> I have  2 stacks => Input / ouput packets
> 
> I managed to link this task with an internal software switch that
> permits to embed ethernet packets in ethercat (EoE)
> 
> From my viewpoint, I don't understand the added value doing this on
> driver side ?

In general, it helps a lot in such discussions to have some basic
benchmark numbers for the existing the new pattern at hand, even if the
latter is just a proof-of-concept hack.

Jan

> 
> Regards,
> 
> S.Ancelot
> 
> 
> Le 05/12/2017 à 15:38, Lange Norbert a écrit :
>> Hello,
>>
>> I would like to involve the RTDM Maintainers for discussing an
>> addition to the RTDM drivermodel.
>> This work would be done by Phillipe Gerum as part of a contract, he is
>> also better suited to outline the necessary changes,
>> should nothing stand against the proposal itself.
>>
>> - Problem description
>>
>> To be compatible with existing software, Ethernet packets will be
>> polled at synchronized events.
>> The application ideally would give the kernel/rtnet stack the
>> responsibility and freedom to do this in an efficient manner,
>> and be able to directly express the intend to poll all currently
>> available packets.
>>
>> Similarly, but less time-critical thus important, sending multiple
>> packets in a burst would be a requirement.
>>
>> Lastly Linux has this functionality in form of recvmmsg and sendmmsg,
>> which would be a good fit in terms of existing interface, atleast if
>> used in non-blocking mode.
>>
>> - Hypothetical Proposal
>>
>> Adding the necessary interfaces to RTDM and RTNet
>> to allow non-blocking bulk receive/send, and offering functions not
>> unlike the mentioned recvmmsg and sendmmsg.
>>
>> - Potential issues
>>
>> Copying of multiple packets would be done in RTDM context, potentially
>> blocking resources for each packet or the whole duration.
>> For our usecase it would for example not matter if the involved
>> ethernet driver instance is not able to handle IRQs during this time,
>> but it should not significantly affect worst-case task switch times in
>> general, or block reception on other physical interfaces (Ethernet or
>> otherwise).
>>
>> recvmmsg and timeouts (blocking) are likely to be problematic, but
>> blocking mode is not required or wanted.
>>
>> - Open questions to the RTDM maintainers
>>
>> What would be the requirements of adding similar functionality to
>> recvmmsg to RTNet / RTDM,
>> and would there be any caveats that would prohibit addition from side
>> of the RTDM maintainers?
>>
>> Other than that, a mmap based approach is also an option, but that's a
>> somewhat more involved solution for both kernel and userspace as far
>> as I understood.
>>
>> Kind regards
>>
>> Norbert Lange
>>
>>
>> #####################################################################################
>>
>> This message and any attachments are solely for the use of the
>> intended recipients. They may contain privileged and/or confidential
>> information or other information protected from disclosure. If you are
>> not an intended recipient, you are hereby notified that you received
>> this email in error and that any review, dissemination, distribution
>> or copying of this email and any attachment is strictly prohibited. If
>> you have received this email in error, please contact the sender and
>> delete the message and any attachment from your system.
>> Thank You.
>>    ANDRITZ HYDRO GmbH
>>    Rechtsform/ Legal form: Gesellschaft mit beschr?nkter Haftung /
>> Corporation
>>    Firmensitz/ Registered seat: Wien
>>    Firmenbuchgericht/ Court of registry: Handelsgericht Wien
>>    Firmenbuchnummer/ Company registration: FN 61833 g
>>    DVR: 0605077
>>    UID-Nr.: ATU14756806
>> #####################################################################################
>>
>>
>>
>> _______________________________________________
>> Xenomai mailing list
>> Xenomai@xenomai.org
>> https://xenomai.org/mailman/listinfo/xenomai
> 


_______________________________________________
Xenomai mailing list
Xenomai@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai

Reply via email to