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 Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id BCD72C2A09B for ; Fri, 7 Aug 2026 16:16:55 +0000 (UTC) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C8DD0402AC; Fri, 7 Aug 2026 18:16:54 +0200 (CEST) Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com [209.85.222.182]) by mails.dpdk.org (Postfix) with ESMTP id 2A94940265 for ; Fri, 7 Aug 2026 18:16:53 +0200 (CEST) Received: by mail-qk1-f182.google.com with SMTP id af79cd13be357-92e99ef0902so198419185a.2 for ; Fri, 07 Aug 2026 09:16:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1786119412; x=1786724212; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=+maPUG2S4BuROyXydTEXkEVzn9rNPTCkAmayVkgnn1I=; b=fh5h1tE6j26GXwuDViXAcQeVLYWfuBjYcbjASo/TiUNXHRRhCVCNYSb8x/S7whx68H +f1JNCUHdBD7OgZuShPn3WLYNNa9jIxruluB4+/Nh8pnJ/ftJliDiux0c3GE2mCpcdyC 600oHJtqQ5SXk3uUSrCSthbRPtNNzFBiF+ewI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786119412; x=1786724212; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=+maPUG2S4BuROyXydTEXkEVzn9rNPTCkAmayVkgnn1I=; b=pAN0TEos1CgAyAFZGQHLh1i8qGrC6F+pt98sGJw+zlNMMHj8HtxIGwQRohAd9ASmbc Oxzzu4zT+Z00k4CPJPQytTIq+f+We2T8nTG2j3lBTvlnJZWF8ikgmi3SfZX4kQFEREFQ /lqjvE8kohob0BDvORbvEW2mmUShsofcoLGRZkMDt2WhWJLRBH7USQpOzdzWjoutUIRy kZuUvVIOaqg4mdKBpzy8IoZUxKl33bcTCwyIrUNHfCiqCXEOJPNFJ8ela5LeYK5mhScj SgRQctDWLVTWTWwK93ZFq9OnyGTS6T5NGHPndGwbeG7hS3bSzx2SF5Jk1kKKhcAZXnjl JHwg== X-Gm-Message-State: AOJu0YxAOpKPra/7WrSpJJ3OAGLzCijroP7TQiuccdSNBFWizbgcuJFr m60gwIQlsNslkueO+hXNJPIJiSBBtTwSrMRAjJwLJP1dwpK3Mogfv3mO9f6iy4ksE+7mnRtiGlE pfijbMREHpS9LknDC3kbOSqfnO5oNjSJSva5mrH+YIpYxDjHvDE1HA8dwdRvDq6uJVsIkvhd26P dHH+elNLm4KZmt8d6ytjegrMIET2w= X-Gm-Gg: AR+sD13CUs2K7873KUh6Jl+0PtPdDuUivDd3JOrh3h6SZd7L2HJkMvcD9sAmGyWYiZV /r28X7Qh+D5VvMxpHkyDwx6XwIJgxgVBr0lAg5doOj3/i1v+SJewP7uDFnZp5J5yJhZGsAf/4sa gjXiGkDd64DozX9aohGlueUKWByJaA6BAHnIoNKHN9vHzRxUUQdooPc6w1rou12hjUUqxelMdU7 VMVhGoBUR8F2KC3VIjXf8c1BJvtuLsD90yh2uJKIwm8/shaAQZXpCdnZ4bD/JGnf1KGuiMsqWqh W8Fh6AVM7Z1AuOUo25YxYkVUlnUDNzkDGVJPlOexRCmqwBPUa7EbRi7m0WzasGMQNmZN9/t+rUM hHCKmkfM+CYuS9tlYxHJD2Ehnr9MHaedxpadTjBwPE35SisCDr7YA5EHo1ubKBU2yelJVB97vf7 BQ3ZpjROY1v5x7kFGdU1zEgmW5SkQvFbCdwstbQN1Hwgq/QExbjMtwBnp5WMcVNHmOj/5suYxRT mxuXKy/KCQ= X-Received: by 2002:a05:620a:628b:b0:92e:f0a5:ac3e with SMTP id af79cd13be357-936490ebca7mr2657705985a.28.1786119411932; Fri, 07 Aug 2026 09:16:51 -0700 (PDT) Received: from d121029.iol.unh.edu ([2606:4100:3880:1210::219]) by smtp.gmail.com with ESMTPSA id af79cd13be357-9366e09dc07sm181798585a.15.2026.08.07.09.16.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Aug 2026 09:16:51 -0700 (PDT) From: Andrew Bailey To: dev@dpdk.org, luca.vizzarro@arm.com, patrickrobb1997@gmail.com Cc: knimoji@iol.unh.edu, lylavoie@iol.unh.edu, dladd@iol.unh.edu, Andrew Bailey , Dean Marx Subject: [PATCH v7 0/7] dts: remove imports from framework in test suites Date: Fri, 7 Aug 2026 12:16:35 -0400 Message-ID: <20260807161642.122310-1-abailey@iol.unh.edu> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260806135346.568766-1-abailey@iol.unh.edu> References: <20260806135346.568766-1-abailey@iol.unh.edu> 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This series takes action to make modules accessible from api that were only in framework before. This greatly cleans up the majority of test suites, ridding them of almost all framework imports. Signed-off-by: Dean Marx Signed-off-by: Andrew Bailey --- v5: * Resolved merge conflicts and rebased to main. * Removed additional framework imports from test suites. v6: * Included missing linux_session py file. * Included missing linux_session rst file. v7: * Resolved issue where linux sessions was not imported properly. Andrew Bailey (7): dts: move exception module from framework to API dts: move utils from framework to API dts: move context from framework to API dts: move testbed model from framework to API dts: move test suite module from framework to API dts: move params directory from framework to API dts: separate Linux session into interface and logic ...{framework.context.rst => api.context.rst} | 2 +- ...mework.exception.rst => api.exception.rst} | 2 +- ...work.params.eal.rst => api.params.eal.rst} | 2 +- .../{framework.params.rst => api.params.rst} | 6 +- ....params.types.rst => api.params.types.rst} | 2 +- ...work.test_suite.rst => api.test_suite.rst} | 2 +- ...y.rst => api.testbed_model.capability.rst} | 2 +- ...odel.cpu.rst => api.testbed_model.cpu.rst} | 2 +- ...st => api.testbed_model.linux_session.rst} | 2 +- ...el.node.rst => api.testbed_model.node.rst} | 2 +- ...n.rst => api.testbed_model.os_session.rst} | 2 +- ...el.port.rst => api.testbed_model.port.rst} | 2 +- ...st => api.testbed_model.posix_session.rst} | 2 +- doc/api/dts/api.testbed_model.rst | 28 ++++++ ...ogy.rst => api.testbed_model.topology.rst} | 2 +- ...generator.capturing_traffic_generator.rst} | 2 +- .../api.testbed_model.traffic_generator.rst | 16 ++++ ...testbed_model.traffic_generator.scapy.rst} | 2 +- ...l.traffic_generator.traffic_generator.rst} | 2 +- ...t => api.testbed_model.virtual_device.rst} | 2 +- .../{framework.utils.rst => api.utils.rst} | 2 +- doc/api/dts/framework.linux_session.rst | 9 ++ doc/api/dts/framework.testbed_model.rst | 28 ------ ...mework.testbed_model.traffic_generator.rst | 16 ---- doc/api/dts/index.rst | 13 +-- dts/api/artifact.py | 6 +- dts/api/capabilities.py | 14 +-- dts/{framework => api}/context.py | 14 +-- dts/api/cryptodev/__init__.py | 6 +- dts/api/cryptodev/config.py | 6 +- dts/{framework => api}/exception.py | 0 dts/api/packet.py | 18 ++-- dts/{framework => api}/params/__init__.py | 0 dts/{framework => api}/params/eal.py | 8 +- dts/{framework => api}/params/types.py | 16 ++-- dts/api/test.py | 4 +- dts/{framework => api}/test_suite.py | 15 ++-- .../testbed_model/__init__.py | 0 .../testbed_model/capability.py | 18 ++-- dts/{framework => api}/testbed_model/cpu.py | 4 +- dts/api/testbed_model/linux_session.py | 43 +++++++++ dts/{framework => api}/testbed_model/node.py | 6 +- .../testbed_model/os_session.py | 8 +- dts/{framework => api}/testbed_model/port.py | 2 +- .../testbed_model/posix_session.py | 6 +- .../testbed_model/topology.py | 20 ++--- .../traffic_generator/__init__.py | 4 +- .../capturing_traffic_generator.py | 4 +- .../performance_traffic_generator.py | 0 .../testbed_model/traffic_generator/scapy.py | 14 +-- .../traffic_generator/traffic_generator.py | 8 +- .../testbed_model/traffic_generator/trex.py | 18 ++-- .../testbed_model/virtual_device.py | 0 dts/api/testpmd/__init__.py | 11 ++- dts/api/testpmd/config.py | 6 +- dts/api/testpmd/types.py | 2 +- dts/{framework => api}/utils.py | 2 +- dts/framework/config/__init__.py | 6 +- dts/framework/config/node.py | 2 +- dts/framework/config/test_run.py | 12 +-- .../{testbed_model => }/linux_session.py | 15 ++-- dts/framework/parser.py | 2 +- dts/framework/remote_session/blocking_app.py | 8 +- dts/framework/remote_session/dpdk.py | 16 ++-- dts/framework/remote_session/dpdk_shell.py | 6 +- .../interactive_remote_session.py | 2 +- .../remote_session/interactive_shell.py | 8 +- .../remote_session/remote_session.py | 4 +- dts/framework/runner.py | 4 +- dts/framework/test_result.py | 5 +- dts/framework/test_run.py | 24 ++--- dts/tests/TestSuite_blocklist.py | 4 +- dts/tests/TestSuite_buffer_scatter.py | 2 +- dts/tests/TestSuite_checksum_offload.py | 2 +- dts/tests/TestSuite_cryptodev_latency.py | 6 +- dts/tests/TestSuite_cryptodev_throughput.py | 89 +++++-------------- dts/tests/TestSuite_dual_vlan.py | 2 +- dts/tests/TestSuite_dynamic_config.py | 2 +- dts/tests/TestSuite_dynamic_queue_conf.py | 4 +- dts/tests/TestSuite_flow_offload.py | 12 +-- dts/tests/TestSuite_hello_world.py | 2 +- dts/tests/TestSuite_l2fwd.py | 8 +- dts/tests/TestSuite_mac_filter.py | 4 +- dts/tests/TestSuite_mtu.py | 2 +- dts/tests/TestSuite_packet_capture.py | 12 +-- dts/tests/TestSuite_port_control.py | 2 +- ...stSuite_port_restart_config_persistency.py | 2 +- dts/tests/TestSuite_port_stats.py | 2 +- dts/tests/TestSuite_promisc_support.py | 2 +- dts/tests/TestSuite_qinq.py | 2 +- dts/tests/TestSuite_queue_toggle.py | 2 +- dts/tests/TestSuite_rss.py | 6 +- dts/tests/TestSuite_rx_split.py | 4 +- dts/tests/TestSuite_rx_tx_offload.py | 2 +- .../TestSuite_single_core_forward_perf.py | 4 +- dts/tests/TestSuite_smoke_tests.py | 6 +- dts/tests/TestSuite_softnic.py | 6 +- dts/tests/TestSuite_speed_capabilities.py | 2 +- dts/tests/TestSuite_unified_packet.py | 2 +- dts/tests/TestSuite_virtio_forward.py | 8 +- dts/tests/TestSuite_vlan.py | 2 +- 101 files changed, 382 insertions(+), 372 deletions(-) rename doc/api/dts/{framework.context.rst => api.context.rst} (80%) rename doc/api/dts/{framework.exception.rst => api.exception.rst} (77%) rename doc/api/dts/{framework.params.eal.rst => api.params.eal.rst} (79%) rename doc/api/dts/{framework.params.rst => api.params.rst} (71%) rename doc/api/dts/{framework.params.types.rst => api.params.types.rst} (80%) rename doc/api/dts/{framework.test_suite.rst => api.test_suite.rst} (81%) rename doc/api/dts/{framework.testbed_model.capability.rst => api.testbed_model.capability.rst} (74%) rename doc/api/dts/{framework.testbed_model.cpu.rst => api.testbed_model.cpu.rst} (78%) rename doc/api/dts/{framework.testbed_model.linux_session.rst => api.testbed_model.linux_session.rst} (74%) rename doc/api/dts/{framework.testbed_model.node.rst => api.testbed_model.node.rst} (71%) rename doc/api/dts/{framework.testbed_model.os_session.rst => api.testbed_model.os_session.rst} (76%) rename doc/api/dts/{framework.testbed_model.port.rst => api.testbed_model.port.rst} (77%) rename doc/api/dts/{framework.testbed_model.posix_session.rst => api.testbed_model.posix_session.rst} (74%) create mode 100644 doc/api/dts/api.testbed_model.rst rename doc/api/dts/{framework.testbed_model.topology.rst => api.testbed_model.topology.rst} (73%) rename doc/api/dts/{framework.testbed_model.traffic_generator.capturing_traffic_generator.rst => api.testbed_model.traffic_generator.capturing_traffic_generator.rst} (68%) create mode 100644 doc/api/dts/api.testbed_model.traffic_generator.rst rename doc/api/dts/{framework.testbed_model.traffic_generator.scapy.rst => api.testbed_model.traffic_generator.scapy.rst} (70%) rename doc/api/dts/{framework.testbed_model.traffic_generator.traffic_generator.rst => api.testbed_model.traffic_generator.traffic_generator.rst} (65%) rename doc/api/dts/{framework.testbed_model.virtual_device.rst => api.testbed_model.virtual_device.rst} (72%) rename doc/api/dts/{framework.utils.rst => api.utils.rst} (80%) create mode 100644 doc/api/dts/framework.linux_session.rst delete mode 100644 doc/api/dts/framework.testbed_model.rst delete mode 100644 doc/api/dts/framework.testbed_model.traffic_generator.rst rename dts/{framework => api}/context.py (90%) rename dts/{framework => api}/exception.py (100%) rename dts/{framework => api}/params/__init__.py (100%) rename dts/{framework => api}/params/eal.py (89%) rename dts/{framework => api}/params/types.py (93%) rename dts/{framework => api}/test_suite.py (98%) rename dts/{framework => api}/testbed_model/__init__.py (100%) rename dts/{framework => api}/testbed_model/capability.py (98%) rename dts/{framework => api}/testbed_model/cpu.py (99%) create mode 100644 dts/api/testbed_model/linux_session.py rename dts/{framework => api}/testbed_model/node.py (98%) rename dts/{framework => api}/testbed_model/os_session.py (99%) rename dts/{framework => api}/testbed_model/port.py (98%) rename dts/{framework => api}/testbed_model/posix_session.py (99%) rename dts/{framework => api}/testbed_model/topology.py (96%) rename dts/{framework => api}/testbed_model/traffic_generator/__init__.py (95%) rename dts/{framework => api}/testbed_model/traffic_generator/capturing_traffic_generator.py (98%) rename dts/{framework => api}/testbed_model/traffic_generator/performance_traffic_generator.py (100%) rename dts/{framework => api}/testbed_model/traffic_generator/scapy.py (98%) rename dts/{framework => api}/testbed_model/traffic_generator/traffic_generator.py (91%) rename dts/{framework => api}/testbed_model/traffic_generator/trex.py (96%) rename dts/{framework => api}/testbed_model/virtual_device.py (100%) rename dts/{framework => api}/utils.py (99%) rename dts/framework/{testbed_model => }/linux_session.py (98%) -- 2.55.0