impala-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Henry Robinson (Code Review)" <>
Subject [Impala-ASF-CR] IMPALA-5666: ASAN poisoning for MemPool and BufferPool
Date Sat, 05 Aug 2017 00:24:24 GMT
Henry Robinson has uploaded a new patch set (#2).

Change subject: IMPALA-5666: ASAN poisoning for MemPool and BufferPool

IMPALA-5666: ASAN poisoning for MemPool and BufferPool

"If you poison us, do we not die?"

* Use ASAN_[UN]POISON_MEMORY_REGION to indicate to ASAN runtime that
  memory is not 'valid' from Impala's perspective (but still valid from
  kernel's perspective).

* Add this to MemPool and BufferPoolAllocator. For both, memory goes
  through the following lifecycle: when it is allocated from the OS and
  returned to the user, it must be unpoisoned. When the user returns it
  to a cache, it becomes poisoned. When the cache is freed to the OS, it
  must be unpoisoned again (otherwise future allocations elsewhere in
  the system might return poisoned memory).

* Also add checks to FreePool which uses a MemPool underneath, but has
  its own freelist cache. Fix a couple of bugs in free-pool-test that
  these checks uncovered.


* Tests that only run if ASAN is enabled to confirm that poisoning
  catches simple use-after-return errors. These are 'death' tests which
  catch expected process exits.

* Fix one bug found in StringFunctions::FindInSet which would read one
  byte past the end of a stringvalue.

Change-Id: I8d5a28dfee2b7c631981aac75524bde9acc0b36a
M be/src/exprs/
M be/src/runtime/bufferpool/
M be/src/runtime/bufferpool/
M be/src/runtime/bufferpool/buffer-pool.h
M be/src/runtime/bufferpool/free-list.h
M be/src/runtime/
M be/src/runtime/free-pool.h
M be/src/runtime/
M be/src/runtime/
M be/src/runtime/mem-pool.h
10 files changed, 146 insertions(+), 18 deletions(-)

  git pull ssh:// refs/changes/91/7591/2
To view, visit
To unsubscribe, visit

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8d5a28dfee2b7c631981aac75524bde9acc0b36a
Gerrit-PatchSet: 2
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Henry Robinson <>
Gerrit-Reviewer: Tim Armstrong <>

View raw message