From patchwork Mon Mar 11 15:45:23 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yongjun X-Patchwork-Id: 226573 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 EF2EB2C02C4 for ; Tue, 12 Mar 2013 02:45:28 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752794Ab3CKPpZ (ORCPT ); Mon, 11 Mar 2013 11:45:25 -0400 Received: from mail-bk0-f48.google.com ([209.85.214.48]:33474 "EHLO mail-bk0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751612Ab3CKPpY (ORCPT ); Mon, 11 Mar 2013 11:45:24 -0400 Received: by mail-bk0-f48.google.com with SMTP id jf20so1737772bkc.7 for ; Mon, 11 Mar 2013 08:45:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to:cc :content-type; bh=w4uYfDax76+MKAwaogtUyxC2dQYEKnw4eL5AF+t4NjQ=; b=R+uRCcT/xiHR9AGwGkUkdjZoBZiZej7p4XpG9aWxoohjWRiLv5WlVNlbljgLSpC/IA ZknsRs8R1jynD33cfZzPK55dnbUsjLnnTeyjYOBfOuPyzg8FsRkI46uKUVkDD6iKMl0q VN2gSCrzMDcaqEshJVME41X3n9wSRAPjMndzIT104UuC3hgf2QhqHFTUFx33Tdi1RPeb PcX3EvHN3ONJ33hAK7OVX1OzlaZjdqot3HyKFJsJuTLfttqlOJHv0VviLTf9/wsVc2m2 VQfgAp5n/6YIGMwbCWXsPs+NZW4o393f+SaiqQUvrL0WHdOGWEWbaxPNvYn2jRj8SEHT /XKQ== MIME-Version: 1.0 X-Received: by 10.205.33.3 with SMTP id sm3mr4844280bkb.64.1363016723441; Mon, 11 Mar 2013 08:45:23 -0700 (PDT) Received: by 10.204.30.210 with HTTP; Mon, 11 Mar 2013 08:45:23 -0700 (PDT) Date: Mon, 11 Mar 2013 23:45:23 +0800 Message-ID: Subject: [PATCH -next] bridge: using for_each_set_bit to simplify the code From: Wei Yongjun To: stephen@networkplumber.org, davem@davemloft.net Cc: yongjun_wei@trendmicro.com.cn, bridge@lists.linux-foundation.org, netdev@vger.kernel.org Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Wei Yongjun Using for_each_set_bit() to simplify the code. Signed-off-by: Wei Yongjun --- net/bridge/br_netlink.c | 5 +---- net/bridge/br_fdb.c | 10 ++-------- 2 files changed, 3 insertions(+), 12 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c index 27aa3ee..2135afa 100644 --- a/net/bridge/br_netlink.c +++ b/net/bridge/br_netlink.c @@ -135,10 +135,7 @@ static int br_fill_ifinfo(struct sk_buff *skb, goto nla_put_failure; pvid = br_get_pvid(pv); - for (vid = find_first_bit(pv->vlan_bitmap, BR_VLAN_BITMAP_LEN); - vid < BR_VLAN_BITMAP_LEN; - vid = find_next_bit(pv->vlan_bitmap, - BR_VLAN_BITMAP_LEN, vid+1)) { + for_each_set_bit(vid, pv->vlan_bitmap, BR_VLAN_BITMAP_LEN) { vinfo.vid = vid; vinfo.flags = 0; if (vid == pvid) diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c index b0812c9..4f68df1 100644 --- a/net/bridge/br_fdb.c +++ b/net/bridge/br_fdb.c @@ -724,13 +724,10 @@ int br_fdb_add(struct ndmsg *ndm, struct nlattr *tb[], * specify a VLAN. To be nice, add/update entry for every * vlan on this port. */ - vid = find_first_bit(pv->vlan_bitmap, BR_VLAN_BITMAP_LEN); - while (vid < BR_VLAN_BITMAP_LEN) { + for_each_set_bit(vid, pv->vlan_bitmap, BR_VLAN_BITMAP_LEN) { err = __br_fdb_add(ndm, p, addr, nlh_flags, vid); if (err) goto out; - vid = find_next_bit(pv->vlan_bitmap, - BR_VLAN_BITMAP_LEN, vid+1); } } @@ -815,11 +812,8 @@ int br_fdb_delete(struct ndmsg *ndm, struct nlattr *tb[], * vlan on this port. */ err = -ENOENT; - vid = find_first_bit(pv->vlan_bitmap, BR_VLAN_BITMAP_LEN); - while (vid < BR_VLAN_BITMAP_LEN) { + for_each_set_bit(vid, pv->vlan_bitmap, BR_VLAN_BITMAP_LEN) { err &= __br_fdb_delete(p, addr, vid); - vid = find_next_bit(pv->vlan_bitmap, - BR_VLAN_BITMAP_LEN, vid+1); } } out: