From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.2 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C3138C2D0CE for ; Fri, 3 Jan 2020 20:19:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 88C6E222C4 for ; Fri, 3 Jan 2020 20:19:09 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="LwK28shT" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727610AbgACUTF (ORCPT ); Fri, 3 Jan 2020 15:19:05 -0500 Received: from mail-ed1-f67.google.com ([209.85.208.67]:33875 "EHLO mail-ed1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726050AbgACUTF (ORCPT ); Fri, 3 Jan 2020 15:19:05 -0500 Received: by mail-ed1-f67.google.com with SMTP id l8so42576518edw.1; Fri, 03 Jan 2020 12:19:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:autocrypt:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=HdfDfUKYf42nnu7teUY8K9Ikwjdmb1k2cSEnm44/CGg=; b=LwK28shTGqgkRmQM2FbFdAVPLkqQ2uarFQgdXiQzUBCj90SQLh70ejzbY+FFdnjTUb PsnQV9oB993VpI6/GM2NkLwhCb2kfEBW86he3dyUUqsMCKs42ONeKO4aUTaajQ/GDhjI LdD75hQpDdZ42M4HWV9tOYWwTirDXrnmUs8842G8Wa/6iJxXp6/qT+bvXWQnenkfzIse OQiT7h4i16wHoFvLU4uGSgxNspHqj637t/KWXNj8deCCLtaRPNJGweM5haze4/POPeP5 1jWi2W2Ze+tqiAmIF4sM5hZ1nFCpXTKPhWENLofsmrLeLlHjFVLKhKwBfju3Wbn5dVVu pgog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=HdfDfUKYf42nnu7teUY8K9Ikwjdmb1k2cSEnm44/CGg=; b=i1sXJJuxsT3joF0tdxdZY/2EWCQCsXuzlb/bFetFh6Jtn/NpA3HOQcH/iPw2LgGx2q 2xXlTfZIE4EFm21grNmR09BDEQix9Ek8mlps9rZM68J0uVzqBk5icOAxgqQCxJmp6nu1 R9J+3B0oIaIltXy5FBS86E8IaBMC/G5btRjYLobw8W3yjo5GNyL7/F9lpgkJ1DoV+5R8 XwENGxBPuAzgXScRBqcjYJUOE72p2W7F6Ei29Nrzyzccab3npWHki8lWx6Pr/Dj5jmmA 0VX7ZPTdosAfK651tk3W0JyYnPht4NUcEdrJFZFwKcXsVH/H/QbncfpJ7HS7/9AiVate EE2A== X-Gm-Message-State: APjAAAUF+/kMLYXmA/3IDTQ/5o98gfSBZ0TN/IxyqsPRin5gH+wcbB2E t5MzADS77RD9tAIgnaFaluvI2Lo+ X-Google-Smtp-Source: APXvYqzLgnWJCoNBUxporEDD7ACI5Ld3v7fpK/xgNKD6aM9d3ztpCxl+steUyhmdIwZ5OSvf6kTyNQ== X-Received: by 2002:a17:907:43c1:: with SMTP id i1mr93581619ejs.138.1578082249899; Fri, 03 Jan 2020 12:10:49 -0800 (PST) Received: from [10.67.50.49] ([192.19.223.252]) by smtp.googlemail.com with ESMTPSA id b15sm7634087eje.82.2020.01.03.12.10.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 03 Jan 2020 12:10:49 -0800 (PST) Subject: Re: [PATCH net-next 0/2] Improvements to the DSA deferred xmit To: Vladimir Oltean , David Miller Cc: Vivien Didelot , Andrew Lunn , netdev , lkml References: <20191227014208.7189-1-olteanv@gmail.com> <20200102.134952.739616655559887645.davem@davemloft.net> From: Florian Fainelli Autocrypt: addr=f.fainelli@gmail.com; prefer-encrypt=mutual; keydata= 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 G10n8gCguORqNGMsVRxrlLs7/himep7MrCc= Message-ID: <4866462c-9e2b-ed7c-03a9-a2e81decf0c7@gmail.com> Date: Fri, 3 Jan 2020 12:10:44 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On 1/2/20 2:47 PM, Vladimir Oltean wrote: > Hi David, > > On Thu, 2 Jan 2020 at 23:49, David Miller wrote: >> >> Two comments about this patch series, I think it needs more work: >> > > Thanks for looking at this series. > >> 1) This adds the thread and the xmit queue but not code that actually >> uses it. You really have to provide the support code in the driver >> at the same time you add the new facitlity so we can actually see >> how it'll be used. >> > > There is no API change here. There was, and still is, a single caller > of dsa_defer_xmit in the kernel, from net/dsa/tag_sja1105.c: > > if (unlikely(sja1105_is_link_local(skb))) > return dsa_defer_xmit(skb, netdev); > > The whole difference is that what used to be a schedule_work() in that > function is now a kthread_queue_work() call. > >> 2) Patch #1 talks about a tradeoff. Replacing the CB initialization of >> the field skb_get(). But this skb_get() is an atomic operation and >> thus much more expensive for users of the deferred xmit scheme. >> > > Ok, I'll admit I hadn't considered the exact penalty introduced by > skb_get, but I think it is a matter of proportions. > Worst case I expect no more than 64 packets per second to be > transmitted using the deferred xmit mechanism: there are 4 switch > ports, PTP runs with a sync interval of 1/8 seconds, and the STP hello > timer is 2 seconds. So, not a lot of traffic. > On the other hand, clearing the deferred_xmit bool from the skb->cb is > something that everybody else (including this driver for "normal" > traffic) needs to do at line rate, just for the above 64 packets per > second (in the worst case) to be possible. I sincerely think your transmit path is so radically different that your sja1105 driver should simply be absorbing all of this logic and the core DSA framework should be free of any deferred transmit logic. Can you consider doing that before the merge window ends? -- Florian