Skip to content

Commit

Permalink
doc: explain including hugepages in Linux core dump
Browse files Browse the repository at this point in the history
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.kozliuk@gmail.com>
  • Loading branch information
PlushBeaver authored and tmonjalo committed Nov 19, 2024
1 parent cbe57f3 commit 036f72d
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions doc/guides/linux_gsg/build_sample_apps.rst
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,25 @@ 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 excluded 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
./dpdk-application ...
.. 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
------------------------------

Expand Down

0 comments on commit 036f72d

Please sign in to comment.