From 82a1892d34c8e0055dcae0a8630c5f4f878cfe9c Mon Sep 17 00:00:00 2001 From: Archana Shinde Date: Mon, 24 Jun 2024 19:37:24 -0700 Subject: [PATCH] agent: Add additional info while returning errors for update_interface This should provide additional context for errors while updating network interface. Signed-off-by: Archana Shinde --- src/agent/src/netlink.rs | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/agent/src/netlink.rs b/src/agent/src/netlink.rs index bb5be32f58..6bbbab91f1 100644 --- a/src/agent/src/netlink.rs +++ b/src/agent/src/netlink.rs @@ -134,14 +134,33 @@ impl Handle { .arp(iface.raw_flags & libc::IFF_NOARP as u32 == 0) .up() .execute() - .await?; + .await + .map_err(|err| { + anyhow!( + "Failure in LinkSetRequest for interface {}: {}", + iface.name.as_str(), + err + ) + })?; // swap the updated iface's name. if let Some(nlink) = new_link { let mut request = self.handle.link().set(nlink.index()); request.message_mut().header = nlink.header.clone(); - request.name(link.name()).up().execute().await?; + request + .name(link.name()) + .up() + .execute() + .await + .map_err(|err| { + anyhow!( + "Error swapping back interface name {} to {}: {}", + nlink.name().as_str(), + link.name(), + err + ) + })?; } Ok(())