Linux excludes hugepages from core dump by default.
Describe the means to override this behavior
as well as implications of doing so.
Only mapped hugepages will be included in core dump,
because Linux EAL explicitly excludes reserved regions.
Signed-off-by: Dmitry Kozlyuk <dmitry.kozl...@gmail.com>
---
 doc/guides/linux_gsg/build_sample_apps.rst | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/doc/guides/linux_gsg/build_sample_apps.rst 
b/doc/guides/linux_gsg/build_sample_apps.rst
index 4f99617233..86d8712e69 100644
--- a/doc/guides/linux_gsg/build_sample_apps.rst
+++ b/doc/guides/linux_gsg/build_sample_apps.rst
@@ -180,6 +180,24 @@ Similarly, on a four socket system, to allocate 1 GB 
memory on each of sockets 0
 No memory will be reserved on any CPU socket that is not explicitly 
referenced, for example, socket 3 in this case.
 If the DPDK cannot allocate enough memory on each socket, the EAL 
initialization fails.
 
+Whether hugepages are included in core dump is controlled by 
``/proc/<pid>/coredump_filter``.
+It is ``33`` (hexadecimal) by default, which means that hugepages are exclued 
from core dump.
+This setting is per-process and is inherited.  Refer to ``core(5)`` for 
details.
+To include mapped hugepages in core dump, set bit 6 (``0x40``) in the parent 
process or shell
+before running a DPDK application:
+
+.. code-block:: shell
+
+    echo 0x73 > /proc/self/coredump_filter
+    ./rte-app ...
+
+.. note::
+
+    Including hugepages in core dump file increases its size,
+    which may fill the storage or overload the transport.
+    Hugepages typically hold data processed by the application,
+    like network packets, which may contain sensitive information.
+
 Additional Sample Applications
 ------------------------------
 
-- 
2.38.4

Reply via email to