Thread (11 messages) flat view 11 messages, 2 authors, 2022-01-04

Re: [PATCH 5/5] arm64: mte: Document the core dump file format

From: Luis Machado <hidden>
Date: 2022-01-03 17:29:39

On 12/8/21 9:19 AM, Catalin Marinas wrote:
quoted hunk ↗ jump to hunk
Add the program header definition and data layout for the
PT_ARM_MEMTAG_MTE segments.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
---
  .../arm64/memory-tagging-extension.rst        | 22 +++++++++++++++++++
  1 file changed, 22 insertions(+)
diff --git a/Documentation/arm64/memory-tagging-extension.rst b/Documentation/arm64/memory-tagging-extension.rst
index 7b99c8f428eb..34c7eb47f61e 100644
--- a/Documentation/arm64/memory-tagging-extension.rst
+++ b/Documentation/arm64/memory-tagging-extension.rst
@@ -213,6 +213,28 @@ address ABI control and MTE configuration of a process as per the
  Documentation/arm64/tagged-address-abi.rst and above. The corresponding
  ``regset`` is 1 element of 8 bytes (``sizeof(long))``).
  
+Core dump support
+-----------------
+
+The allocation tags for user memory mapped with ``PROT_MTE`` are dumped
+in the core file as additional ``PT_ARM_MEMTAG_MTE`` segments. The
+program header for such segment is defined as:
+
+:``p_type``: ``PT_ARM_MEMTAG_MTE``
+:``p_flags``: 0
+:``p_offset``: segment file offset
+:``p_vaddr``: segment virtual address, same as the corresponding
+  ``PT_LOAD`` segment
+:``p_paddr``: 0
+:``p_filesz``: segment size in file, calculated as ``p_mem_sz / 16 / 2``
For the sake of making things extra clear, I'd describe what the 
constants (16 and 2) mean.
+:``p_memsz``: segment size in memory, same as the corresponding
+  ``PT_LOAD`` segment
+:``p_align``: 0
+
+The tags are stored in the core file at ``p_offset`` as two 4-bit tags
+in a byte. With the tag granule of 16 bytes, a 4K page requires 128
+bytes in the core file.
+
  Example of correct usage
  ========================
  
Otherwise looks good to me.

Acked-by: Luis Machado <redacted>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help