Skip to content

[action] [PR:1859] vpp: Ignore NO_SUCH_ENTRY in ip_neigh_delete#124

Merged
mssonicbld merged 1 commit into
Azure:202603from
mssonicbld:cherry/msft-202603/1859
Apr 21, 2026
Merged

[action] [PR:1859] vpp: Ignore NO_SUCH_ENTRY in ip_neigh_delete#124
mssonicbld merged 1 commit into
Azure:202603from
mssonicbld:cherry/msft-202603/1859

Conversation

@mssonicbld

Copy link
Copy Markdown
Collaborator

why

when interface is shut, vpp automatically removes the dynamic nexthops over the interface. orchagent also deletes the nexthops over the interface. When vpp calls vl_api_ip_neighbor_add_del_t api to delete the neighbours, vpp returns NO_SUCH_ENTRY. saivpp should ignore the error.

what this PR does

  1. move all the log messages from handler to the corresponding API calls. This is because the handler doesn't have enough context (delete or add) to ignore the error.
  2. Ignore NO_SUCH_ENTRY for delete operations.
  3. Ignore ROUTE_ENTRY update if packet action is SAI_PACKET_ACTION_FORWARD but missing SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID. This is possible in bulk_set like below. See the first entry.
20.07:04:19.106477|S|SAI_OBJECT_TYPE_ROUTE_ENTRY||{"dest":"0.0.0.0/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_PACKET_ACTION=SAI_PACKET_ACTION_FORWARD||{"dest":"0.0.0.0/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID=oid:0x40000000000f4||{"dest":"::/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_PACKET_ACTION=SAI_PACKET_ACTION_FORWARD||{"dest":"::/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID=oid:0x40000000000f5

Signed-off-by: Sonic Build Admin sonicbld@microsoft.com

### why
when interface is shut, vpp automatically removes the dynamic nexthops over the interface. orchagent also deletes the nexthops over the interface. When vpp calls vl_api_ip_neighbor_add_del_t api to delete the neighbours, vpp returns NO_SUCH_ENTRY. saivpp should ignore the error.

### what this PR does
1. move all the log messages from handler to the corresponding API calls. This is because the handler doesn't have enough context (delete or add) to ignore the error.
2. Ignore NO_SUCH_ENTRY for delete operations.
3. Ignore ROUTE_ENTRY update if packet action is SAI_PACKET_ACTION_FORWARD but missing SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID. This is possible in bulk_set like below. See the first entry.
```
20.07:04:19.106477|S|SAI_OBJECT_TYPE_ROUTE_ENTRY||{"dest":"0.0.0.0/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_PACKET_ACTION=SAI_PACKET_ACTION_FORWARD||{"dest":"0.0.0.0/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID=oid:0x40000000000f4||{"dest":"::/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_PACKET_ACTION=SAI_PACKET_ACTION_FORWARD||{"dest":"::/0","switch_id":"oid:0x21000000000000","vr":"oid:0x3000000000002"}|SAI_ROUTE_ENTRY_ATTR_NEXT_HOP_ID=oid:0x40000000000f5
```

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
@mssonicbld

Copy link
Copy Markdown
Collaborator Author

Original PR: sonic-net/sonic-sairedis#1859

@mssonicbld

Copy link
Copy Markdown
Collaborator Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@mssonicbld
mssonicbld merged commit c26b2d1 into Azure:202603 Apr 21, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant