mariadb/storage/innobase/buf
Daniel Black b600f30786 MDEV-10814: Innodb large allocations - madvise - Don't dump
Note: Linux only

Core dumps of large buffer pool pages take time and space
and pose potential data expose in scenarios where data-at-rest
encryption is deployed.

Here we use madvise(MADV_DONT_DUMP) on large memory allocations
used by the innodb buffer pool, log_sys and recv_sys. The effect
of this system call is that these memory areas will not appear in
a core dump. Data from these buffers is rarely useful in fault
diagnosis.

log_sys and recv_sys structures now use large memory allocations
for their large buffer.

Debug builds don't include the madvise syscall and as such will
include full core dumps.

A function, buf_madvise_do_dump, is added but never called. It
is there to be called from a debugger to re-enable the core
dumping of all of these pages if for some reason the entire
contents of these buffers are needed.

Idea thanks to Hartmut Holzgraefe
2018-02-17 20:00:56 +11:00
..
buf0buddy.cc Merge branch 'github/10.1' into 10.2 2018-02-06 14:50:50 +01:00
buf0buf.cc MDEV-10814: Innodb large allocations - madvise - Don't dump 2018-02-17 20:00:56 +11:00
buf0checksum.cc MDEV-11939: innochecksum mistakes a file for an encrypted one (page 0 invalid) 2017-08-03 08:29:36 +03:00
buf0dblwr.cc MDEV-11369 Instant ADD COLUMN for InnoDB 2017-10-06 09:50:10 +03:00
buf0dump.cc Merge branch 'github/10.0' into 10.1 2018-02-02 10:09:44 +01:00
buf0flu.cc MDEV-15091 : Windows, 64bit: reenable and fix warning C4267 (conversion from 'size_t' to 'type', possible loss of data) 2018-02-06 12:55:58 +00:00
buf0lru.cc Merge branch 'github/10.1' into 10.2 2018-02-06 14:50:50 +01:00
buf0rea.cc Adjust the instrumentation and test 2017-10-18 11:53:45 +03:00