Bluetooth: Mesh: Skip local messages in rx
Local messages are already enqueued for the LPN in the tx path, and don't have to be added again in the rx path. Signed-off-by: Trond Einar Snekvik <Trond.Einar.Snekvik@nordicsemi.no>
This commit is contained in:
parent
a7cf776d52
commit
9fdefc7d73
1 changed files with 8 additions and 0 deletions
|
@ -1274,6 +1274,14 @@ static void friend_lpn_enqueue_rx(struct bt_mesh_friend *frnd,
|
||||||
struct friend_pdu_info info;
|
struct friend_pdu_info info;
|
||||||
struct net_buf *buf;
|
struct net_buf *buf;
|
||||||
|
|
||||||
|
/* Because of network loopback, tx packets will also be passed into
|
||||||
|
* this rx function. These packets have already been added to the
|
||||||
|
* queue, and should be ignored.
|
||||||
|
*/
|
||||||
|
if (bt_mesh_elem_find(rx->ctx.addr)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
BT_DBG("LPN 0x%04x queue_size %u", frnd->lpn, frnd->queue_size);
|
BT_DBG("LPN 0x%04x queue_size %u", frnd->lpn, frnd->queue_size);
|
||||||
|
|
||||||
if (type == BT_MESH_FRIEND_PDU_SINGLE && seq_auth) {
|
if (type == BT_MESH_FRIEND_PDU_SINGLE && seq_auth) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue