From patchwork Tue Oct 26 13:14:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kevin Laatz X-Patchwork-Id: 102920 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 9C88FA0547; Tue, 26 Oct 2021 15:16:06 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D95E841125; Tue, 26 Oct 2021 15:15:45 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 2CB8C410FA for ; Tue, 26 Oct 2021 15:15:42 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10148"; a="293360851" X-IronPort-AV: E=Sophos;i="5.87,184,1631602800"; d="scan'208";a="293360851" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Oct 2021 06:14:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,184,1631602800"; d="scan'208";a="497331638" Received: from silpixa00401122.ir.intel.com ([10.55.128.10]) by orsmga008.jf.intel.com with ESMTP; 26 Oct 2021 06:14:47 -0700 From: Kevin Laatz To: dev@dpdk.org Cc: thomas@monjalon.net, bruce.richardson@intel.com, fengchengwen@huawei.com, conor.walsh@intel.com, Kevin Laatz Date: Tue, 26 Oct 2021 13:14:29 +0000 Message-Id: <20211026131432.2734145-6-kevin.laatz@intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20211026131432.2734145-1-kevin.laatz@intel.com> References: <20210910172737.2561156-1-kevin.laatz@intel.com> <20211026131432.2734145-1-kevin.laatz@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v5 5/8] examples/ioat: add signal-triggered device dumps 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 Sender: "dev" Enable dumping device info via the signal handler. With this change, when a SIGUSR1 is issued, the application will print a dump of all devices being used by the application. Signed-off-by: Kevin Laatz Reviewed-by: Conor Walsh --- examples/ioat/ioatfwd.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/examples/ioat/ioatfwd.c b/examples/ioat/ioatfwd.c index 995ba7b8db..e8a3f2f88a 100644 --- a/examples/ioat/ioatfwd.c +++ b/examples/ioat/ioatfwd.c @@ -1004,6 +1004,20 @@ port_init(uint16_t portid, struct rte_mempool *mbuf_pool, uint16_t nb_queues) cfg.ports[cfg.nb_ports++].nb_queues = nb_queues; } +/* Get a device dump for each device being used by the application */ +static void +rawdev_dump(void) +{ + uint32_t i, j; + + if (copy_mode != COPY_MODE_IOAT_NUM) + return; + + for (i = 0; i < cfg.nb_ports; i++) + for (j = 0; j < cfg.ports[i].nb_queues; j++) + rte_rawdev_dump(cfg.ports[i].ioat_ids[j], stdout); +} + static void signal_handler(int signum) { @@ -1011,6 +1025,8 @@ signal_handler(int signum) printf("\n\nSignal %d received, preparing to exit...\n", signum); force_quit = true; + } else if (signum == SIGUSR1) { + rawdev_dump(); } } @@ -1034,6 +1050,7 @@ main(int argc, char **argv) force_quit = false; signal(SIGINT, signal_handler); signal(SIGTERM, signal_handler); + signal(SIGUSR1, signal_handler); nb_ports = rte_eth_dev_count_avail(); if (nb_ports == 0)