Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752192AbdHJGmV (ORCPT ); Thu, 10 Aug 2017 02:42:21 -0400 Received: from mail-wr0-f193.google.com ([209.85.128.193]:33774 "EHLO mail-wr0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750909AbdHJGmU (ORCPT ); Thu, 10 Aug 2017 02:42:20 -0400 Message-ID: <1502347335.4936.2.camel@edumazet-glaptop3.roam.corp.google.com> Subject: Re: [PATCH 0/4] net-next: dsa: fix flow dissection From: Eric Dumazet To: David Miller Cc: john@phrozen.org, andrew@lunn.ch, vivien.didelot@savoirfairelinux.com, f.fainelli@gmail.com, sean.wang@mediatek.com, netdev@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, muciri@openmesh.com, shashidhar.lakkavalli@openmesh.com Date: Wed, 09 Aug 2017 23:42:15 -0700 In-Reply-To: <20170809.225243.2204411285392662424.davem@davemloft.net> References: <20170809124119.24320-1-john@phrozen.org> <20170809.225243.2204411285392662424.davem@davemloft.net> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1089 Lines: 27 On Wed, 2017-08-09 at 22:52 -0700, David Miller wrote: > From: John Crispin > Date: Wed, 9 Aug 2017 14:41:15 +0200 > > > RPS and probably other kernel features are currently broken on some if not > > all DSA devices. The root cause of this is that skb_hash will call the > > flow_dissector. At this point the skb still contains the magic switch > > header and the skb->protocol field is not set up to the correct 802.3 > > value yet. By the time the tag specific code is called, removing the header > > and properly setting the protocol an invalid hash is already set. In the > > case of the mt7530 this will result in all flows always having the same > > hash. > > > > Changes since RFC: > > * use a callback instead of static values > > * add cover letter > > Series applied, thanks. Is this related ? net/core/flow_dissector.c: In function '__skb_flow_dissect': net/core/flow_dissector.c:448:18: error: 'struct net_device' has no member named 'dsa_ptr' ops = skb->dev->dsa_ptr->tag_ops; ^ make[3]: *** [net/core/flow_dissector.o] Error 1