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 098A6A0562; Tue, 23 Mar 2021 11:20:05 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E302B140D17; Tue, 23 Mar 2021 11:20:04 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mails.dpdk.org (Postfix) with ESMTP id 9CA82140D04 for ; Tue, 23 Mar 2021 11:20:02 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616494801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=CWPw8sCxC6Yj1hO/7SS47M5XEGCV1AWq4ZpIMSacwQA=; b=YIi7HFxGpGIvczF8bmbgO21Mpio3bhHDIQJOOx6jHUCNh7/neOxya81NbzBCfJdRPWfZLA 7sPcRIf4F8uLcRPraM0ZdpKcaTjHabEL0uyYPA42K/p6zBx4YMT2NopApwdgmSA5oRYSZX WXKPGeI/1nyNifOgAGwmlIovDc8Cmog= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-405--exyjwGGOpqKp12D_bVJRQ-1; Tue, 23 Mar 2021 06:19:59 -0400 X-MC-Unique: -exyjwGGOpqKp12D_bVJRQ-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9E6F383DD22; Tue, 23 Mar 2021 10:19:58 +0000 (UTC) Received: from dmarchan.remote.csb (unknown [10.40.193.233]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9483A437F; Tue, 23 Mar 2021 10:19:57 +0000 (UTC) From: David Marchand To: dev@dpdk.org Cc: arybchenko@solarflare.com, l.wojciechow@partner.samsung.com Date: Tue, 23 Mar 2021 11:19:26 +0100 Message-Id: <20210323101928.2403-2-david.marchand@redhat.com> In-Reply-To: <20210323101928.2403-1-david.marchand@redhat.com> References: <20200626114751.22523-1-david.marchand@redhat.com> <20210323101928.2403-1-david.marchand@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=david.marchand@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Subject: [dpdk-dev] [PATCH 1/3] test/log: check levels 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" Add checks on log levels: - default values for rte_log_register and RTE_LOG_REGISTER, - level changes with rte_log_set_level and consorts Signed-off-by: David Marchand --- app/test/test_logs.c | 53 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 50 insertions(+), 3 deletions(-) diff --git a/app/test/test_logs.c b/app/test/test_logs.c index 425ae03cb9..db754465c0 100644 --- a/app/test/test_logs.c +++ b/app/test/test_logs.c @@ -20,6 +20,10 @@ #define RTE_LOGTYPE_TESTAPP1 RTE_LOGTYPE_USER1 #define RTE_LOGTYPE_TESTAPP2 RTE_LOGTYPE_USER2 +static int logtype1; +static int logtype2; +RTE_LOG_REGISTER(logtype3, logtype3, ERR) + /* * Logs * ==== @@ -61,9 +65,24 @@ test_legacy_logs(void) static int test_logs(void) { - int logtype1, logtype2; int ret; +#define CHECK_LEVELS(exp_logtype1, exp_logtype2, exp_logtype3) do \ +{ \ + ret = rte_log_get_level(logtype1); \ + TEST_ASSERT_EQUAL(ret, exp_logtype1, \ + "%s:%d, invalid level for logtype1 %d, expecting %d\n", \ + __FILE__, __LINE__, ret, exp_logtype1); \ + ret = rte_log_get_level(logtype2); \ + TEST_ASSERT_EQUAL(ret, exp_logtype2, \ + "%s:%d, invalid level for logtype2 %d, expecting %d\n", \ + __FILE__, __LINE__, ret, exp_logtype2); \ + ret = rte_log_get_level(logtype3); \ + TEST_ASSERT_EQUAL(ret, exp_logtype3, \ + "%s:%d, invalid level for logtype3 %d, expecting %d\n", \ + __FILE__, __LINE__, ret, exp_logtype3); \ +} while (0) + printf("== dynamic log types\n"); logtype1 = rte_log_register("logtype1"); @@ -71,15 +90,41 @@ test_logs(void) printf("Cannot register logtype1\n"); return -1; } + ret = rte_log_get_level(logtype1); + TEST_ASSERT_EQUAL(ret, RTE_LOG_INFO, + "invalid default level for logtype1 %d, expecting %d\n", + ret, RTE_LOG_INFO); + logtype2 = rte_log_register("logtype2"); if (logtype2 < 0) { printf("Cannot register logtype2\n"); return -1; } + ret = rte_log_get_level(logtype2); + TEST_ASSERT_EQUAL(ret, RTE_LOG_INFO, + "invalid default level for logtype2 %d, expecting %d\n", + ret, RTE_LOG_INFO); + + ret = rte_log_get_level(logtype3); + TEST_ASSERT_EQUAL(ret, RTE_LOG_ERR, + "invalid default level for logtype3 %d, expecting %d\n", + ret, RTE_LOG_ERR); + + rte_log_set_level(logtype1, RTE_LOG_ERR); + CHECK_LEVELS(RTE_LOG_ERR, RTE_LOG_INFO, RTE_LOG_ERR); + + rte_log_set_level_regexp("type$", RTE_LOG_EMERG); + CHECK_LEVELS(RTE_LOG_ERR, RTE_LOG_INFO, RTE_LOG_ERR); + + rte_log_set_level_regexp("type[23]", RTE_LOG_EMERG); + CHECK_LEVELS(RTE_LOG_ERR, RTE_LOG_EMERG, RTE_LOG_EMERG); + + rte_log_set_level_pattern("logtype", RTE_LOG_DEBUG); + CHECK_LEVELS(RTE_LOG_ERR, RTE_LOG_EMERG, RTE_LOG_EMERG); /* set logtype level low to so we can test global level */ - rte_log_set_level(logtype1, RTE_LOG_DEBUG); - rte_log_set_level(logtype2, RTE_LOG_DEBUG); + rte_log_set_level_pattern("logtype*", RTE_LOG_DEBUG); + CHECK_LEVELS(RTE_LOG_DEBUG, RTE_LOG_DEBUG, RTE_LOG_DEBUG); /* log in error level */ rte_log_set_global_level(RTE_LOG_ERR); @@ -103,6 +148,8 @@ test_logs(void) if (ret < 0) return ret; +#undef CHECK_LEVELS + return 0; } -- 2.23.0