From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ajit.khaparde@broadcom.com>
Received: from mail-qk0-f171.google.com (mail-qk0-f171.google.com
 [209.85.220.171]) by dpdk.org (Postfix) with ESMTP id 491655592
 for <dev@dpdk.org>; Wed, 30 Nov 2016 20:38:22 +0100 (CET)
Received: by mail-qk0-f171.google.com with SMTP id n21so221147217qka.3
 for <dev@dpdk.org>; Wed, 30 Nov 2016 11:38:21 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=1K2yJ8FkWxFfcxjRTYO45Yzx8FX4NDzXvgwj5SKzODw=;
 b=L99pqtt0Tm+7bxW2nqmYhuw8YNJ6mLYUptOhMw6HEUgeddJtiDq5tbnnBfxKOSC+nB
 HXP+8V115DAmvUsuRniegc6lkLmk0Dq1c8skKpZZ51494JnPEYgB9qNcTM7CZBkziSk3
 7XN5krbJ8VMYwzuBhBYjFJ35iFw8UaI57EbcE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=1K2yJ8FkWxFfcxjRTYO45Yzx8FX4NDzXvgwj5SKzODw=;
 b=KKema9J6vNWeLfMHyp0inkTj6YEuzHN4PcGCfF1cd1JGO6oqIsQFJfQokEDO89iJ8H
 HFurW1JyLGNUBA/FtmyXleMmaH1A1BtALnlIF10/+kKgYR5WNYOFmU5fYePFbO1nqCQW
 46o7gVmi9gN2ia9NJINMsB6N3MiSmwa0iYp4Xbhe1xCROMWTkCs0g55QIyNXC7kRSanJ
 YxcPRqHZKzB79LMKk1hAtrrr+TiMlJngI++aL3u+PYfaRro7/ZsZjNajsEHtaxjIs4d+
 mudPkhsanh593esow9ue6RBQOXJr5+Px/J49KTFerS3igyyIxEDj/ezgQ4eJVtYrMkd4
 rJuw==
X-Gm-Message-State: AKaTC038l68XgHkC1nU+7FYXvC8+3bUZt+zpSGkPGAz/w8Dd+Le3223QT1himblfD9OYue1jFZYkDuL3Q4n7mfze
X-Received: by 10.55.12.2 with SMTP id 2mr30229770qkm.68.1480534701176; Wed,
 30 Nov 2016 11:38:21 -0800 (PST)
MIME-Version: 1.0
Received: by 10.237.62.47 with HTTP; Wed, 30 Nov 2016 11:37:40 -0800 (PST)
In-Reply-To: <8317180.L80Qf11uiu@xps13>
References: <1477486575-25148-1-git-send-email-tomaszx.kulasek@intel.com>
 <1479922585-8640-1-git-send-email-tomaszx.kulasek@intel.com>
 <8317180.L80Qf11uiu@xps13>
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Wed, 30 Nov 2016 13:37:40 -0600
Message-ID: <CACZ4nhsy2hZLCWQ1MRqNM_WsAbgRaBoCQwRcGPEDLktp-C=MEw@mail.gmail.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Cc: dev@dpdk.org, Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>, 
 Stephen Hurd <stephen.hurd@broadcom.com>, Jan Medala <jan@semihalf.com>, 
 Jakub Palider <jpa@semihalf.com>, John Daley <johndale@cisco.com>, 
 Adrien Mazarguil <adrien.mazarguil@6wind.com>, 
 Alejandro Lucero <alejandro.lucero@netronome.com>,
 Harish Patil <harish.patil@qlogic.com>, 
 Rasesh Mody <rasesh.mody@qlogic.com>,
 Jerin Jacob <jerin.jacob@caviumnetworks.com>, 
 Yuanhan Liu <yuanhan.liu@linux.intel.com>, Yong Wang <yongwang@vmware.com>, 
 Tomasz Kulasek <tomaszx.kulasek@intel.com>, konstantin.ananyev@intel.com, 
 olivier.matz@6wind.com
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Content-Filtered-By: Mailman/MimeDel 2.1.15
Subject: Re: [dpdk-dev] [PATCH v12 0/6] add Tx preparation
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 30 Nov 2016 19:38:22 -0000

On Mon,
=E2=80=8B=E2=80=8B
Nov 28, 2016 at 5:03 AM, Thomas Monjalon <thomas.monjalon@6wind.com> wrote:

> We need attention of every PMD developers on this thread.
>
> Reminder of what Konstantin suggested:
> "
> - if the PMD supports TX offloads AND
> - if to be able use any of these offloads the upper layer SW would have t=
o:
>     * modify the contents of the packet OR
>     * obey HW specific restrictions
> then it is a PMD developer responsibility to provide tx_prep() that would
> implement
> expected modifications of the packet contents and restriction checks.
> Otherwise, tx_prep() implementation is not required and can be safely set
> to NULL.
> "
>
> I copy/paste also my previous conclusion:
>
> Before txprep, there is only one API: the application must prepare the
> packets checksum itself (get_psd_sum in testpmd).
> With txprep, the application have 2 choices: keep doing the job itself
> or call txprep which calls a PMD-specific function.
> The question is: does non-Intel drivers need a checksum preparation for
> TSO?
> Will it behave well if txprep does nothing in these drivers?
>
> When looking at the code, most of drivers handle the TSO flags.
> But it is hard to know whether they rely on the pseudo checksum or not.
>
> git grep -l 'PKT_TX_UDP_CKSUM\|PKT_TX_TCP_CKSUM\|PKT_TX_TCP_SEG'
> drivers/net/
>
> drivers/net/bnxt/bnxt_txr.c
>
=E2=80=8B::: snip:::
=E2=80=8B


>
> Please, we need a comment for each driver saying
> "it is OK, we do not need any checksum preparation for TSO"
> or
> "yes we have to implement tx_prepare or TSO will not work in this mode"
>

=E2=80=8BThe bnxt devices
 don't need pse
=E2=80=8B=E2=80=8B
udo header checksum in the packet for TSO or TX
checksum offload.
=E2=80=8B So..
=E2=80=8B
"it is OK, we do not need any checksum preparation for TSO"