Skip to content

Commit da0003d

Browse files
committed
Ignore any error returned from ip neigh flush
In the test_po_update test case, one of the things done there is to remove an IP address from a port channel interface. As part of that, the current handling for that issues a `ip neigh flush dev ...` command, added in sonic-net/sonic-buildimage#606, presumably to remove old neighbor entries that would no longer be valid. I would think that the kernel would automatically do this, but maybe it didn't back then; I'm not sure if there's been a behavior change here since then. In some cases, this command is returning an error, saying "Failed to send flush request: No such file or directory". I'm not sure why this is; maybe when iproute2 is going through the list of neighbors, some neighbor entry was there, but then by the time it issued the deletion request, that neighbor entry was removed by the kernel since the IP address was removed. Either way, I don't believe a failure here is critical. Therefore, ignore any failures from running this command. Signed-off-by: Saikrishna Arcot <[email protected]>
1 parent 07d6d27 commit da0003d

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

config/main.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -4702,7 +4702,7 @@ def remove(ctx, interface_name, ip_addr):
47024702
command = ['sudo', 'ip', 'netns', 'exec', str(ctx.obj['namespace']), 'ip', 'neigh', 'flush', 'dev', str(interface_name), str(ip_address)]
47034703
else:
47044704
command = ['ip', 'neigh', 'flush', 'dev', str(interface_name), str(ip_address)]
4705-
clicommon.run_command(command)
4705+
clicommon.run_command(command, ignore_error=True)
47064706

47074707
#
47084708
# 'loopback-action' subcommand

0 commit comments

Comments
 (0)