On 9/7/2020 12:34 PM, Wei Hu (Xavier) wrote: > Hi,Ferruh Yigit > > On 2020/9/4 18:34, Ferruh Yigit wrote: >> On 8/25/2020 12:53 PM, Wei Hu (Xavier) wrote: >>> From: "Wei Hu (Xavier)" <xavier.hu...@huawei.com> >>> >>> This patch changes the log level from NOTICE to INFO. >>> >>> Signed-off-by: Wei Hu (Xavier) <xavier.hu...@huawei.com> >>> --- >>> drivers/net/hns3/hns3_ethdev.c | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c >>> index fca035d4f..3827d3277 100644 >>> --- a/drivers/net/hns3/hns3_ethdev.c >>> +++ b/drivers/net/hns3/hns3_ethdev.c >>> @@ -5744,5 +5744,5 @@ static struct rte_pci_driver rte_hns3_pmd = { >>> RTE_PMD_REGISTER_PCI(net_hns3, rte_hns3_pmd); >>> RTE_PMD_REGISTER_PCI_TABLE(net_hns3, pci_id_hns3_map); >>> RTE_PMD_REGISTER_KMOD_DEP(net_hns3, "* igb_uio | vfio-pci"); >>> -RTE_LOG_REGISTER(hns3_logtype_init, pmd.net.hns3.init, NOTICE); >>> -RTE_LOG_REGISTER(hns3_logtype_driver, pmd.net.hns3.driver, NOTICE); >>> +RTE_LOG_REGISTER(hns3_logtype_init, pmd.net.hns3.init, INFO); >>> +RTE_LOG_REGISTER(hns3_logtype_driver, pmd.net.hns3.driver, INFO); >>> >> >> Why making the PMD more verbose by default? You can update the log level >> dynamically when need to be more verbose. >> >> Common approach is to set default PMD log level is to 'NOTICE', I think this >> is >> good to make applications more usable. > > Currently hns3 PMD driver invokes the private macro named hns3_info in > several places, we found that these information wouldn't never be logged. > hns3_info -> rte_log(RTE_LOG_INFO, hns3_logtype_dirver,...) > > To display the related log information, we need to execute the following > code in the application, right? Is there any other way? > extern int hns3_logtype_driver; > rte_log_set_level(hns3_logtype_driver, RTE_LOG_INFO); >
Hi Xavier, This is mainly it. Setting log level to something ">= 'RTE_LOG_INFO'" using 'rte_log_set_level()' will display INFO level logs. There are some variant functions too, 'rte_log_set_level_pattern()' & 'rte_log_set_level_regexp()', these let use change log level of multiple components, like "pmd.net.*" Another way is provide the log level to application via eal command "--log-level=<type-match>:<int>", like "--log-level=*:debug". This arg is wrapper to above APIs. Or if you are using testpmd, can change the log level via command "set log" dynamically, like "set log pmd.net.hns3*". Applications can do something similar to change log levels on demand based on their need, so components doesn't need to be verbose by default.