-
Notifications
You must be signed in to change notification settings - Fork 50
Open
Description
I'm implementing a new device driver. When implementing the ICanIface send method, is the expected behavior to:
- Send immediately if possible. If not possible, block until able to send or tx_deadline, whichever occurs first. Return 1 if able to send or error (i.e. -1) if tx_deadline passes.
- Send immediately if possible. If not possible, store message in a buffer and return 1 if there is room in the buffer or 0 if there is not room in the buffer. When the message pops off the buffer, do not send if tx_deadline has elapsed.
It seemed, from the comments in the code, that behavior 2 is expected. However, the library would not have feedback that items are sitting in the buffer too long and being discarded. This behavior seems especially likely if the buffer is large and the ICanDriver select method is always returning ICanIface availability (since the TX and RX buffers are large).
Also tagging @pavel-kirienko, since he may have more insight on the intent here.
Thanks!
Brian
Metadata
Metadata
Assignees
Labels
No labels