lldpad/lldpad-0.9.41-lldpad-make-debug-messages-from-netlink-path-helpful.patch
2011-04-21 09:10:21 +02:00

161 lines
4.6 KiB
Diff

From e8c85404d362aa612b21159dc2b7281e37c6346f Mon Sep 17 00:00:00 2001
From: Jens Osterkamp <jens@linux.vnet.ibm.com>
Date: Thu, 7 Apr 2011 13:37:42 -0700
Subject: [PATCH 51/51] lldpad: make debug messages from netlink path helpful
The debug messages for received netlink messages e.g. for device changes
have been mostly empty so far.
This patch corrects this.
Signed-off-by: Jens Osterkamp <jens@linux.vnet.ibm.com>
Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Signed-off-by: Petr Sabata <psabata@redhat.com>
---
event_iface.c | 96 +++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 77 insertions(+), 19 deletions(-)
diff --git a/event_iface.c b/event_iface.c
index bdf9095..99501c2 100644
--- a/event_iface.c
+++ b/event_iface.c
@@ -90,9 +90,6 @@ static struct nla_policy ifla_port_policy[IFLA_PORT_MAX + 1] =
static void event_if_decode_rta(int type, struct rtattr *rta, int *ls, char *d)
{
-
- LLDPAD_DBG(" rta_type =\n", rta->rta_len);
-
switch (type) {
case IFLA_ADDRESS:
LLDPAD_DBG(" IFLA_ADDRESS\n");
@@ -100,22 +97,83 @@ static void event_if_decode_rta(int type, struct rtattr *rta, int *ls, char *d)
case IFLA_BROADCAST:
LLDPAD_DBG(" IFLA_BROADCAST\n");
break;
+ case IFLA_IFNAME:
+ strncpy(d, (char *)RTA_DATA(rta), IFNAMSIZ);
+ LLDPAD_DBG(" IFLA_IFNAME\n");
+ LLDPAD_DBG(" device name is %s\n", d);
+ break;
+ case IFLA_MTU:
+ LLDPAD_DBG(" IFLA_MTU\n");
+ break;
+ case IFLA_LINK:
+ LLDPAD_DBG(" IFLA_LINK\n");
+ break;
+ case IFLA_QDISC:
+ LLDPAD_DBG(" IFLA_QDISC\n");
+ break;
+ case IFLA_STATS:
+ LLDPAD_DBG(" IFLA_STATS\n");
+ break;
+ case IFLA_COST:
+ LLDPAD_DBG(" IFLA_COST\n");
+ break;
+ case IFLA_PRIORITY:
+ LLDPAD_DBG(" IFLA_PRIORITY\n");
+ break;
+ case IFLA_MASTER:
+ LLDPAD_DBG(" IFLA_MASTER\n");
+ break;
+ case IFLA_WIRELESS:
+ LLDPAD_DBG(" IFLA_WIRELESS\n");
+ break;
+ case IFLA_PROTINFO:
+ LLDPAD_DBG(" IFLA_PROTINFO\n");
+ break;
+ case IFLA_TXQLEN:
+ LLDPAD_DBG(" IFLA_TXQLEN\n");
+ break;
+ case IFLA_MAP:
+ LLDPAD_DBG(" IFLA_MAP\n");
+ break;
+ case IFLA_WEIGHT:
+ LLDPAD_DBG(" IFLA_WEIGHT\n");
+ break;
case IFLA_OPERSTATE:
- LLDPAD_DBG(" IFLA_OPERSTATE \n", type);
+ LLDPAD_DBG(" IFLA_OPERSTATE\n");
*ls = (*((int *)RTA_DATA(rta)));
+ LLDPAD_DBG(" OPERSTATE = 0x%02x\n", *ls);
break;
case IFLA_LINKMODE:
- LLDPAD_DBG(" IFLA_LINKMODE \n", type);
- LLDPAD_DBG(" LINKMODE = \n", (*((int *)RTA_DATA(rta)))?
+ LLDPAD_DBG(" IFLA_LINKMODE\n");
+ LLDPAD_DBG(" LINKMODE = %s\n", (*((int *)RTA_DATA(rta)))?
"IF_LINK_MODE_DORMANT": "IF_LINK_MODE_DEFAULT");
break;
- case IFLA_IFNAME:
- strncpy(d, (char *)RTA_DATA(rta), IFNAMSIZ);
- LLDPAD_DBG(" IFLA_IFNAME\n");
- LLDPAD_DBG(" device name is \n", d);
+ case IFLA_LINKINFO:
+ LLDPAD_DBG(" IFLA_LINKINFO\n");
+ break;
+ case IFLA_NET_NS_PID:
+ LLDPAD_DBG(" IFLA_NET_NS_PID\n");
+ break;
+ case IFLA_IFALIAS:
+ LLDPAD_DBG(" IFLA_IFALIAS\n");
+ break;
+ case IFLA_NUM_VF:
+ LLDPAD_DBG(" IFLA_NUMVF\n");
+ break;
+ case IFLA_VFINFO_LIST:
+ LLDPAD_DBG(" IFLA_VFINFO_LIST\n");
+ break;
+ case IFLA_STATS64:
+ LLDPAD_DBG(" IFLA_STATS64\n");
+ break;
+ case IFLA_VF_PORTS:
+ LLDPAD_DBG(" IFLA_VF_PORTS\n");
+ break;
+ case IFLA_PORT_SELF:
+ LLDPAD_DBG(" IFLA_PORT_SELF\n");
break;
default:
- LLDPAD_DBG(" unknown type : \n", type);
+ LLDPAD_DBG(" unknown type : 0x%02x\n", type);
break;
}
}
@@ -175,16 +233,16 @@ static void event_if_decode_nlmsg(int route_type, void *data, int len)
case RTM_DELLINK:
case RTM_SETLINK:
case RTM_GETLINK:
- LLDPAD_DBG(" IFINFOMSG\n");
- LLDPAD_DBG(" ifi_family = \n",
+ LLDPAD_DBG(" IFINFOMSG\n");
+ LLDPAD_DBG(" ifi_family = 0x%02x\n",
((struct ifinfomsg *)data)->ifi_family);
- LLDPAD_DBG(" ifi_type = \n",
+ LLDPAD_DBG(" ifi_type = 0x%x\n",
((struct ifinfomsg *)data)->ifi_type);
- LLDPAD_DBG(" ifi_index = \n",
+ LLDPAD_DBG(" ifi_index = %i\n",
((struct ifinfomsg *)data)->ifi_index);
- LLDPAD_DBG(" ifi_flags = \n",
+ LLDPAD_DBG(" ifi_flags = 0x%04x\n",
((struct ifinfomsg *)data)->ifi_flags);
- LLDPAD_DBG(" ifi_change = \n",
+ LLDPAD_DBG(" ifi_change = 0x%04x\n",
((struct ifinfomsg *)data)->ifi_change);
/* print attributes */
@@ -197,8 +255,8 @@ static void event_if_decode_nlmsg(int route_type, void *data, int len)
rta = RTA_NEXT(rta, attrlen);
}
- LLDPAD_DBG("link status: \n", link_status);
- LLDPAD_DBG("device name: \n", device_name);
+ LLDPAD_DBG(" link status: %i\n", link_status);
+ LLDPAD_DBG(" device name: %s\n", device_name);
switch (link_status) {
case IF_OPER_DOWN:
--
1.7.4.4