From patchwork Fri Oct 28 12:32:32 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Sitnicki X-Patchwork-Id: 688370 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 3t537P4p2gz9t0X for ; Fri, 28 Oct 2016 23:32:49 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759823AbcJ1Mcn (ORCPT ); Fri, 28 Oct 2016 08:32:43 -0400 Received: from mail-wm0-f46.google.com ([74.125.82.46]:38871 "EHLO mail-wm0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756275AbcJ1Mck (ORCPT ); Fri, 28 Oct 2016 08:32:40 -0400 Received: by mail-wm0-f46.google.com with SMTP id n67so110943414wme.1 for ; Fri, 28 Oct 2016 05:32:39 -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=FkVFRwksoftNoL/E9vkrOHtHjcnIqCFO88CB4XOKR7c=; b=ExWsO7PbOaTmWr1VWsV9eHcdQCGZYEBbzqqRtV0xPXG8Kt8Bl4stQwoeLLtRUC2+wG khTZcGj8fkmkICAOxdCCMfy31+UJ+NM2W3EM1d8T0GcKjrK8RcVyBmG2QJKwFCuecDn6 /ef9qSLk0sVMe7HA2tNvn92GFvNY80sUPECsQO9AmU6795zesSqWYzuG+XCeEmTUrpvB W5ASvmMcDLcyk8JwG/1YJCfBJyz3W69GfqaXGK7/idLARn0J86NiENv6ZcBJu1KX9D6z 16pwn6GDnAk57PqsUC5fIb25d+ALH7g8XKgMWi60O5+Nl6CIjKD3McsPlgvosyXaHLND v26g== X-Gm-Message-State: ABUngvdH7PEtrNhpdP8MmtYJCMHJY6QxaJ0384PRqZ3p6TsM6zaniKAcWDeQhP5JmfG5Q5W0 X-Received: by 10.194.175.166 with SMTP id cb6mr11161771wjc.84.1477657958975; Fri, 28 Oct 2016 05:32:38 -0700 (PDT) Received: from redhat.com ([149.6.38.86]) by smtp.gmail.com with ESMTPSA id 18sm8751295wmr.6.2016.10.28.05.32.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 28 Oct 2016 05:32:38 -0700 (PDT) From: Jakub Sitnicki To: netdev@vger.kernel.org Cc: "David S. Miller" , Hannes Frederic Sowa , Hideaki YOSHIFUJI , Tom Herbert Subject: [PATCH net-next v2 2/5] net: Extend struct flowi6 with multipath hash Date: Fri, 28 Oct 2016 14:32:32 +0200 Message-Id: <1477657955-5157-3-git-send-email-jkbs@redhat.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1477657955-5157-1-git-send-email-jkbs@redhat.com> References: <1477657955-5157-1-git-send-email-jkbs@redhat.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Allow for functions that fill out the IPv6 flow info to also pass a hash computed over the skb contents. The hash value will drive the multipath routing decisions. This is intended for special treatment of ICMPv6 errors, where we would like to make a routing decision based on the flow identifying the offending IPv6 datagram that triggered the error, rather than the flow of the ICMP error itself. Signed-off-by: Jakub Sitnicki Acked-by: Hannes Frederic Sowa --- include/net/flow.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/net/flow.h b/include/net/flow.h index 035aa77..73ee3aa 100644 --- a/include/net/flow.h +++ b/include/net/flow.h @@ -143,6 +143,7 @@ struct flowi6 { #define fl6_ipsec_spi uli.spi #define fl6_mh_type uli.mht.type #define fl6_gre_key uli.gre_key + __u32 mp_hash; } __attribute__((__aligned__(BITS_PER_LONG/8))); struct flowidn {