From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 52994C404 for ; Wed, 15 Jun 2016 11:17:32 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP; 15 Jun 2016 02:17:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,475,1459839600"; d="scan'208";a="998005262" Received: from rhorton-mobl.ger.corp.intel.com (HELO VM.ir.intel.com) ([163.33.228.155]) by orsmga002.jf.intel.com with ESMTP; 15 Jun 2016 02:17:26 -0700 From: Remy Horton To: thomas.monjalon@6wind.com, John McNamara Cc: dev@dpdk.org Date: Wed, 15 Jun 2016 10:17:22 +0100 Message-Id: <1465982245-1162-1-git-send-email-remy.horton@intel.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1463563818-2249-1-git-send-email-remy.horton@intel.com> Subject: [dpdk-dev] [PATCH v3 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 09:17:32 -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 l2fed-keepalive example. -- v3 changes * Rebased to master * 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 | 4 +- examples/l2fwd-keepalive/ka-agent/Makefile | 48 ++++++++ examples/l2fwd-keepalive/ka-agent/main.c | 150 ++++++++++++++++++++++++ examples/l2fwd-keepalive/main.c | 22 +++- examples/l2fwd-keepalive/shm.c | 128 ++++++++++++++++++++ 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 | 1 + 12 files changed, 558 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