From patchwork Tue Aug 24 18:14:40 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: stephen hemminger X-Patchwork-Id: 62618 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 869BEB70AA for ; Wed, 25 Aug 2010 04:14:54 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755075Ab0HXSOu (ORCPT ); Tue, 24 Aug 2010 14:14:50 -0400 Received: from mail.vyatta.com ([76.74.103.46]:45140 "EHLO mail.vyatta.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751812Ab0HXSOs (ORCPT ); Tue, 24 Aug 2010 14:14:48 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.vyatta.com (Postfix) with ESMTP id 39D921829017; Tue, 24 Aug 2010 11:09:51 -0700 (PDT) X-Virus-Scanned: amavisd-new at tahiti.vyatta.com Received: from mail.vyatta.com ([127.0.0.1]) by localhost (mail.vyatta.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dCFr+8aCAzrw; Tue, 24 Aug 2010 11:09:50 -0700 (PDT) Received: from nehalam (unknown [10.250.0.103]) by mail.vyatta.com (Postfix) with ESMTPSA id 0D39F182916A; Tue, 24 Aug 2010 11:09:48 -0700 (PDT) Date: Tue, 24 Aug 2010 11:14:40 -0700 From: Stephen Hemminger To: David Miller Cc: xiaosuo@gmail.com, hadi@cyberus.ca, tgraf@redhat.com, netdev@vger.kernel.org Subject: Re: [PATCH] tc: add meta match on receive hash Message-ID: <20100824111440.37eebae1@nehalam> In-Reply-To: <20100823.204422.85408087.davem@davemloft.net> References: <20100823130803.7736ebfb@nehalam> <20100823.204422.85408087.davem@davemloft.net> Organization: Vyatta X-Mailer: Claws Mail 3.7.5 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Trivial extension to existing meta data match rules to allow matching on skb receive hash value. Signed-off-by: Stephen Hemminger --- This versions uses skb_get_rxhash() -- 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 --- a/include/linux/tc_ematch/tc_em_meta.h 2010-08-24 08:35:29.555651482 -0700 +++ b/include/linux/tc_ematch/tc_em_meta.h 2010-08-24 08:36:51.038237590 -0700 @@ -79,6 +79,7 @@ enum { TCF_META_ID_SK_SENDMSG_OFF, TCF_META_ID_SK_WRITE_PENDING, TCF_META_ID_VLAN_TAG, + TCF_META_ID_RXHASH, __TCF_META_ID_MAX }; #define TCF_META_ID_MAX (__TCF_META_ID_MAX - 1) --- a/net/sched/em_meta.c 2010-08-24 08:35:29.535662209 -0700 +++ b/net/sched/em_meta.c 2010-08-24 08:38:07.191510604 -0700 @@ -223,6 +223,11 @@ META_COLLECTOR(int_maclen) dst->value = skb->mac_len; } +META_COLLECTOR(int_rxhash) +{ + dst->value = skb_get_rxhash(skb); +} + /************************************************************************** * Netfilter **************************************************************************/ @@ -541,6 +546,7 @@ static struct meta_ops __meta_ops[TCF_ME [META_ID(SK_SENDMSG_OFF)] = META_FUNC(int_sk_sendmsg_off), [META_ID(SK_WRITE_PENDING)] = META_FUNC(int_sk_write_pend), [META_ID(VLAN_TAG)] = META_FUNC(int_vlan_tag), + [META_ID(RXHASH)] = META_FUNC(int_rxhash), } };