From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id CDDB0C432 for ; Wed, 15 Jun 2016 17:25:53 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP; 15 Jun 2016 08:25:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,476,1459839600"; d="scan'208";a="1002558546" Received: from rhorton-mobl.ger.corp.intel.com (HELO VM.ir.intel.com) ([163.33.228.155]) by fmsmga002.fm.intel.com with ESMTP; 15 Jun 2016 08:25:52 -0700 From: Remy Horton To: thomas.monjalon@6wind.com, John McNamara Cc: dev@dpdk.org Date: Wed, 15 Jun 2016 16:25:48 +0100 Message-Id: <1466004351-18512-1-git-send-email-remy.horton@intel.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1465982245-1162-1-git-send-email-remy.horton@intel.com> Subject: [dpdk-dev] [PATCH v4 0/3] Keep-alive enhancements X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jun 2016 15:25:54 -0000 This patchset adds enhancements to the keepalive core monitoring and reporting sub-system. The first is support for idled (sleeping and frequency-stepped) CPU cores, and the second is support for applications to be notified of active as well as faulted cores. The latter is to allow core state to be relayed to external (secondary) processes, which is demonstrated by changes to the l2fwd-keepalive example. -- v4 changes * Use RTE_KA_STATE_ prefix instead of RTE_ (namespace issues) v3 changes * Rebased to master * Exposed keepalive state enumerations * Changed keepalive state enumerations to use RTE_ prefix * Added missing parameter documentation * Doc changes squashed v2 changes: * Some date & typos fixups * State enum made public and extended with new states * Generalised 'alive' callback to all states * Last-alive shows gone-to-sleep time for idle cores * Removed some redundant sanity checks * Last-alive time exposed to application * #define'd semaphore timeout * Agent checks for dead keepalive Remy Horton (3): eal: export keepalive state enumerations eal: add additional keepalive callbacks examples/l2fwd-keepalive: add IPC liveness reporting doc/guides/rel_notes/release_16_07.rst | 6 + examples/Makefile | 3 +- examples/l2fwd-keepalive/Makefile | 5 +- examples/l2fwd-keepalive/ka-agent/Makefile | 49 ++++++++ examples/l2fwd-keepalive/ka-agent/main.c | 150 ++++++++++++++++++++++++ examples/l2fwd-keepalive/main.c | 22 +++- examples/l2fwd-keepalive/shm.c | 129 ++++++++++++++++++++ examples/l2fwd-keepalive/shm.h | 89 ++++++++++++++ lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 + lib/librte_eal/common/include/rte_keepalive.h | 63 +++++++++- lib/librte_eal/common/rte_keepalive.c | 64 +++++++--- lib/librte_eal/linuxapp/eal/rte_eal_version.map | 2 + 12 files changed, 562 insertions(+), 21 deletions(-) create mode 100644 examples/l2fwd-keepalive/ka-agent/Makefile create mode 100644 examples/l2fwd-keepalive/ka-agent/main.c create mode 100644 examples/l2fwd-keepalive/shm.c create mode 100644 examples/l2fwd-keepalive/shm.h -- 2.5.5