Comment 2 for bug 1672387

Revision history for this message
Colin Ian King (colin-king) wrote :

running in a VM on a ppc64el I'm seeing the madvise stressor breaking as follows:

11:22:01 DEBUG| [stdout] madvise RETURNED 2
11:22:01 DEBUG| [stdout] madvise FAILED
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] 1 processors online, 1 processors configured
11:22:01 DEBUG| [stdout] stress-ng: info: [1440] dispatching hogs: 4 madvise
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] cache allocate: reducing cache level from L3 (too high) to L1
11:22:01 DEBUG| [stdout] stress-ng: info: [1440] cache allocate: default cache size: 64K
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] starting stressors
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] 4 stressors spawned
11:22:01 DEBUG| [stdout] stress-ng: debug: [1444] stress-ng-madvise: started [1444] (instance 3)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1443] stress-ng-madvise: started [1443] (instance 2)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1442] stress-ng-madvise: started [1442] (instance 1)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1441] stress-ng-madvise: started [1441] (instance 0)
11:22:01 DEBUG| [stdout] stress-ng: info: [1444] stress-ng-madvise: caught 39 SIGBUS signals
11:22:01 DEBUG| [stdout] stress-ng: debug: [1444] stress-ng-madvise: exited [1444] (instance 3)
11:22:01 DEBUG| [stdout] stress-ng: info: [1441] stress-ng-madvise: caught 2 SIGBUS signals
11:22:01 DEBUG| [stdout] stress-ng: debug: [1441] stress-ng-madvise: exited [1441] (instance 0)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process [1441] terminated
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process 1442 (stress-ng-madvise) terminated on signal: 9 (Killed)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process [1442] terminated
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process 1443 (stress-ng-madvise) terminated on signal: 9 (Killed)
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process [1443] terminated
11:22:01 DEBUG| [stdout] stress-ng: debug: [1440] process [1444] terminated
11:22:01 DEBUG| [stdout] stress-ng: info: [1440] unsuccessful run completed in 11.40s
11:22:01 DEBUG| [stdout]
11:22:01 DEBUG| [stdout] malloc STARTING
11:22:02 INFO | ERROR ubuntu_stress_smoke_test.stress-smoke-test ubuntu_stress_smoke_test.stress-smoke-test timestamp=1489490522 localtime=Mar 14 11:22:02 Test subprocess failed rc=9
11:22:06 INFO | END ERROR ubuntu_stress_smoke_test.stress-smoke-test ubuntu_stress_smoke_test.stress-smoke-test timestamp=1489490522 localtime=Mar 14 11:22:02
11:22:12 DEBUG| Persistent state client._record_indent now set to 1
11:22:12 DEBUG| Persistent state client.unexpected_reboot deleted
11:22:12 INFO | END GOOD ---- ---- timestamp=1489490532 localtime=Mar 14 11:22:12
11:22:12 DEBUG| Persistent state client._record_indent now set to 0

There isn't much free memory after this, and the zfs tests fail to work because of low memory:

ubuntu@testvm:~$ free
              total used free shared buff/cache available
Mem: 2074816 1852032 9920 30976 212864 66432
Swap: 0

$ cat /proc/meminfo
MemTotal: 2074816 kB
MemFree: 10432 kB
MemAvailable: 67072 kB
Buffers: 8640 kB
Cached: 73024 kB
SwapCached: 0 kB
Active: 113984 kB
Inactive: 53632 kB
Active(anon): 94656 kB
Inactive(anon): 24768 kB
Active(file): 19328 kB
Inactive(file): 28864 kB
Unevictable: 4416 kB
Mlocked: 4416 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 89984 kB
Mapped: 18944 kB
Shmem: 30976 kB
Slab: 131328 kB
SReclaimable: 33728 kB
SUnreclaim: 97600 kB
KernelStack: 2992 kB
PageTables: 2048 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 1037376 kB
Committed_AS: 295744 kB
VmallocTotal: 8589934592 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 1721664 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB

Seems like MADV_HWPOISON is doing a really effective job here.