Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/67038/?format=api
http://patches.dpdk.org/api/patches/67038/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200323195926.12182-4-david.marchand@redhat.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20200323195926.12182-4-david.marchand@redhat.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20200323195926.12182-4-david.marchand@redhat.com", "date": "2020-03-23T19:59:24", "name": "[v4,3/5] test: allow no-huge mode for fast-tests", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "7b8758de111ab551cb109b4a06b001d5aff3ea59", "submitter": { "id": 1173, "url": "http://patches.dpdk.org/api/people/1173/?format=api", "name": "David Marchand", "email": "david.marchand@redhat.com" }, "delegate": { "id": 24651, "url": "http://patches.dpdk.org/api/users/24651/?format=api", "username": "dmarchand", "first_name": "David", "last_name": "Marchand", "email": "david.marchand@redhat.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200323195926.12182-4-david.marchand@redhat.com/mbox/", "series": [ { "id": 9011, "url": "http://patches.dpdk.org/api/series/9011/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=9011", "date": "2020-03-23T19:59:21", "name": "no-huge unit test", "version": 4, "mbox": "http://patches.dpdk.org/series/9011/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/67038/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/67038/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id A1055A0564;\n\tMon, 23 Mar 2020 21:00:03 +0100 (CET)", "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 460C11C0BE;\n\tMon, 23 Mar 2020 21:00:01 +0100 (CET)", "from us-smtp-delivery-74.mimecast.com\n (us-smtp-delivery-74.mimecast.com [216.205.24.74])\n by dpdk.org (Postfix) with ESMTP id 0612B1C07E\n for <dev@dpdk.org>; Mon, 23 Mar 2020 20:59:59 +0100 (CET)", "from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com\n [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id\n us-mta-31-L4oqtXC-PUeROObPC1yeog-1; Mon, 23 Mar 2020 15:59:55 -0400", "from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com\n [10.5.11.22])\n (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n (No client certificate requested)\n by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1F82D107ACCC;\n Mon, 23 Mar 2020 19:59:54 +0000 (UTC)", "from dmarchan.remote.csb (unknown [10.40.193.243])\n by smtp.corp.redhat.com (Postfix) with ESMTP id 5F4701001938;\n Mon, 23 Mar 2020 19:59:52 +0000 (UTC)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1584993599;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=Qn7j9XCuQTksTr3zIdonq6tEek7MukL0SqilEftwGWk=;\n b=E5SVzf7rU31jqPHhdR/bTLtFm1oHUE8c/OPNSfpgVImwdJ2EFMkZ8Fsxk1d4PbwqG1cXll\n tFkA/xlemRnOJPlMDfroKlDEACutzcUR2VmBI3jUnSP4Azhen5/aOSmWkoX9aesIlNmK+O\n Zuqo1n2RUssbLj0vJaWcm11+CvpZPf0=", "X-MC-Unique": "L4oqtXC-PUeROObPC1yeog-1", "From": "David Marchand <david.marchand@redhat.com>", "To": "dev@dpdk.org", "Cc": "aconole@redhat.com, ruifeng.wang@arm.com, maicolgabriel@hotmail.com,\n bruce.richardson@intel.com, Gavin Hu <gavin.hu@arm.com>", "Date": "Mon, 23 Mar 2020 20:59:24 +0100", "Message-Id": "<20200323195926.12182-4-david.marchand@redhat.com>", "In-Reply-To": "<20200323195926.12182-1-david.marchand@redhat.com>", "References": "<20200323195926.12182-1-david.marchand@redhat.com>", "MIME-Version": "1.0", "X-Scanned-By": "MIMEDefang 2.84 on 10.5.11.22", "X-Mimecast-Spam-Score": "0", "X-Mimecast-Originator": "redhat.com", "Content-Type": "text/plain; charset=US-ASCII", "Content-Transfer-Encoding": "quoted-printable", "Subject": "[dpdk-dev] [PATCH v4 3/5] test: allow no-huge mode for fast-tests", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "From: Ruifeng Wang <ruifeng.wang@arm.com>\n\nIn environments where hugepage are not available, such as\ncontainers, many cases in fast-tests suite should also run\nif no-huge EAL option is used.\n\nFlag is appended to each case in fast-tests suite to indicate\nwhether it lives with no-huge mode.\nWith the flag, fast-tests suite can be generated based on\ndetected hugepage availability of building environment.\nAll cases will be valid if hugepage is available, whereas\nonly applicable cases will be added if environment has no\nhugepage support.\n\nSuggested-by: Aaron Conole <aconole@redhat.com>\nSigned-off-by: Ruifeng Wang <ruifeng.wang@arm.com>\nReviewed-by: Gavin Hu <gavin.hu@arm.com>\nAcked-by: Aaron Conole <aconole@redhat.com>\n---\n app/test/meson.build | 215 ++++++++++++++++++++++++-------------------\n 1 file changed, 119 insertions(+), 96 deletions(-)", "diff": "diff --git a/app/test/meson.build b/app/test/meson.build\nindex 7ab2b586e1..351d29cb65 100644\n--- a/app/test/meson.build\n+++ b/app/test/meson.build\n@@ -154,87 +154,89 @@ test_deps = ['acl',\n \t'timer'\n ]\n \n-fast_test_names = [\n- 'acl_autotest',\n- 'alarm_autotest',\n- 'atomic_autotest',\n- 'byteorder_autotest',\n- 'cmdline_autotest',\n- 'common_autotest',\n- 'cpuflags_autotest',\n- 'cycles_autotest',\n- 'debug_autotest',\n- 'eal_flags_c_opt_autotest',\n- 'eal_flags_master_opt_autotest',\n- 'eal_flags_n_opt_autotest',\n- 'eal_flags_hpet_autotest',\n- 'eal_flags_no_huge_autotest',\n- 'eal_flags_w_opt_autotest',\n- 'eal_flags_b_opt_autotest',\n- 'eal_flags_vdev_opt_autotest',\n- 'eal_flags_r_opt_autotest',\n- 'eal_flags_mem_autotest',\n- 'eal_flags_file_prefix_autotest',\n- 'eal_flags_misc_autotest',\n- 'eal_fs_autotest',\n- 'errno_autotest',\n- 'event_ring_autotest',\n- 'fib_autotest',\n- 'fib6_autotest',\n- 'func_reentrancy_autotest',\n- 'flow_classify_autotest',\n- 'hash_autotest',\n- 'interrupt_autotest',\n- 'logs_autotest',\n- 'lpm_autotest',\n- 'lpm6_autotest',\n- 'malloc_autotest',\n- 'mbuf_autotest',\n- 'mcslock_autotest',\n- 'memcpy_autotest',\n- 'memory_autotest',\n- 'mempool_autotest',\n- 'memzone_autotest',\n- 'meter_autotest',\n- 'multiprocess_autotest',\n- 'per_lcore_autotest',\n- 'prefetch_autotest',\n- 'rcu_qsbr_autotest',\n- 'red_autotest',\n- 'rib_autotest',\n- 'rib6_autotest',\n- 'ring_autotest',\n- 'rwlock_test1_autotest',\n- 'rwlock_rda_autotest',\n- 'rwlock_rds_wrm_autotest',\n- 'rwlock_rde_wro_autotest',\n- 'sched_autotest',\n- 'spinlock_autotest',\n- 'stack_autotest',\n- 'stack_lf_autotest',\n- 'string_autotest',\n- 'table_autotest',\n- 'tailq_autotest',\n- 'timer_autotest',\n- 'user_delay_us',\n- 'version_autotest',\n- 'crc_autotest',\n- 'delay_us_sleep_autotest',\n- 'distributor_autotest',\n- 'eventdev_common_autotest',\n- 'fbarray_autotest',\n- 'hash_readwrite_func_autotest',\n- 'ipsec_autotest',\n- 'kni_autotest',\n- 'kvargs_autotest',\n- 'member_autotest',\n- 'metrics_autotest',\n- 'power_cpufreq_autotest',\n- 'power_autotest',\n- 'power_kvm_vm_autotest',\n- 'reorder_autotest',\n- 'service_autotest',\n- 'thash_autotest',\n+# Each test is marked with flag true/false\n+# to indicate whether it can run in no-huge mode.\n+fast_tests = [\n+ ['acl_autotest', true],\n+ ['alarm_autotest', false],\n+ ['atomic_autotest', false],\n+ ['byteorder_autotest', true],\n+ ['cmdline_autotest', true],\n+ ['common_autotest', true],\n+ ['cpuflags_autotest', true],\n+ ['cycles_autotest', true],\n+ ['debug_autotest', true],\n+ ['eal_flags_c_opt_autotest', false],\n+ ['eal_flags_master_opt_autotest', false],\n+ ['eal_flags_n_opt_autotest', false],\n+ ['eal_flags_hpet_autotest', false],\n+ ['eal_flags_no_huge_autotest', false],\n+ ['eal_flags_w_opt_autotest', false],\n+ ['eal_flags_b_opt_autotest', false],\n+ ['eal_flags_vdev_opt_autotest', false],\n+ ['eal_flags_r_opt_autotest', false],\n+ ['eal_flags_mem_autotest', false],\n+ ['eal_flags_file_prefix_autotest', false],\n+ ['eal_flags_misc_autotest', false],\n+ ['eal_fs_autotest', true],\n+ ['errno_autotest', true],\n+ ['event_ring_autotest', true],\n+ ['fib_autotest', true],\n+ ['fib6_autotest', true],\n+ ['func_reentrancy_autotest', false],\n+ ['flow_classify_autotest', false],\n+ ['hash_autotest', true],\n+ ['interrupt_autotest', true],\n+ ['logs_autotest', true],\n+ ['lpm_autotest', true],\n+ ['lpm6_autotest', true],\n+ ['malloc_autotest', false],\n+ ['mbuf_autotest', false],\n+ ['mcslock_autotest', false],\n+ ['memcpy_autotest', true],\n+ ['memory_autotest', false],\n+ ['mempool_autotest', false],\n+ ['memzone_autotest', false],\n+ ['meter_autotest', true],\n+ ['multiprocess_autotest', false],\n+ ['per_lcore_autotest', true],\n+ ['prefetch_autotest', true],\n+ ['rcu_qsbr_autotest', true],\n+ ['red_autotest', true],\n+ ['rib_autotest', true],\n+ ['rib6_autotest', true],\n+ ['ring_autotest', true],\n+ ['rwlock_test1_autotest', true],\n+ ['rwlock_rda_autotest', true],\n+ ['rwlock_rds_wrm_autotest', true],\n+ ['rwlock_rde_wro_autotest', true],\n+ ['sched_autotest', true],\n+ ['spinlock_autotest', true],\n+ ['stack_autotest', false],\n+ ['stack_lf_autotest', false],\n+ ['string_autotest', true],\n+ ['table_autotest', true],\n+ ['tailq_autotest', true],\n+ ['timer_autotest', false],\n+ ['user_delay_us', true],\n+ ['version_autotest', true],\n+ ['crc_autotest', true],\n+ ['delay_us_sleep_autotest', true],\n+ ['distributor_autotest', false],\n+ ['eventdev_common_autotest', true],\n+ ['fbarray_autotest', true],\n+ ['hash_readwrite_func_autotest', false],\n+ ['ipsec_autotest', true],\n+ ['kni_autotest', false],\n+ ['kvargs_autotest', true],\n+ ['member_autotest', true],\n+ ['metrics_autotest', true],\n+ ['power_cpufreq_autotest', false],\n+ ['power_autotest', true],\n+ ['power_kvm_vm_autotest', false],\n+ ['reorder_autotest', true],\n+ ['service_autotest', true],\n+ ['thash_autotest', true],\n ]\n \n perf_test_names = [\n@@ -334,13 +336,13 @@ if dpdk_conf.has('RTE_LIBRTE_RING_PMD')\n \ttest_sources += 'test_link_bonding_mode4.c'\n \ttest_sources += 'sample_packet_forward.c'\n \ttest_sources += 'test_pdump.c'\n-\tfast_test_names += 'ring_pmd_autotest'\n+\tfast_tests += [['ring_pmd_autotest', true]]\n \tperf_test_names += 'ring_pmd_perf_autotest'\n-\tfast_test_names += 'event_eth_tx_adapter_autotest'\n-\tfast_test_names += 'bitratestats_autotest'\n-\tfast_test_names += 'latencystats_autotest'\n+\tfast_tests += [['event_eth_tx_adapter_autotest', false]]\n+\tfast_tests += [['bitratestats_autotest', true]]\n+\tfast_tests += [['latencystats_autotest', true]]\n \tdriver_test_names += 'link_bonding_mode4_autotest'\n-\tfast_test_names += 'pdump_autotest'\n+\tfast_tests += [['pdump_autotest', true]]\n endif\n \n if dpdk_conf.has('RTE_LIBRTE_POWER')\n@@ -368,7 +370,7 @@ if dpdk_conf.has('RTE_LIBRTE_COMPRESSDEV')\n \t\ttest_dep_objs += compress_test_dep\n \t\ttest_sources += 'test_compressdev.c'\n \t\ttest_deps += 'compressdev'\n-\t\tfast_test_names += 'compressdev_autotest'\n+\t\tfast_tests += [['compressdev_autotest', false]]\n \tendif\n endif\n \n@@ -395,6 +397,17 @@ dpdk_test = executable('dpdk-test',\n \tinstall_rpath: driver_install_path,\n \tinstall: true)\n \n+has_hugepage = true\n+if is_linux\n+\tcheck_hugepage = run_command('cat',\n+\t\t\t\t '/proc/sys/vm/nr_hugepages')\n+\tif (check_hugepage.returncode() != 0 or\n+\t check_hugepage.stdout().strip() == '0')\n+\t\thas_hugepage = false\n+\tendif\n+endif\n+message('hugepage availability: @0@'.format(has_hugepage))\n+\n # some perf tests (eg: memcpy perf autotest)take very long\n # to complete, so timeout to 10 minutes\n timeout_seconds = 600\n@@ -405,25 +418,35 @@ num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()\n \n default_test_args = [num_cores_arg]\n \n-foreach arg : fast_test_names\n+foreach arg : fast_tests\n \ttest_args = default_test_args\n+\trun_test = true\n+\tif not has_hugepage\n+\t\tif arg[1]\n+\t\t\ttest_args += ['--no-huge', '-m', '2048']\n+\t\telse\n+\t\t\trun_test = false\n+\t\tendif\n+\tendif\n \n \tif (get_option('default_library') == 'shared' and\n-\t\targ == 'event_eth_tx_adapter_autotest')\n+\t\targ[0] == 'event_eth_tx_adapter_autotest')\n \t\tforeach drv:dpdk_drivers\n \t\t\ttest_args += ['-d', drv.full_path().split('.a')[0] + '.so']\n \t\tendforeach\n \tendif\n \tif is_linux\n-\t\ttest_args += ['--file-prefix=@0@'.format(arg)]\n+\t\ttest_args += ['--file-prefix=@0@'.format(arg[0])]\n \tendif\n \n-\ttest(arg, dpdk_test,\n-\t\tenv : ['DPDK_TEST=' + arg],\n-\t\targs : test_args,\n-\t\ttimeout : timeout_seconds_fast,\n-\t\tis_parallel : false,\n-\t\tsuite : 'fast-tests')\n+\tif run_test\n+\t\ttest(arg[0], dpdk_test,\n+\t\t\tenv : ['DPDK_TEST=' + arg[0]],\n+\t\t\targs : test_args,\n+\t\t\ttimeout : timeout_seconds_fast,\n+\t\t\tis_parallel : false,\n+\t\t\tsuite : 'fast-tests')\n+\tendif\n endforeach\n \n foreach arg : perf_test_names\n", "prefixes": [ "v4", "3/5" ] }{ "id": 67038, "url": "