{"id":808591,"url":"http://patchwork.ozlabs.org/api/1.0/patches/808591/?format=json","project":{"id":7,"url":"http://patchwork.ozlabs.org/api/1.0/projects/7/?format=json","name":"Linux network development","link_name":"netdev","list_id":"netdev.vger.kernel.org","list_email":"netdev@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20170901085856.2286-2-jiri@resnulli.us>","date":"2017-09-01T08:58:55","name":"[net-next,1/2] mlxsw: spectrum_router: Trap packets hitting anycast routes","commit_ref":null,"pull_url":null,"state":"accepted","archived":true,"hash":"9f3b9a2ac8494c2e65c73fad6eaa70a98e422301","submitter":{"id":15321,"url":"http://patchwork.ozlabs.org/api/1.0/people/15321/?format=json","name":"Jiri Pirko","email":"jiri@resnulli.us"},"delegate":{"id":34,"url":"http://patchwork.ozlabs.org/api/1.0/users/34/?format=json","username":"davem","first_name":"David","last_name":"Miller","email":"davem@davemloft.net"},"mbox":"http://patchwork.ozlabs.org/project/netdev/patch/20170901085856.2286-2-jiri@resnulli.us/mbox/","series":[{"id":977,"url":"http://patchwork.ozlabs.org/api/1.0/series/977/?format=json","date":"2017-09-01T08:58:54","name":"mlxsw: spectrum_router: Couple of fixes","version":1,"mbox":"http://patchwork.ozlabs.org/series/977/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/808591/checks/","tags":{},"headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=resnulli-us.20150623.gappssmtp.com\n\theader.i=@resnulli-us.20150623.gappssmtp.com\n\theader.b=\"hXNJ1KWF\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xkCpn41Gdz9t2x\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri,  1 Sep 2017 18:59:13 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751694AbdIAI7M (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 1 Sep 2017 04:59:12 -0400","from mail-wm0-f66.google.com ([74.125.82.66]:37323 \"EHLO\n\tmail-wm0-f66.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751503AbdIAI7B (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Fri, 1 Sep 2017 04:59:01 -0400","by mail-wm0-f66.google.com with SMTP id x189so1853158wmg.4\n\tfor <netdev@vger.kernel.org>; Fri, 01 Sep 2017 01:59:00 -0700 (PDT)","from localhost (jirka.pirko.cz. [84.16.102.26])\n\tby smtp.gmail.com with ESMTPSA id\n\tn13sm1572769wmg.2.2017.09.01.01.58.58\n\t(version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);\n\tFri, 01 Sep 2017 01:58:58 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=resnulli-us.20150623.gappssmtp.com; s=20150623;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=pP6bcIJqNxFVFjGsqvP/UaB7EYusGD98gj/aLJYVslQ=;\n\tb=hXNJ1KWF2yxPmimOfsg+byiNB4NySlRkg1X+R1zvTG3x/LYeDh5tfTJcmMyRhwjYZC\n\tFEhRpDEdeKae6DGsCoBKJBO1R6eWDC0razbAOTb6Qa6nHRvKAbxQrqiNP2RSIFqENcyW\n\tQEPy82f/iIrY6aySepz26kDPKqMfmROQz1rkspFFGory0S4yo7OLk7TuPoRTrJzkZ8t5\n\tIFY/MPq3drSjlWF9f3Byax3V4f3iPKDKPqVD1QpwMtUlt9ldVYEqO5AwrNj1F+NCyDdO\n\tOrHwspjqU9HDGIRs/nTXu++pTtD/9Z6drX6URB4AQ/E6/1HhUQNsbu0rCy1uOQk2bZN2\n\t3AhA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=pP6bcIJqNxFVFjGsqvP/UaB7EYusGD98gj/aLJYVslQ=;\n\tb=As3uEVKvRONsrs2jOnX4ohv1AlGqD55u8XpYhVv7V576mi05PLr5kkpqkEiTB0ZFnG\n\tUvFMKFS0kqTX55kYPrrhj5jOLVYlWQnLE5KAJuU7hHj1LWi5F2+IjpnfEmO6LmkjNCDm\n\tyxrkrmWYm3MfHv1445pOEiApoXbtv8FBVDireUQK6ygF5C2yxUHHJsxP9rdk9EAdS+d4\n\tPzvh++DmnlUFUSQA5NBrUnOBkep9Z3qVQQtUvxlVmuOy34JMBE86sGnDDuyzzUN3cqrH\n\tTBiClsiiMPpttgyoZ3dFoFT6GtlYcizPWNmeHoGttqnhXn2kkri3zxYSF4ltxLcCKOW4\n\t6FHg==","X-Gm-Message-State":"AHPjjUhpjF322UhiMzgPS2pHyG9sl6Sc7n4OiVTsC5PK8h/hx7RGaej7\n\tUqWrRtg+7rmJvff7YwM=","X-Google-Smtp-Source":"ADKCNb4DXrNfRXdCEuUtIv/baF1X+xkBgtwOoxXN6AkTra+U7ayjor52b1QRONNCfSo4qrEmm+xOSw==","X-Received":"by 10.28.60.69 with SMTP id j66mr746189wma.130.1504256339252;\n\tFri, 01 Sep 2017 01:58:59 -0700 (PDT)","From":"Jiri Pirko <jiri@resnulli.us>","To":"netdev@vger.kernel.org","Cc":"davem@davemloft.net, idosch@mellanox.com, mlxsw@mellanox.com","Subject":"[patch net-next 1/2] mlxsw: spectrum_router: Trap packets hitting\n\tanycast routes","Date":"Fri,  1 Sep 2017 10:58:55 +0200","Message-Id":"<20170901085856.2286-2-jiri@resnulli.us>","X-Mailer":"git-send-email 2.9.3","In-Reply-To":"<20170901085856.2286-1-jiri@resnulli.us>","References":"<20170901085856.2286-1-jiri@resnulli.us>","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"},"content":"From: Ido Schimmel <idosch@mellanox.com>\n\nI relied on the fact that anycast routes use the loopback device as\ntheir nexthop device to trap packets hitting them to the CPU.\n\nAfter commit 4832c30d5458 (\"net: ipv6: put host and anycast routes on\ndevice with address\") this is no longer the case and such routes are\nprogrammed with a forward action (note the 'offload' flag):\n\nanycast cafe:: dev enp3s0np7 proto kernel metric 0 offload pref medium\n\nThis will prevent the router from locally receiving packets destined to\nthe Subnet-Router anycast address.\n\nFix this by specifically programming anycast routes with action trap,\nwhich results in the following output:\n\nanycast cafe:: dev enp3s0np7 proto kernel metric 0 pref medium\n\nFixes: 4832c30d5458 (\"net: ipv6: put host and anycast routes on device with address\")\nSigned-off-by: Ido Schimmel <idosch@mellanox.com>\nSigned-off-by: Jiri Pirko <jiri@mellanox.com>\n---\n drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)","diff":"diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c\nindex 0cf6810..00e3aec 100644\n--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c\n+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c\n@@ -3659,7 +3659,7 @@ static void mlxsw_sp_fib6_entry_type_set(struct mlxsw_sp_fib_entry *fib_entry,\n \t * local, which will cause them to be trapped with a lower\n \t * priority than packets that need to be locally received.\n \t */\n-\tif (rt->rt6i_flags & RTF_LOCAL)\n+\tif (rt->rt6i_flags & (RTF_LOCAL | RTF_ANYCAST))\n \t\tfib_entry->type = MLXSW_SP_FIB_ENTRY_TYPE_TRAP;\n \telse if (rt->rt6i_flags & RTF_REJECT)\n \t\tfib_entry->type = MLXSW_SP_FIB_ENTRY_TYPE_LOCAL;\n","prefixes":["net-next","1/2"]}