Commit 4592af2e authored by Marko Mäkelä's avatar Marko Mäkelä

Work around missing MSAN instrumentation

Let us skip the recently added test main.mysql-interactive if
an instrumented ncurses library is not available.

In InnoDB, let us work around an uninstrumented libnuma, by
declaring that the objects returned by numa_get_mems_allowed()
are initialized.
parent 09d991d0
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
--echo # --echo #
source include/not_embedded.inc; source include/not_embedded.inc;
source include/not_windows.inc; source include/not_windows.inc;
# this would need an instrumented ncurses library
source include/not_msan.inc;
error 0,1; error 0,1;
exec $MYSQL -V|grep -q readline; exec $MYSQL -V|grep -q readline;
......
...@@ -82,6 +82,8 @@ struct set_numa_interleave_t ...@@ -82,6 +82,8 @@ struct set_numa_interleave_t
if (srv_numa_interleave) { if (srv_numa_interleave) {
struct bitmask *numa_mems_allowed = numa_get_mems_allowed(); struct bitmask *numa_mems_allowed = numa_get_mems_allowed();
MEM_MAKE_DEFINED(numa_mems_allowed,
sizeof *numa_mems_allowed);
ib::info() << "Setting NUMA memory policy to" ib::info() << "Setting NUMA memory policy to"
" MPOL_INTERLEAVE"; " MPOL_INTERLEAVE";
if (set_mempolicy(MPOL_INTERLEAVE, if (set_mempolicy(MPOL_INTERLEAVE,
...@@ -1072,6 +1074,7 @@ inline bool buf_pool_t::chunk_t::create(size_t bytes) ...@@ -1072,6 +1074,7 @@ inline bool buf_pool_t::chunk_t::create(size_t bytes)
if (srv_numa_interleave) if (srv_numa_interleave)
{ {
struct bitmask *numa_mems_allowed= numa_get_mems_allowed(); struct bitmask *numa_mems_allowed= numa_get_mems_allowed();
MEM_MAKE_DEFINED(numa_mems_allowed, sizeof *numa_mems_allowed);
if (mbind(mem, mem_size(), MPOL_INTERLEAVE, if (mbind(mem, mem_size(), MPOL_INTERLEAVE,
numa_mems_allowed->maskp, numa_mems_allowed->size, numa_mems_allowed->maskp, numa_mems_allowed->size,
MPOL_MF_MOVE)) MPOL_MF_MOVE))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment