Message ID | 20240524183604.6925-1-npratte@iol.unh.edu (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id BFFAB440BD; Fri, 24 May 2024 20:36:09 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9509E402DA; Fri, 24 May 2024 20:36:09 +0200 (CEST) Received: from mail-oi1-f178.google.com (mail-oi1-f178.google.com [209.85.167.178]) by mails.dpdk.org (Postfix) with ESMTP id 53DFA40271 for <dev@dpdk.org>; Fri, 24 May 2024 20:36:08 +0200 (CEST) Received: by mail-oi1-f178.google.com with SMTP id 5614622812f47-3c9adcd4ccbso397672b6e.0 for <dev@dpdk.org>; Fri, 24 May 2024 11:36:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1716575767; x=1717180567; darn=dpdk.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=NqEPJY2TrWWu77ZSZRzLc53EbOu9ddySLrpxcGC6v7A=; b=eFCPUYJlc20STbU1uZ562J53W75VzHNcyMEL88iDYdQwNvb0CtMZvsYYeu/7AEUgS5 oAisXOOnHRRZ/WoqsykQSwmze2woxUleFm6X1D8So9+wfAdJMedSFyNSbsRdlAn3z7gd HD9XBgx2nhITnhrXcI4ae1Ga/o4J3s/oryC9o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716575767; x=1717180567; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=NqEPJY2TrWWu77ZSZRzLc53EbOu9ddySLrpxcGC6v7A=; b=uCglYQw2SG/5smFKdJQBNYUNfSgOa7KeNzpYKHMgXIYUoN+TZTb3b70iACKKzNLunw jnya0FtR8R+zALq19EMSeUPfvNvxFpcFOx0RgJDiDpSIjV1ntd4YKvZWU4xTmkiizWV2 w/u9xtcnTPgODQMvtYQosTZ1VYcTssuCtHSSUXpMAQheAyM7IbywtUKPqDXSaoDT2bkc 27cl5C8WTH9AvV2a6jmO674nwaDfclPg8WjsZyTUAs4FD1xfJADi3mSuF6LmBBz/g3pC 6OStaGB+t+WwctFr3MlmV010FFGYtOEaK66aHsg4G0D1x3QeHNB4Y9NOGfMVctICYaik 8XRw== X-Gm-Message-State: AOJu0YwxnPANdpfOzhcSgMghJ4j3zMZta9T/OvpvGuyNRWYTcey37AaK RpywVn7YboJZ+38pIerbvxc+GYQmBH/MZYBrra3975qy+sXifxG99JV4EvRl9SI= X-Google-Smtp-Source: AGHT+IGJtNCJN8YsH32YHlWh10GdZylUxpGgulwE/qmoGmF4Nac2Yq6F2NiIOh8y7uMhyMzsKBM9Dg== X-Received: by 2002:a05:6808:3087:b0:3c9:951d:a4a1 with SMTP id 5614622812f47-3d1a7d27b1bmr3326090b6e.3.1716575767505; Fri, 24 May 2024 11:36:07 -0700 (PDT) Received: from localhost.unh.edu ([2606:4100:3880:1271:e2f8:4ec3:8bf3:864c]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-43fb16b99d4sm10421761cf.2.2024.05.24.11.36.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 May 2024 11:36:07 -0700 (PDT) From: Nicholas Pratte <npratte@iol.unh.edu> To: thomas@monjalon.net, jspewock@iol.unh.edu, juraj.linkes@pantheon.tech, luca.vizzarro@arm.com, yoan.picchi@foss.arm.com, bruce.richardson@intel.com, Honnappa.Nagarahalli@arm.com, probb@iol.unh.edu, paul.szczepanek@arm.com Cc: dev@dpdk.org, Nicholas Pratte <npratte@iol.unh.edu> Subject: [RFC PATCH 0/1] Initial Implementation For Jumbo Frames Date: Fri, 24 May 2024 14:36:03 -0400 Message-ID: <20240524183604.6925-1-npratte@iol.unh.edu> X-Mailer: git-send-email 2.44.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
Initial Implementation For Jumbo Frames
|
|
Message
Nicholas Pratte
May 24, 2024, 6:36 p.m. UTC
The following is a rough design for the implementation of the jumbo frames test suite in new DTS. The test suite uses the same testing methodology from the test suite implementation in old DTS. In doing so, much of the logic in this implementation has been stripped away for the sake of maintaining an OS-agnostic design philosopgy. Thus, there are some concerns here that need further discussion. All test cases behave accordingly on lab hardware. However, issues with the testpmd shell, all of which will be fixed with the upcoming context manager, prevent the test suite from functioning properly if all test cases are run sequentially. Thus, for testing, each test case needs to be run individually. So, expect issues if attempting to test. Old DTS implements some basic logic that detects 1GB NICs, specifically when testing jumbo frame packets greater than the specified MTU length. This is because, according to a commit message from 2016, 1GB NICs will automatically adjust their size to +4 bytes, meaning that when setting an MTU of 9000, testpmd adjust the MTU size to 9004. To compensate, some logic was inserted in the old suite to adjust packet sizes accordingly. Given that Juraj's capabilities patch is in development, it would be possible to set a restriction on this test suite to remove the support of 1GB NICs, which could be determined from testpmd outputs; it could also be possible that this problem is entirely null and void today, essentially allowing us to forget about it. The current implementation is not developed with both the capabilities patch and the params patch in mind; however, the current design can and will be refactored to do so. Nicholas Pratte (1): Initial Implementation For Jumbo Frames Test Suite dts/framework/config/conf_yaml_schema.json | 3 +- dts/tests/TestSuite_jumboframes.py | 210 +++++++++++++++++++++ 2 files changed, 212 insertions(+), 1 deletion(-) create mode 100644 dts/tests/TestSuite_jumboframes.py
Comments
v3: * Refactored to use TestPMDShell context manager. NOTE: Assessing the boundaries and discern the correct assumption for ethernet overhead is still to be discussed. Thus, while each individual test case may pass, the test cases may not yet be precise. Nicholas Pratte (2): dts: add port config mtu options to testpmd shell dts: Initial Implementation For Jumbo Frames Test Suite dts/framework/config/conf_yaml_schema.json | 3 +- dts/framework/remote_session/testpmd_shell.py | 20 +- dts/tests/TestSuite_jumboframes.py | 182 ++++++++++++++++++ 3 files changed, 203 insertions(+), 2 deletions(-) create mode 100644 dts/tests/TestSuite_jumboframes.py
Hey Nick, After going through this test suite (jumbo frames) and mtu update, it seems as though mtu update contains all of the test cases of jumbo frames and more. To reduce the amount of maintenance and code duplication, it would make sense to remove this test suite and supercede it with mtu update. If you have any questions, let me know :) Thanks, Alex