From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0B62B45848; Thu, 22 Aug 2024 18:53:37 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C749742F08; Thu, 22 Aug 2024 18:53:36 +0200 (CEST) Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on2044.outbound.protection.outlook.com [40.107.95.44]) by mails.dpdk.org (Postfix) with ESMTP id DF62842F07 for ; Thu, 22 Aug 2024 18:53:34 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HHcH23ljLWNY0AjhttUxBBnOtpeIsXwrHcUjhne9Qz43vXZsg0km5oO4RN7Cwdo28vECptayey+aOSetCk5ByvuFIzS3X7J7cXFA3jR8dmg3T9kXflSjZhe6ZQVFXqpqA7sULVOB7Hvznj9cI4Nc8tfNOkXwbc594/l5PEAGwAzJ6u8IW6Pf7dLS6RpBDAaZM7R0+yW4IUuw1M2PfpflvU9DSbqgtVM0VImPtfMJ5OQ9o4wGVFXzW5h7X/hucaTsRJchGnDTskQBSd3nchSOK/3TSDoMbKpcB3gAuIg3Tz/2+6QYstbcTW2jD8l1U6rhPuLuCV6svlb9Hjv3S1nb2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EuqBMb7a+nCCm6ITINwyC8s836J8omKGC5tP68XneUk=; b=NzDEECMURS6pqk9O/uNEONcnIUbAl5Y3ksh1nV4b1KbmtJ+wp4BCSXrqdfIqAml5TBgnVXjjXhIOt61GFGN+w07N0SRbx1LIEPxzTuUfORoJGp6KD81Dml1wwTbo0Rk5MmUpYjHN+Uf51k2PMSTKxDLFmWItmvWkhzveYfl0CAwt3mnVbStT7BOO6PgETB6pzlTq/yzj9XbfNItJfm1bP13qhoSaa9BDdcraKfh8p0rKdbDAXaPwSZz9cF3Pv6Gom2ypGhWwFRkPW2FPq2Ae8JV/VIMLvIwdzLnqKEYbpGqy0B7LYkXrK6zfuiY5P07IqGub3LDykQgnKZ09CRRZqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EuqBMb7a+nCCm6ITINwyC8s836J8omKGC5tP68XneUk=; b=tjA1vH7Mhw6UuVGYp0x2nRrXmQnHinkEjCM+/RkRu/yOsWlO9UUCHw3a7GA0X53LDegm03Vuud9sqB4agmMpiELgt2fAFituJLk+j8bpO4tZVCA3Mrea652RxONd6pYqCSOTarcF6gxdoGf1QbbHcOEsXO2EP0kUJtJV0Tb1/wk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) by MW4PR12MB6876.namprd12.prod.outlook.com (2603:10b6:303:208::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7897.16; Thu, 22 Aug 2024 16:53:32 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::ebfb:2f9f:f9ca:82cd]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::ebfb:2f9f:f9ca:82cd%4]) with mapi id 15.20.7897.014; Thu, 22 Aug 2024 16:53:31 +0000 Message-ID: Date: Thu, 22 Aug 2024 17:53:27 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] app/testpmd: show output of commands read from file To: Bruce Richardson , dev@dpdk.org References: <20240822103604.113246-1-bruce.richardson@intel.com> <20240822104109.116208-2-bruce.richardson@intel.com> Content-Language: en-US From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= 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 8Zk= In-Reply-To: <20240822104109.116208-2-bruce.richardson@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BN0PR04CA0134.namprd04.prod.outlook.com (2603:10b6:408:ed::19) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|MW4PR12MB6876:EE_ X-MS-Office365-Filtering-Correlation-Id: 137d835d-dab1-4ee7-0f8b-08dcc2caf44f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?eGs2UEIwSzY5ZE5aaGRTVjk2STc4V2pPMllTODA0ZmV2UWtsN1cvalk3c3pR?= =?utf-8?B?ZUtYQWkwSGJJZTBhRm94UEoyeHJVenpYdUM5WmE4bVB5K1NaQmxiYm1NTWFO?= =?utf-8?B?WHZ6dmJRZTVMYnZINzJ4dG1EQ3ROcHo5V0pGNTNJV0JCaExGSWdic1ZtSWJj?= =?utf-8?B?OUlKUDBOcWgzTVlxREZncEFFV2h3ZXhoejFZMDVucjRQQmcwd3BQN3lmTXdZ?= =?utf-8?B?YmNvSmJ4ZWxHdVJ1TnNERGxiUXVpd3pMN3JZYUVEblF0d3MxamNiMHk5ckd2?= =?utf-8?B?YVZlcDlzZ0ZzNVp0NGU2K2xpYkgydUl2WGhvOXh3L1hjVmJmd0RwZXdpZ25w?= =?utf-8?B?T2dvK29uMHNDZGNadGZxNUh5ZlpWdGIrK0VtL1Y1T29ZM1cvV3ZiN3o4V3Fn?= =?utf-8?B?L0F1NndYMWRnNHJyaENlYk1nWW92NUhVZHYxT3hRTDJ6ZkNIRHFZOStjczZj?= =?utf-8?B?cGc5OXRMc2U4bUt6MVhsTktXSFNkOXAzbFFZM0hDMWEvakZpN2lUVzFySWlq?= =?utf-8?B?UDZVVElvV2duNnoyUkg1QnZmRkVLSWdyaWd4M293MkpUU3ZBSVlSOXJFdU1W?= =?utf-8?B?Q3k2UFc2N2pJanVXTXo5SnFpaTZyZHJJTHNQcjE3TFV2QjJRZmlvQk9UM1Fv?= =?utf-8?B?enhqamlYVmVJd0FGSG03UmdnSFlkaWhKd1BzSzdMNWJMcnVrZzF2MWxpNGcr?= =?utf-8?B?UVVySGRlRnZPeU1BWGVhcmJYclBrdExpSUVvaENOT0xtRGV4dnFrT2JZL0k1?= =?utf-8?B?VEtmaXFDS1pHUTR4THZ6cnRnNC9EekZSWlN3eWt5elhhVkRSUHpkWk0yMk4r?= =?utf-8?B?SFZRMlY1TGI5QndaY1p4WTJ1ODN3WktjbWlIWnF6NmFCWEVEUTRrY1VjT0ZQ?= =?utf-8?B?Njcvck5aS0dQSk1rVUJJQUxCa1ZYSE1CRnBhR3FXS1RrRm0vWDdNUXRIMENj?= =?utf-8?B?SG8yNDlIeDMwTndTK0R3dTVHVitpQ3JCTTZmVzdEc1ZhRWg2VmdoTVR5Ukpi?= =?utf-8?B?WU1hSDRPMzVZTXRtZVpWeGNuVmZGaHZzRmQrendlV0dGRkFySk56enphUmUy?= =?utf-8?B?dlhUSTRaSTZtYmFKbHdPN1VpcEJaeDMzS0JGZHRNQ2ZEN0ZsV0wzSUw0cFRw?= =?utf-8?B?Mzd6MXY5Wk5CekdlU0YydXJUSy9VWWgwQ2xUR3JheGU5cEV2aktHK3dET3dW?= =?utf-8?B?Z2VXTE82anNjMURsa1hPdEQvYW5tdk5QOWFVbndsZ3VzbHZUT1Z6Wm1zNnJJ?= =?utf-8?B?blNsNVN1eCtreE92Tzl5NUxpSTBWMXlHeUFabnNjZzM0Qy9NV2JZci95d2Fu?= =?utf-8?B?UnNWSDFoVktxeXd1YVQ0QVhJK2NhY09LdzFzTWJzU01Ob0ZRNkFSckx3SUpt?= =?utf-8?B?OStVYWtnK09JZENId2dxZWoydTB5V25ydi8zeHJSZlJadlQ1RTJtQVQwVWQ2?= =?utf-8?B?NUNUUUNIRGF5bjFkUnBjamNGWkRNOTYrWGtYdTV5MEU2MmJVb2ZDSW14TXhW?= =?utf-8?B?UE1kbVg2YllocG9icUZFZU5LejMwak1lZzA5UVVCNmJGYmlGak4zVVFVQmsv?= =?utf-8?B?a3RsUklNV00raHBRaldaYiszL1owYlZWdHFtLzZwZ0EzVmdWWnRhbi9YWWp1?= =?utf-8?B?NDNmNmh6RWdnOGxXVCtQaGl1dXRxQng5RHdIekFCLzArV2JCTjc4cFg1dkE1?= =?utf-8?B?dTlsbVQ2VGY5anJRTTNKVzBrZlFGNFc2ZUk4VVpiTzhZRzBHWGxkTHpOTmRw?= =?utf-8?B?VnJMZStNbW5IOUEvd0FqSE1lbGgyNHRHTGNKM3Q5SkFuUk10MzZ2TzBIaWVH?= =?utf-8?B?dWtWYUVBaURrMGN4V0gxUT09?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dUZyeDlaRHlWVk9jOEgyZVAvRzg3WnM1U3htRGpnOXBPT2hvb2VQWFQycG94?= =?utf-8?B?NnVsTFpCNERRa29SY2thbUtSUFJpZExySmxTcmNiSFd3TnVNbWZCSU9MLzlG?= =?utf-8?B?dTQ2TVJSRmVKZXRNUjJ4RkV6UFlTSk4yQkZBMndmOUVsbXpBL0FoL3J3V3d5?= =?utf-8?B?NExzMm9kelBQQzhmYjB5cTNsMW5vRDZ6WXBGVEo0VEt3R1lVejVQRzRJM1Jp?= =?utf-8?B?Y1I0N1pxd1pvS1lCRzRxdE5yeWZQaVV2WE91RWV3N1RCdE1CekVPenE0eC9u?= =?utf-8?B?YUdNSWw3Qit2MjBLN0t0K3VmQ3hPRENvc3hwS2puMHdidytyRE9ZbmxyOU5I?= =?utf-8?B?VDdtZ1h0TldEanY3S1FiMDlpaThxa2pDSEc1Rzdtejh4Qk1ocWlBS1RRUnVQ?= =?utf-8?B?cUNIZnpsQnlDclRDczVSeEtoUEJESURZOFFKS3FyYU4yNmI1eEYra2kxNnUw?= =?utf-8?B?b2FraXd6TjEwa2ZKeUp4cnVIcjl0WEY0NTQ5dC8xcERoSXJGUUNYVnZjTnIx?= =?utf-8?B?eHNHVjFIVmJFOUxpQjl3MlZrejRzMUpUWnpYaW9uZGlFcDJCdmlucjZDNlU0?= =?utf-8?B?VzhiV0dPQzRJTWFzaUlhSTZub2ttRkEvVVhHb0JMVis1RFZvTUlQelEzYTE3?= =?utf-8?B?TnRzWUw0aEI4SzQ2UTZFcktVU01EbStuNG9CVzZGbjJMSzBSMUVOTG9oNFFN?= =?utf-8?B?YVQvbEhyL2QyNE05SlhMTkRsTzlQOE1oaG8xR2tZNnppQ3dWanQzb1lzclR4?= =?utf-8?B?MGtJVGozZTc0L2pCVmQyblpTcTdTTWpzaUJzRVZxNmN6dlk1cEhEaTJyOFFu?= =?utf-8?B?RC9oWWY1a3ZDOTJTZ01HVndsWUtBVEdyaTZmek12RGNRYms0aUtSVWluMjdv?= =?utf-8?B?QWZFVERDeEJFNlFoS1BMT21KZXJuRXp6M1JTRjZhMyt5UUZFM0FaUVRTWVFM?= =?utf-8?B?c25Qbmh1S3NDTmVnL0ZUNmVyOTlXQi9XZ3ozRUNLUmdjMnRCMzZ0Mk1KRGpD?= =?utf-8?B?VjJOWElabGxxZmNQdFFyWHJnNlhGMVBMdWxYc1NWK3c4NTVwLysxRmFXUlZk?= =?utf-8?B?Z09Xbkx4a2dmV1hiRVBEditDRENFUlUzR1o0VXVDT0h6d2RQL0JzalBoUTg3?= =?utf-8?B?TjVpbUxJUGVJNHZpajl1VVJiWWcrOHJLSkhjSnI4N0hzaTcrcURlSTI4d21i?= =?utf-8?B?SVpBd3QrS09wM0tpRzRMa2ZpMjh2R0ZHcVRVVEpBTDhFSnBveTVLTUpZVUs1?= =?utf-8?B?a3k2NVRvZzZWZ2JKRUFNM1FudGptVEtMSGw3R2kvVUV6R2lOM09vYmcrWjlT?= =?utf-8?B?d1dQTUVDT0VYVk1IblpNQnpGMm1PaVk1anVmbGkrNnNwaXdXTVpoVmo3NTBz?= =?utf-8?B?SUpvdytMZTRBS0ZqN0FjN09PYmx4cFg3OHBWdW03T1ZETlQ3Z0lEN1lmRFVm?= =?utf-8?B?WkhQZW1QSjVQUGJIbVkxY1FGeit6QkhlV0RMdHZSd1JHeTBlbDJJOXlpL05k?= =?utf-8?B?YnVNQXhxdW1HSllwL3JMbytrZU1MV012NGxTVFc5d3RKNjVOek1uL2ZMNUsz?= =?utf-8?B?WkY4akVTSHFpZU5EMVVnK0tSNVgzVkxpcUVoaXh4MUNSanVGZHh1YXJZcHJR?= =?utf-8?B?WU51Zkd5NWtqaVhRT1FyQmhXMitFUVluUDY3citTazB2UUYwWFNabGFrN0xM?= =?utf-8?B?Z2NGU1NMck9pZ2Z4enZmUzJXaWFmdmQvQzdFcXo4S3Z2N3BBWkJ1dThRTksv?= =?utf-8?B?dkVtaEY1eDNGN1RWT0hpWHNseVlnRWhReXViUThNa1lsR0RpcWtBTENLZmZN?= =?utf-8?B?dDk1YTdwaFBCVTJHb3NKNkx1RWZhMFdqbG1rSXdCSWJjeGo0Rlc3OHBoSnNM?= =?utf-8?B?Y2k5OFZpUFhWR1lrWFNLb3VVdHNzeWhBM3dpeGtrTDk3UTZvVjFHa3Y2V0VO?= =?utf-8?B?ZHZ6bHUvcVVieldyTnhaRHJwU25hYU1NckJSMzlGYmcrZFFEa0p6eUIwL1c0?= =?utf-8?B?c1I0THJqYzJselJrVTl2VkNjdjg0MURtdFZzT0ZHUEkzb1dVekNtaUV2UE9N?= =?utf-8?B?T1NhOEVxY0xrMTFic1ZzUjRNalErbTdrUWRjNjdyQ1o5KzJSUHhLWUpNNkJ2?= =?utf-8?Q?oLFnq4qsuTU8dpYccZgA3hjdB?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 137d835d-dab1-4ee7-0f8b-08dcc2caf44f X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Aug 2024 16:53:31.8864 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8sJ97PUN0/fy8tqIYGyKnIxUj3OcZnPqv9Nj8a917tjb2QjtlWj2PU3EBrYX18HR X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6876 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 On 8/22/2024 11:41 AM, Bruce Richardson wrote: > Testpmd supports the "--cmdline-file" parameter to read a set of initial > commands from a file. However, the only indication that this has been > done successfully on startup is a single-line message, no output from > the commands is seen. > For user I think it makes sense to see the command [1], only concern is if someone parsing testpmd output may be impacted on this, although I expect it should be trivial to update the relevant parsing. [1] Btw, I can still see the command output, I assume because command does the printf itself, for example for 'show port summary 0' command: - before patch: ... Number of available ports: 2 Port MAC Address Name Driver Status Link 0 xx:xx:xx:xx:xx:xx xxxx:xx:xx.x aaaaaaaa up xxx Gbps ... - after patch ... testpmd> show port summary 0 Number of available ports: 2 Port MAC Address Name Driver Status Link 0 xx:xx:xx:xx:xx:xx xxxx:xx:xx.x aaaaaaaa up xxx Gbps ... Only difference above is, after patch the command itself also printed. > To improve usability here, we can use cmdline_new rather than > cmdline_file_new and have the output from the various commands sent to > stdout, allowing the user to see better what is happening. > > Signed-off-by: Bruce Richardson > > --- > v2: use STDOUT_FILENO in place of hard-coded "1" > --- > app/test-pmd/cmdline.c | 14 +++++++++++++- > 1 file changed, 13 insertions(+), 1 deletion(-) > > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c > index b7759e38a8..52e64430d9 100644 > --- a/app/test-pmd/cmdline.c > +++ b/app/test-pmd/cmdline.c > @@ -6,6 +6,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -13431,7 +13432,18 @@ cmdline_read_from_file(const char *filename) > { > struct cmdline *cl; > > - cl = cmdline_file_new(main_ctx, "testpmd> ", filename); > + /* cmdline_file_new does not produce any output which is not ideal here. > + * Much better to show output of the commands, so we open filename directly > + * and then pass that to cmdline_new with stdout as the output path. > + */ > + int fd = open(filename, O_RDONLY); > + if (fd < 0) { > + fprintf(stderr, "Failed to open file %s: %s\n", > + filename, strerror(errno)); > + return; > + } > + > + cl = cmdline_new(main_ctx, "testpmd> ", fd, STDOUT_FILENO); > Above is almost save as 'cmdline_file_new()' function with only difference that it uses '-1' for 's_out'. If this usecase may be required by others, do you think does it have a value to pass 's_out' to 'cmdline_file_new()' or have a new version of API that accepts 's_out' as parameter? btw, I recognized that 'cmdline' library doesn't have doxygen documentation, which is a gap to address. Next time when someone asks for entry level task, we can point this one.