This is a tradeoff point. If we changed the log level of dmadev, it is difficult to know where the test case fails.
So I prefer add more meaningful information, at least print out the function name. And V19 add format function name in log default, so the rte_dmadev's log will show like: rte_dmadev_configure(): Invalid dev_id=64 rte_dmadev_configure(): Device 4 configure zero vchans rte_dmadev_configure(): Device 4 configure too many vchans rte_dmadev_configure(): Device 4 don't support silent test_dmadev_configure Passed rte_dmadev_vchan_setup(): Invalid dev_id=64 rte_dmadev_vchan_setup(): Device 4 number of descriptors invalid rte_dmadev_vchan_setup(): Device 4 vchan out range! rte_dmadev_vchan_setup(): Device 4 direction invalid! rte_dmadev_vchan_setup(): Device 4 direction invalid! rte_dmadev_vchan_setup(): Device 4 don't support mem2dev transfer rte_dmadev_vchan_setup(): Device 4 don't support dev2mem transfer rte_dmadev_vchan_setup(): Device 4 don't support dev2dev transfer rte_dmadev_vchan_setup(): Device 4 number of descriptors invalid rte_dmadev_vchan_setup(): Device 4 number of descriptors invalid rte_dmadev_vchan_setup(): Device 4 source port type invalid rte_dmadev_vchan_setup(): Device 4 destination port type invalid On 2021/9/2 22:11, Walsh, Conor wrote: > Hi Chengwen, > > The output from the API tests is not very straightforward to interpret if you > are not familiar with these tests. > Could we change the log level of the dmadev library before and after the API > tests using something similar to > The code I have included inline below? > >> +static int >> +testsuite_setup(uint16_t dev_id) >> +{ >> + test_dev_id = dev_id; >> + invalid_dev_id = RTE_DMADEV_MAX_DEVS; >> + >> + src = rte_malloc("dmadev_test_src", TEST_MEMCPY_SIZE, 0); >> + if (src == NULL) >> + return -ENOMEM; >> + dst = rte_malloc("dmadev_test_dst", TEST_MEMCPY_SIZE, 0); >> + if (dst == NULL) >> + return -ENOMEM; > > /* Set dmadev log level to critical to suppress unnecessary output > during API tests. */ > rte_log_set_level_pattern("lib.dmadev", RTE_LOG_CRIT); >> + >> + total = 0; >> + passed = 0; >> + failed = 0; >> + >> + return 0; >> +} >> + >> +static void >> +testsuite_teardown(void) >> +{ >> + rte_free(src); >> + rte_free(dst); >> + /* Ensure the dmadev is stopped. */ >> + rte_dmadev_stop(test_dev_id); > rte_log_set_level_pattern("lib.dmadev", RTE_LOG_INFO); >> +} > > This change would bring your output down from: > > ### Test dmadev infrastructure using skeleton driver > test_dmadev_get_dev_id Passed > test_dmadev_is_valid_dev Passed > test_dmadev_count Passed > Invalid dev_id=64 > test_dmadev_info_get Passed > Invalid dev_id=64 > Device 1 configure zero vchans > Device 1 configure too many vchans > Device 1 don't support silent > test_dmadev_configure Passed > Invalid dev_id=64 > Device 1 number of descriptors invalid > Device 1 vchan out range! > Device 1 direction invalid! > Device 1 direction invalid! > Device 1 don't support mem2dev transfer > Device 1 don't support dev2mem transfer > Device 1 don't support dev2dev transfer > Device 1 number of descriptors invalid > Device 1 number of descriptors invalid > Device 1 source port type invalid > Device 1 destination port type invalid > test_dmadev_vchan_setup Passed > Invalid dev_id=64 > Invalid dev_id=64 > Device 1 must be stopped to allow configuration > Device 1 must be stopped to allow configuration > test_dmadev_start_stop Passed > Invalid dev_id=64 > Invalid dev_id=64 > Invalid dev_id=64 > Device 1 vchan 1 out of range > Device 1 vchan 1 out of range > test_dmadev_stats Passed > test_dmadev_completed Passed > test_dmadev_completed_status Passed > Device 1 already stopped > Total tests : 10 > Passed : 10 > Failed : 0 > skeldma_remove(): Remove dma_skeleton dmadev > > To: > > ### Test dmadev infrastructure using skeleton driver > test_dmadev_get_dev_id Passed > test_dmadev_is_valid_dev Passed > test_dmadev_count Passed > test_dmadev_info_get Passed > test_dmadev_configure Passed > test_dmadev_vchan_setup Passed > test_dmadev_start_stop Passed > test_dmadev_stats Passed > test_dmadev_completed Passed > test_dmadev_completed_status Passed > Total tests : 10 > Passed : 10 > Failed : 0 > skeldma_remove(): Remove dma_skeleton dmadev > > Thanks, > Conor. > . >