All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH iproute2 v2] route: label externally offloaded routes
@ 2015-03-15 19:31 sfeldma
  2015-03-16 13:18 ` Andy Gospodarek
  0 siblings, 1 reply; 10+ messages in thread
From: sfeldma @ 2015-03-15 19:31 UTC (permalink / raw)
  To: netdev, stephen; +Cc: jiri, roopa, gospo, tarbal, linville

From: Scott Feldman <sfeldma@gmail.com>

v2:

No clear outcome on polling for choices of "external", "offload", "hw", or
"hardware".  Andy's concern about "external" being confusing for users is
valid.  So, I'm making executive decision to use "external_offload" for label,
as suggested by Jiri.

v1:

On ip route print dump, label externally offloaded routes with "external".
Offloaded routes are flagged with RTNH_F_EXTERNAL, a recent additon to
net-next.  For example:

$ ip route
default via 192.168.0.2 dev eth0
11.0.0.0/30 dev swp1  proto kernel  scope link  src 11.0.0.2 external
11.0.0.4/30 via 11.0.0.1 dev swp1  proto zebra  metric 20 external
11.0.0.8/30 dev swp2  proto kernel  scope link  src 11.0.0.10 external
11.0.0.12/30 via 11.0.0.9 dev swp2  proto zebra  metric 20 external
12.0.0.2  proto zebra  metric 30 external
        nexthop via 11.0.0.1  dev swp1 weight 1
        nexthop via 11.0.0.9  dev swp2 weight 1
12.0.0.3 via 11.0.0.1 dev swp1  proto zebra  metric 20 external
12.0.0.4 via 11.0.0.9 dev swp2  proto zebra  metric 20 external
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.15

Signed-off-by: Scott Feldman <sfeldma@gmail.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>
---
 include/linux/rtnetlink.h |    1 +
 ip/iproute.c              |    2 ++
 2 files changed, 3 insertions(+)

diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h
index 3eb7810..c74773c 100644
--- a/include/linux/rtnetlink.h
+++ b/include/linux/rtnetlink.h
@@ -332,6 +332,7 @@ struct rtnexthop {
 #define RTNH_F_DEAD		1	/* Nexthop is dead (used by multipath)	*/
 #define RTNH_F_PERVASIVE	2	/* Do recursive gateway lookup	*/
 #define RTNH_F_ONLINK		4	/* Gateway is forced on link	*/
+#define RTNH_F_EXTERNAL		8	/* Route installed externally   */
 
 /* Macros to handle hexthops */
 
diff --git a/ip/iproute.c b/ip/iproute.c
index b32025f..ffdf4f2 100644
--- a/ip/iproute.c
+++ b/ip/iproute.c
@@ -412,6 +412,8 @@ int print_route(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg)
 		fprintf(fp, "onlink ");
 	if (r->rtm_flags & RTNH_F_PERVASIVE)
 		fprintf(fp, "pervasive ");
+	if (r->rtm_flags & RTNH_F_EXTERNAL)
+		fprintf(fp, "external_offload ");
 	if (r->rtm_flags & RTM_F_NOTIFY)
 		fprintf(fp, "notify ");
 	if (tb[RTA_MARK]) {
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2015-03-25  0:33 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-15 19:31 [PATCH iproute2 v2] route: label externally offloaded routes sfeldma
2015-03-16 13:18 ` Andy Gospodarek
2015-03-16 13:46   ` roopa
2015-03-17  4:14   ` Scott Feldman
2015-03-17  7:01     ` Jiri Pirko
2015-03-17 13:24     ` Andy Gospodarek
2015-03-17 13:49       ` Jiri Pirko
2015-03-17 19:15         ` Andy Gospodarek
2015-03-24 22:51           ` Stephen Hemminger
2015-03-25  0:33             ` Andy Gospodarek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.