From patchwork Sun Oct 4 12:23:32 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nikolay Aleksandrov X-Patchwork-Id: 526121 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id E9C011402B6 for ; Sun, 4 Oct 2015 23:25:42 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751574AbbJDMYU (ORCPT ); Sun, 4 Oct 2015 08:24:20 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:34261 "EHLO mail-wi0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751469AbbJDMYP (ORCPT ); Sun, 4 Oct 2015 08:24:15 -0400 Received: by wicfx3 with SMTP id fx3so85294239wic.1 for ; Sun, 04 Oct 2015 05:24:14 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=jO/1NKq2+HiUrEdz5o9zdMWJPz/0Fa46UDQ1lx+mCRM=; b=WekMm0KlBvUg+iYnXX2Dhnw2HEXm4WYQXTE/kIrP7IPHv2J2hKvO3okLqz1pkUN0wQ mn/VaBv9Q95jIxIFi1/Uj3yobdZhMhosMblc/dC8o4R+ZKbgxzwnHpzlE6YupFyu7XHx UQs53BJHoTW95+TVlPua6r1F+Txdkn8yehihTe9dec5ACEyrVdDOZQchszF44tySTF9D lB8/ouoZAIWR7sgRqlx15I0T1NIuRz9W4OggSfy7knIFwViowo2t/nxaNj4fCpdbydlM VXqKIEDXo7C6xiUOq32vEY+yj4iWv8xwvy2zC7LceZPeD8huSnjGL8lJX6i6hn3PnbMn qQQQ== X-Gm-Message-State: ALoCoQktuf38oKYm2kI1TIC3E0mq7dhIfevtU6dAfHudyiT07Iw/dHtutr1kmI/Sc/2CGASo/5mW X-Received: by 10.194.172.233 with SMTP id bf9mr25167499wjc.107.1443961454473; Sun, 04 Oct 2015 05:24:14 -0700 (PDT) Received: from debil.localdomain (ip4-62-4-104-109.cust.nbox.cz. [62.4.104.109]) by smtp.gmail.com with ESMTPSA id ki7sm21369608wjc.28.2015.10.04.05.24.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 04 Oct 2015 05:24:14 -0700 (PDT) From: Nikolay Aleksandrov To: netdev@vger.kernel.org Cc: roopa@cumulusnetworks.com, davem@davemloft.net, stephen@networkplumber.org, bridge@lists.linux-foundation.org, shm@cumulusnetworks.com, Nikolay Aleksandrov Subject: [PATCH net-next 05/20] bridge: netlink: export root path cost Date: Sun, 4 Oct 2015 14:23:32 +0200 Message-Id: <1443961427-15085-6-git-send-email-razor@blackwall.org> X-Mailer: git-send-email 2.4.3 In-Reply-To: <1443961427-15085-1-git-send-email-razor@blackwall.org> References: <1443961427-15085-1-git-send-email-razor@blackwall.org> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Nikolay Aleksandrov Add IFLA_BR_ROOT_PATH_COST and export it via netlink. Signed-off-by: Nikolay Aleksandrov --- include/uapi/linux/if_link.h | 1 + net/bridge/br_netlink.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h index 172268a5767d..7d7236d143fb 100644 --- a/include/uapi/linux/if_link.h +++ b/include/uapi/linux/if_link.h @@ -236,6 +236,7 @@ enum { IFLA_BR_ROOT_ID, IFLA_BR_BRIDGE_ID, IFLA_BR_ROOT_PORT, + IFLA_BR_ROOT_PATH_COST, __IFLA_BR_MAX, }; diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c index 652db1ca0acc..cd0488b689d4 100644 --- a/net/bridge/br_netlink.c +++ b/net/bridge/br_netlink.c @@ -857,6 +857,7 @@ static size_t br_get_size(const struct net_device *brdev) nla_total_size(sizeof(struct ifla_bridge_id)) + /* IFLA_BR_ROOT_ID */ nla_total_size(sizeof(struct ifla_bridge_id)) + /* IFLA_BR_BRIDGE_ID */ nla_total_size(sizeof(u16)) + /* IFLA_BR_ROOT_PORT */ + nla_total_size(sizeof(u32)) + /* IFLA_BR_ROOT_PATH_COST */ 0; } @@ -890,7 +891,8 @@ static int br_fill_info(struct sk_buff *skb, const struct net_device *brdev) nla_put_u16(skb, IFLA_BR_GROUP_FWD_MASK, group_fwd_mask) || nla_put(skb, IFLA_BR_ROOT_ID, sizeof(root_id), &root_id) || nla_put(skb, IFLA_BR_BRIDGE_ID, sizeof(bridge_id), &bridge_id) || - nla_put_u16(skb, IFLA_BR_ROOT_PORT, br->root_port)) + nla_put_u16(skb, IFLA_BR_ROOT_PORT, br->root_port) || + nla_put_u32(skb, IFLA_BR_ROOT_PATH_COST, br->root_path_cost)) return -EMSGSIZE; #ifdef CONFIG_BRIDGE_VLAN_FILTERING