Clarification reg eviction rules when no buffers are available #9980
Replies: 2 comments
-
@sarveshkumarv3 There's always potential to enhance buffer management logic, and similar ideas have been explored previously. More often than not, these changes introduce complexities that outweigh the benefits. However, if you have new ideas and are willing to dedicate time and resources, we welcome contributions to improve OpenThread. |
Beta Was this translation helpful? Give feedback.
-
thanks @abtink . Can you please help to review this PR where I am trying to evict coap pending request, if the send queue is empty Added another PR to clear the eid-cache for testing purposes, that was used for testing the above changes |
Beta Was this translation helpful? Give feedback.
-
I observe that the below HC frames/fragments are dropped when there are no buffers available
00:00:32.567 [I] Message-------: No available message buffer
00:00:32.567 [N] MeshForwarder-: Dropping rx lowpan HC frame, error:NoBufs, len:47, src:0xe800, dst:0xffff, sec:yes
00:00:32.567 [I] Message-------: No available message buffer
00:01:05.133 [N] MeshForwarder-: Dropping rx frag frame, error:NoBufs, len:97, src:0xb000, dst:0x7400, tag:11563, offset:0, dglen:1232, sec:yes
Similarly, send of CoAP retransmissions are failed
00:01:17.026 [I] Message-------: No available message buffer
00:01:17.026 [W] Coap----------: Failed to send copy: NoBufs
Shouldn't these result in eviction of older messages to enable receive/send?
Also eviction logic seems to drop from the send Queue (IP6 and MeshForwarder) only. Shouldn't the same be applied to the other queues (if the send queue is empty) (CoAP queues, MPL queues, MLE queue)?
Beta Was this translation helpful? Give feedback.
All reactions