Re: [PATCH v8] coredump: Add bit 9 of coredump_filter for pre-exit files before dumping
From: Randy Dunlap
Date: Sat Aug 08 2026 - 01:56:25 EST
Hi,
On 8/7/26 10:27 PM, Xin Zhao wrote:
> diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst
> index db6167bef..aee03858b 100644
> --- a/Documentation/filesystems/proc.rst
> +++ b/Documentation/filesystems/proc.rst
> @@ -1927,7 +1927,7 @@ will be dumped when the <pid> process is dumped. coredump_filter is a bitmask
> of memory types. If a bit of the bitmask is set, memory segments of the
> corresponding memory type are dumped, otherwise they are not dumped.
>
> -The following 9 memory types are supported:
> +The following 10 memory types are supported:
>
> - (bit 0) anonymous private memory
> - (bit 1) anonymous shared memory
> @@ -1939,6 +1939,7 @@ The following 9 memory types are supported:
> - (bit 6) hugetlb shared memory
> - (bit 7) DAX private memory
> - (bit 8) DAX shared memory
> + - (bit 9) fd list
>
> Note that MMIO pages such as frame buffer are never dumped and vDSO pages
> are always dumped regardless of the bitmask status.
> @@ -1946,13 +1947,19 @@ The following 9 memory types are supported:
> Note that bits 0-4 don't affect hugetlb or DAX memory. hugetlb memory is
> only affected by bit 5-6, and DAX is only affected by bits 7-8.
>
> -The default value of coredump_filter is 0x33; this means all anonymous memory
> -segments, ELF header pages and hugetlb private memory are dumped.
> + Note that bit 9 is set by default because tools like systemd-coredump go
> + through the fds. If you do not set bit 9, files that are not referenced by
> + any VMA are released before dumping core. Some file release logic, such as
> + exiting flock or releasing references to shared buffers is executed much
> + earlier.
> +
> +The default value of coredump_filter is 0x233; this means all anonymous memory
> +segments, ELF header pages, hugetlb private memory and fd list are dumped.
>
> If you don't want to dump all shared memory segments attached to pid 1234,
> -write 0x31 to the process's proc file::
> +write 0x231 to the process's proc file::
>
> - $ echo 0x31 > /proc/1234/coredump_filter
> + $ echo 0x231 > /proc/1234/coredump_filter
>
> When a new process is created, the process inherits the bitmask status from its
> parent. It is useful to set up coredump_filter before the program runs.
The proc.rst update LGTM. Thanks.
Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> # for proc.rst
--
~Randy