MADV_REMOVE not supported
- Dominant language
- Go
- Stars
- 19.3k
- Forks
- 2k
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 264
Description
I haven't had time do debug this deeply but noticed that at last one chromium test consistently fails:
```
chromium/src$ sudo runsc --network=none --platform=kvm do ./out/Development/base_unittests --gtest_filter="DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge"
IMPORTANT DEBUGGING NOTE: batches of tests are run inside their
own process. For debugging a test inside a debugger, use the
--gtest_filter= flag along with
--single-process-tests.
Using sharding settings from environment. This is shard 0/1
Using 1 parallel jobs.
Note: Google Test filter = DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from DiscardableSharedMemoryTest
[ RUN ] DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge
../../base/memory/discardable_shared_memory_unittest.cc:453: Failure
Expected equality of these values:
memcmp(memory2.memory(), expected_data, kDataSize)
Which is: 170
0
Stack trace:
#0 0x55f14b75ce30 base::DiscardableSharedMemoryTest_ZeroFilledPagesAfterPurge_Test::TestBody()
[ FAILED ] DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge (4 ms)
[----------] 1 test from DiscardableSharedMemoryTest (4 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (5 ms total)
[ PASSED ] 0 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge
1 FAILED TEST
[1/1] DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge (4 ms)
1 test failed:
DiscardableSharedMemoryTest.ZeroFilledPagesAfterPurge (../../base/memory/discardable_shared_memory_unittest.cc:422)
Tests took 0 seconds.
```
The test fails on both kvm and ptrace but passes on native linux. The test description:
```
// This test checks that zero-filled pages are returned after purging a segment
// when DISCARDABLE_SHARED_MEMORY_ZERO_FILL_ON_DEMAND_PAGES_AFTER_PURGE is
// defined and MADV_REMOVE is supported.
```
code
https://source.chromium.org/chromium/chromium/src/+/master:base/memory/discardable_shared_memory_unittest.cc;l=418-455?q=DiscardableSharedMemoryTest&ss=chromium
Contributor guide
Assessment
This issue has not been assessed yet.