From patchwork Thu Oct 29 12:53:34 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ibtisam Tariq X-Patchwork-Id: 82770 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F2C6AA04B5; Thu, 29 Oct 2020 13:56:15 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 04042CD03; Thu, 29 Oct 2020 13:54:05 +0100 (CET) Received: from mail-ej1-f67.google.com (mail-ej1-f67.google.com [209.85.218.67]) by dpdk.org (Postfix) with ESMTP id D2A68CA5C for ; Thu, 29 Oct 2020 13:54:03 +0100 (CET) Received: by mail-ej1-f67.google.com with SMTP id j24so3616103ejc.11 for ; Thu, 29 Oct 2020 05:54:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=emumba-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=xXKTbnGtKWaEgsa4QoaqvKSiRh+sY9mJw0C0OoTiF30=; b=h4YUX/e1w0qs1tTtR055OIaeaXWPhCl+EV1uhtNrGee10sZ/xrVg9NxdjAjdopkclP uHRTMgycGd+5PN1cDvAQ/te79wd2gg1GawPzOYV7hKZ1L68pyGB9RRzfCgCltFeFDti5 ixZE09riOrEJxhOqCrlxLUruJZOdiLK/yHXsbIJ81yys607mi0XOLuqIdG8CP3Rr2bhH ZuoDp+Z/LKjQRePrsk0Dn6ByTFy8RLyzSEDxMmdH+32hLm7kIPewrN37wXbVFmOLl2rI P4e0oySwaFbGnEeuBC5gApZJzE9aG0XdiFDwFKUKZvUGyTJbW3819hX3MGk/L9AnbxiF d32Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=xXKTbnGtKWaEgsa4QoaqvKSiRh+sY9mJw0C0OoTiF30=; b=t/MDq94vguJ4ESnnOAs5TzCyhASjBYsCAX4GMTBsvwpfYFhX9XOnDCtVhm9CyyiMtV H3GaboToV3QfxelAw8Zj6l2TUpPpood+4efk+kZ8QjBIh5K+e6/nR99pE8zMhKHXvrxw kNxz0JyYJYv2y4WG0kIMVgCgpJmZ55kxV+wLVnJqIKXUWGr1q602NeV3Di5+Y6v3EAUd g+uRDHaOm1Y+UJt01n3YBHkMqapzEK0uz/MeAtXdZzgCGM88trND3wF44G0yMyg40AT3 yyJXtPZK2i/SkxhLi1M6xKGN0mvdjxKfmvoYyuBPL/kcl/tm3bXd19BrbaoFBlpfjwpb qw+w== X-Gm-Message-State: AOAM530Ri8MbO+YuijxmYKPI7JFB9CPcp6AFYvhtC+q23qYQALUPmS2o wqRPbXFIXkSlAZ+FwDYOK5i8vw== X-Google-Smtp-Source: ABdhPJxXNHVWblGG5GteXlnDAH8Jsiw+1wlilSf+QgQWfmH87cImUMrDm9CCXio7JA00SWqEYJr89A== X-Received: by 2002:a17:906:7016:: with SMTP id n22mr4139428ejj.402.1603976042641; Thu, 29 Oct 2020 05:54:02 -0700 (PDT) Received: from localhost.localdomain ([39.33.228.207]) by smtp.gmail.com with ESMTPSA id q19sm1487951ejz.90.2020.10.29.05.53.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 05:54:02 -0700 (PDT) From: Ibtisam Tariq To: marko.kovacevic@intel.com, konstantin.ananyev@intel.com, reshma.pattan@intel.com, john.mcnamara@intel.com, cristian.dumitrescu@intel.com, jasvinder.singh@intel.com, chenbo.xia@intel.com, maxime.coquelin@redhat.com, xiaoyun.li@intel.com Cc: dev@dpdk.org, Ibtisam Tariq , sergio.gonzalez.monroy@intel.com, phil.yang@arm.com Date: Thu, 29 Oct 2020 12:53:34 +0000 Message-Id: <20201029125339.30916-3-ibtisam.tariq@emumba.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201029125339.30916-1-ibtisam.tariq@emumba.com> References: <20201029125339.30916-1-ibtisam.tariq@emumba.com> Subject: [dpdk-dev] [PATCH 3/8] examples/packet_ordering: enhance getopt_long usage X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" Instead of using getopt_long return value, strcmp was used to compare the input parameters with the struct option array. This patch get rid of all those strcmp by directly binding each longopt with an int enum. Bugzilla ID: 238 Fixes: 850f3733f8 ("examples/packet_ordering: new sample app") Fixes: 016493307a ("examples/packet_ordering: add stats per worker thread") Cc: sergio.gonzalez.monroy@intel.com Cc: phil.yang@arm.com Reported-by: David Marchand Signed-off-by: Ibtisam Tariq --- examples/packet_ordering/main.c | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c index a79d77a32..ac41d1a88 100644 --- a/examples/packet_ordering/main.c +++ b/examples/packet_ordering/main.c @@ -29,6 +29,13 @@ /* Macros for printing using RTE_LOG */ #define RTE_LOGTYPE_REORDERAPP RTE_LOGTYPE_USER1 +enum{ +#define OPTION_DISABLE_REORDER "disable-reorder" + OPTION_DISABLE_REORDER_NUM = 256, +#define OPTION_INSIGHT_WORKER "insight-worker" + OPTION_INSIGHT_WORKER_NUM, +}; + unsigned int portmask; unsigned int disable_reorder; unsigned int insight_worker; @@ -157,8 +164,8 @@ parse_args(int argc, char **argv) char **argvopt; char *prgname = argv[0]; static struct option lgopts[] = { - {"disable-reorder", 0, 0, 0}, - {"insight-worker", 0, 0, 0}, + {OPTION_DISABLE_REORDER, 0, NULL, OPTION_DISABLE_REORDER_NUM}, + {OPTION_INSIGHT_WORKER, 0, NULL, OPTION_INSIGHT_WORKER_NUM}, {NULL, 0, 0, 0} }; @@ -177,17 +184,18 @@ parse_args(int argc, char **argv) } break; /* long options */ - case 0: - if (!strcmp(lgopts[option_index].name, "disable-reorder")) { - printf("reorder disabled\n"); - disable_reorder = 1; - } - if (!strcmp(lgopts[option_index].name, - "insight-worker")) { - printf("print all worker statistics\n"); - insight_worker = 1; - } + case OPTION_DISABLE_REORDER_NUM: + { + printf("reorder disabled\n"); + disable_reorder = 1; break; + } + case OPTION_INSIGHT_WORKER_NUM: + { + printf("print all worker statistics\n"); + insight_worker = 1; + break; + } default: print_usage(prgname); return -1;