From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aaron Conole Subject: [PATCH v2 10/25] eal: Do not panic on log failures Date: Wed, 8 Feb 2017 13:51:27 -0500 Message-ID: <20170208185142.28678-11-aconole@redhat.com> References: <20170208185142.28678-1-aconole@redhat.com> Cc: Stephen Hemminger , Bruce Richardson To: dev@dpdk.org Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 6E46A282 for ; Wed, 8 Feb 2017 19:51:49 +0100 (CET) In-Reply-To: <20170208185142.28678-1-aconole@redhat.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" When log initialization fails, it's generally because the fopencookie failed. While this is rare in practice, it could happen, and it is likely because of memory pressure. So, flag the error, and allow the user to retry. Signed-off-by: Aaron Conole --- lib/librte_eal/linuxapp/eal/eal.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c index debb083..1d828bf 100644 --- a/lib/librte_eal/linuxapp/eal/eal.c +++ b/lib/librte_eal/linuxapp/eal/eal.c @@ -818,8 +818,13 @@ rte_eal_init(int argc, char **argv) rte_config_init(); - if (rte_eal_log_init(logid, internal_config.syslog_facility) < 0) - rte_panic("Cannot init logs\n"); + if (rte_eal_log_init(logid, internal_config.syslog_facility) < 0) { + RTE_LOG(ERR, EAL, "Cannot init logging\n"); + fprintf(stderr, "EAL: ERROR - cannot init logging.\n"); + rte_errno = EIO; + rte_atomic32_clear(&run_once); + return -1; + } if (rte_eal_pci_init() < 0) rte_panic("Cannot init PCI\n"); -- 2.9.3