Received: by 2002:a05:7412:b10a:b0:f3:1519:9f41 with SMTP id az10csp1701152rdb; Sat, 2 Dec 2023 06:16:14 -0800 (PST) X-Google-Smtp-Source: AGHT+IEQJ5LQK4WbyqvdKbcFpiMASwpWIgYgKaEAOMrzL15n+AfYqmDImkGNAjrlurXQM2U8ZDtw X-Received: by 2002:a05:6a20:970a:b0:18f:97c:4f6f with SMTP id hr10-20020a056a20970a00b0018f097c4f6fmr365325pzc.123.1701526574276; Sat, 02 Dec 2023 06:16:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701526574; cv=none; d=google.com; s=arc-20160816; b=dU0Y8/dC4jnGnYPqUJo/vBFd+ksoiJz2s3vah8tIB3vBtLcCGcLJ+ubcN1SlbRI63n fLVbCMYRabU7wY31j6mlZnDlz98rynjDeTRU4TZxGViD3atei5FD06NKuX0gmHCKFCFt vHBtSSTuEqGOnhfM4n3iU8C0pmrG4x/vOAPEVvezuB/mTrSyygmjNcBEbfb/5oJjM78M 3aMvK261tRScwFhS4q/8vwoEh2Z7GnE6xQnz4zLSYPQQS5g2KmHZSwUFm0HW+y42hIdV xuWP9tfOsZnLq4Z/YvYDuKNhiFxb9VdQGkzRrmAJz0cSZHEXumje9pbCpNjnts0PGXx8 bNtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version:subject :references:in-reply-to:message-id:cc:to:from:date:dkim-signature; bh=cHjT/29o2cHv+uPSUDloG/9K5z+4mwtqcKQnCHqcHPk=; fh=gMFARPIs8mj7tx6lyPi7Jhoe1jKzfPA/IHsPjj7rgVs=; b=B6/WJMPtx3RH+hVL2tQTrIGK5Dych6FqcvHj7n032L3yDkGXLriXNzR2POo0GDe8yo SHtgaX9lcqQK8Fd/JJoPQuWaZ0OSHaa0OTblU3HxG7l8xDwU4lkjruaN9pFvzquN+LTG EtFIrW4NcOMnEecpf/g3aSOOR/9qPKzJswdfjGVgIqRu8Nx6AriQNt1jPeyLabIlFnMV 9e5CUxi0sNJu8eCb2erECR8TGpTzaIUDdxSyRUJXTyqaJBtw9xblsbUe4hHsM3Ts2h9R TgXTzeQdeh4fRdDmbIkMaK/uC8htgU8tOgJQ2VaH9XPskWsWR5DAw1AUlOUOYbEoxw/J TJlg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=XixYoi6g; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from pete.vger.email (pete.vger.email. [23.128.96.36]) by mx.google.com with ESMTPS id m23-20020a63f617000000b005bdd6196f4asi4913990pgh.392.2023.12.02.06.16.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 02 Dec 2023 06:16:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) client-ip=23.128.96.36; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=XixYoi6g; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id 4A30E801B1A1; Sat, 2 Dec 2023 06:16:08 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232933AbjLBOPj (ORCPT + 99 others); Sat, 2 Dec 2023 09:15:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35716 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229451AbjLBOPi (ORCPT ); Sat, 2 Dec 2023 09:15:38 -0500 Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [IPv6:2607:f8b0:4864:20::733]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5CD8711C; Sat, 2 Dec 2023 06:15:44 -0800 (PST) Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-77dc733b25cso181011485a.1; Sat, 02 Dec 2023 06:15:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701526543; x=1702131343; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:subject:references :in-reply-to:message-id:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=cHjT/29o2cHv+uPSUDloG/9K5z+4mwtqcKQnCHqcHPk=; b=XixYoi6gWsVTI/OvkDXmzWnmpY0gqzoB5KNuJV9kiDvtTEuJHgp/FRlGCAuR/aj0h2 AL5pIF4AFVP3A58/hheKs0LCmimp6wUV6Hu1hMpFcpzq47k6SQGZrow6ZTNv3HlEsW+6 TtZIE/qt13UbV0X6BIhD9zQ+r4BFvUHWj7sNCVKyJIljmYyXmaMA4zGiXFU7sB395jUa cTUvMSa4Gjgw4nc75EwNsJaWKOG4Das3FHdE8R4h0R/d/4NmBd9oHIscM4zCcMDE/sL2 bT06kZvqNtRMmOC02oXQvXfgUC+Kxt0u8a2fwwh1idNUUlc6bkgY5p5iBYBmGnsEy8M5 kvIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701526543; x=1702131343; h=content-transfer-encoding:mime-version:subject:references :in-reply-to:message-id:cc:to:from:date:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=cHjT/29o2cHv+uPSUDloG/9K5z+4mwtqcKQnCHqcHPk=; b=cBvm2KIqrTFjx0Pq3m7EBk98PEmOp+ByOr1sJbLbzZbkpaHvnSGAaaexJEaiwxhZvr GgDcRCgU8MucLctsRXo2jk6PjpQ1UPPgvZqulm2uXKJn5ifsrLjzB+wavmCG91K+QUF4 ldrDttvfUAfLi++7hsZWcoYeYYTWV3cL6Z98K9EwCVNH+nlv4eP2RRjtIUuGj1Rm1865 6Hu1X6UKYbNPMWTJPqjEqmOiXyHhVC5hXyLGgK/N7DLHi+F1JRZBqlhgBZ0H57h3kKly oBs81mp7maycHvvOyjOEHpPsKQbQqtMdmGoFTxoafidjX299oMZDLDinsCUWDhR8a/Es QE+w== X-Gm-Message-State: AOJu0YxbJADUsIyeYh3IlK5D8kytigttcfLylkSj3RMzcg6w+bEhNDDI ycvklnBfuMMT2m/6pgEAn6s= X-Received: by 2002:ae9:f812:0:b0:77e:fba3:4f32 with SMTP id x18-20020ae9f812000000b0077efba34f32mr1152322qkh.136.1701526543353; Sat, 02 Dec 2023 06:15:43 -0800 (PST) Received: from localhost (114.66.194.35.bc.googleusercontent.com. [35.194.66.114]) by smtp.gmail.com with ESMTPSA id br30-20020a05620a461e00b0077d742fb27esm2452534qkb.49.2023.12.02.06.15.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 02 Dec 2023 06:15:42 -0800 (PST) Date: Sat, 02 Dec 2023 09:15:42 -0500 From: Willem de Bruijn To: Jesper Dangaard Brouer , Willem de Bruijn , "Song, Yoong Siang" , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Jonathan Corbet , Bjorn Topel , "Karlsson, Magnus" , "Fijalkowski, Maciej" , Jonathan Lemon , Alexei Starovoitov , Daniel Borkmann , John Fastabend , Stanislav Fomichev , Lorenzo Bianconi , Tariq Toukan , Willem de Bruijn , Maxime Coquelin , Andrii Nakryiko , Mykola Lysenko , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Hao Luo , Jiri Olsa , Shuah Khan , Alexandre Torgue , Jose Abreu , Andre Fredette Cc: "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-doc@vger.kernel.org" , "bpf@vger.kernel.org" , "xdp-hints@xdp-project.net" , "linux-stm32@st-md-mailman.stormreply.com" , "linux-arm-kernel@lists.infradead.org" , "linux-kselftest@vger.kernel.org" Message-ID: <656b3c0ebb103_1a6a2c2947d@willemb.c.googlers.com.notmuch> In-Reply-To: <179a4581-f7df-4eb1-ab67-8d65f856a2fe@kernel.org> References: <20231201062421.1074768-1-yoong.siang.song@intel.com> <6569f71bad00d_138af5294d@willemb.c.googlers.com.notmuch> <179a4581-f7df-4eb1-ab67-8d65f856a2fe@kernel.org> Subject: Re: [PATCH bpf-next v2 0/3] xsk: TX metadata txtime support Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-0.6 required=5.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,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Sat, 02 Dec 2023 06:16:08 -0800 (PST) Jesper Dangaard Brouer wrote: > > > On 12/1/23 16:09, Willem de Bruijn wrote: > > Song, Yoong Siang wrote: > >> On Friday, December 1, 2023 6:46 PM, Jesper Dangaard Brouer wrote: > >>> On 12/1/23 07:24, Song Yoong Siang wrote: > >>>> This series expands XDP TX metadata framework to include ETF HW offload. > >>>> > >>>> Changes since v1: > >>>> - rename Time-Based Scheduling (TBS) to Earliest TxTime First (ETF) > >>>> - rename launch-time to txtime > >>>> > >>> > >>> I strongly disagree with this renaming (sorry to disagree with Willem). > >>> > >>> The i210 and i225 chips call this LaunchTime in their programmers > >>> datasheets, and even in the driver code[1]. > >>> > >>> Using this "txtime" name in the code is also confusing, because how can > >>> people reading the code know the difference between: > >>> - tmo_request_timestamp and tmo_request_txtime > >>> > >> > >> Hi Jesper and Willem, > >> > >> How about using "launch_time" for the flag/variable and > >> "Earliest TxTime First" for the description/comments? > > > > I don't follow why you are calling the feature: > - "Earliest TxTime First" (ETF). > - AFAIK this just reference an qdisc name (that most don't know exists) > > > > I don't particularly care which term we use, as long as we're > > consistent. Especially, don't keep introducing new synonyms. > > > > The fact that one happens to be one vendor's marketing term does not > > make it preferable, IMHO. On the contrary. > > > > These kind of hardware features are defined as part of Time Sensitive > Networking (TSN). > I believe these TSN features are defined as part of IEEE 802.1Qbv (2015) > and according to Wikipedia[2] incorporated into IEEE 802.1Q. > > [2] https://en.wikipedia.org/wiki/Time-Sensitive_Networking > > > > SO_TXTIME is in the ABI, and EDT has been used publicly in kernel > > patches and conference talks, e.g., Van Jacobson's Netdev 0x12 > > keynote. Those are vendor agnostic commonly used terms. > > > > I agree that EDT (Earliest Departure Time) have become a thing and term > in our community. > We could associate this feature with this. > I do fear what hardware behavior will be it if I e.g. ask it to send a > packet 2 sec in the future on i225 which max support 1 sec. > Will hardware send it at 1 sec? > Because then I'm violating the *Earliest* Departure Time. That should definitely not happen. At least not on a device that implements EDT semantics. This relates to Jakub's question in the previous thread on whether this mechanism allows out-of-order transmission or maintains FIFO behavior. That really is device specific. Older devices only support this for low rate (PTP) and with a small fixed number of outstanding requests. For pacing offload, devices need to support up to linerate and out-of-order. I don't think we want to enforce either in software, as the hardware is already out there. But it would be good if drivers can somehow label these capabilities. Including programmable horizon. It is up to the qdisc to ensure that it does not pass packets to the device beyond its horizon. ETF and FQ already have a concept of horizon. And a way to queue errors for packets out of bound (SO_EE_CODE_TXTIME_..). > > > But as long as Launch Time is not an Intel only trademark, fine to > > select that. > > The IEEE 802.1Qbv is sometimes called Time-Aware Shaper (TAS), but I > don't like to for us to name this after this. This features is simply > taking advantage of exposing one of the hardware building blocks > (controlling/setting packet "launch time") that can be used for > implementing a TAS. > > I like the name "launch time" because it doesn't get easily confused > with other timestamps, and intuitively describes packet will be send at > a specific time (likely in future). > > --Jesper Understood on your point that txtime and tx_timestamp are too similar. As said, I don't care strongly. Launch time sounds fine to me. Others can speak up if they disagree. I take launch time as a less strict than EDT: it is a request to send at a certain time, with no strict definition on uncertainty. While EDT more strictly ensures that a packet is not sent before the timestamp.