[dpdk-dev] [PATCH v5 2/3] docs: add keep alive sample app guide & release notes

2015-11-19 Thread Thomas Monjalon
2015-11-18 14:05, Remy Horton:
> --- a/doc/guides/rel_notes/release_2_2.rst
> +++ b/doc/guides/rel_notes/release_2_2.rst
> @@ -102,6 +102,7 @@ New Features
>  
>  * **Added port hotplug support to xenvirt.**
>  
> +* **Added keepalive support to EAL.**
>  
>  Resolved Issues
>  ---
> @@ -207,6 +208,8 @@ Libraries
>  Examples
>  
>  
> +* **l2fwd-keepalive: Added keep-alive demonstration.**
> +

It is the "Resolved Issues" section.
If you agree, I'll merge it with the above entry.


[dpdk-dev] [PATCH v5 2/3] docs: add keep alive sample app guide & release notes

2015-11-19 Thread Remy Horton


On 19/11/2015 11:32, Thomas Monjalon wrote:
> 2015-11-18 14:05, Remy Horton:
>> --- a/doc/guides/rel_notes/release_2_2.rst
>> +++ b/doc/guides/rel_notes/release_2_2.rst
>> @@ -102,6 +102,7 @@ New Features
>>
>>   * **Added port hotplug support to xenvirt.**
>>
>> +* **Added keepalive support to EAL.**
>>
>>   Resolved Issues
>>   ---
>> @@ -207,6 +208,8 @@ Libraries
>>   Examples
>>   
>>
>> +* **l2fwd-keepalive: Added keep-alive demonstration.**
>> +
>
> It is the "Resolved Issues" section.
> If you agree, I'll merge it with the above entry.
>

Ok with me. Ditto with example/Makefile.

..Remy


[dpdk-dev] [PATCH v5 2/3] docs: add keep alive sample app guide & release notes

2015-11-18 Thread Remy Horton
Signed-off-by: Maryam Tahhan 
Signed-off-by: John J Browne 
Signed-off-by: Remy Horton 
---
 doc/api/doxy-api-index.md   |   1 +
 doc/guides/rel_notes/release_2_2.rst|   3 +
 doc/guides/sample_app_ug/index.rst  |   1 +
 doc/guides/sample_app_ug/keep_alive.rst | 191 
 4 files changed, 196 insertions(+)
 create mode 100644 doc/guides/sample_app_ug/keep_alive.rst

diff --git a/doc/api/doxy-api-index.md b/doc/api/doxy-api-index.md
index 72ac3c4..f2c0320 100644
--- a/doc/api/doxy-api-index.md
+++ b/doc/api/doxy-api-index.md
@@ -146,4 +146,5 @@ There are many libraries, so their headers may be grouped 
by topics:
   [EAL config] (@ref rte_eal.h),
   [common] (@ref rte_common.h),
   [ABI compat] (@ref rte_compat.h),
+  [keepalive]  (@ref rte_keepalive.h),
   [version](@ref rte_version.h)
diff --git a/doc/guides/rel_notes/release_2_2.rst 
b/doc/guides/rel_notes/release_2_2.rst
index 0781ae6..c00ab26 100644
--- a/doc/guides/rel_notes/release_2_2.rst
+++ b/doc/guides/rel_notes/release_2_2.rst
@@ -102,6 +102,7 @@ New Features

 * **Added port hotplug support to xenvirt.**

+* **Added keepalive support to EAL.**

 Resolved Issues
 ---
@@ -207,6 +208,8 @@ Libraries
 Examples
 

+* **l2fwd-keepalive: Added keep-alive demonstration.**
+

 Other
 ~
diff --git a/doc/guides/sample_app_ug/index.rst 
b/doc/guides/sample_app_ug/index.rst
index 8ae86c0..1f62ef5 100644
--- a/doc/guides/sample_app_ug/index.rst
+++ b/doc/guides/sample_app_ug/index.rst
@@ -49,6 +49,7 @@ Sample Applications User Guide
 ipv4_multicast
 ip_reassembly
 kernel_nic_interface
+keep_alive
 l2_forward_job_stats
 l2_forward_real_virtual
 l3_forward
diff --git a/doc/guides/sample_app_ug/keep_alive.rst 
b/doc/guides/sample_app_ug/keep_alive.rst
new file mode 100644
index 000..080811b
--- /dev/null
+++ b/doc/guides/sample_app_ug/keep_alive.rst
@@ -0,0 +1,191 @@
+
+..  BSD LICENSE
+Copyright(c) 2015 Intel Corporation. All rights reserved.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+* Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer in
+the documentation and/or other materials provided with the
+distribution.
+* Neither the name of Intel Corporation nor the names of its
+contributors may be used to endorse or promote products derived
+from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Keep Alive Sample Application
+=
+
+The Keep Alive application is a simple example of a
+heartbeat/watchdog for packet processing cores. It demonstrates how
+to detect 'failed' DPDK cores and notify a fault management entity
+of this failure. Its purpose is to ensure the failure of the core
+does not result in a fault that is not detectable by a management
+entity.
+
+
+Overview
+
+
+The application demonstrates how to protect against 'silent outages'
+on packet processing cores. A Keep Alive Monitor Agent Core (master)
+monitors the state of packet processing cores (worker cores) by
+dispatching pings at a regular time interval (default is 5ms) and
+monitoring the state of the cores. Cores states are: Alive, MIA, Dead
+or Buried. MIA indicates a missed ping, and Dead indicates two missed
+pings within the specified time interval. When a core is Dead, a
+callback function is invoked to restart the packet processing core;
+A real life application might use this callback function to notify a
+higher level fault management entity of the core failure in order to
+take the appropriate corrective action.
+
+Note: Only the worker cores are monitored. A local (on the host) mechanism
+or agent to supervise the Keep Alive Monitor Agent Core DPDK core is required
+to detect its failure.
+
+Note: This