From ebca44ccaa8c4d49ea288b6dd83a1ce8e78718e9 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 28 Jan 2020 18:15:35 -0600 Subject: [PATCH] qa/suites/rados: improve valgrind leak check Verify we can detect leak in the osd, mon, and mgr independently. Also include a negative test (no leaks). Signed-off-by: Sage Weil --- .../{singleton-flat/valgrind-leaks/+ => valgrind-leaks/%} | 0 qa/suites/rados/{singleton-flat => }/valgrind-leaks/.qa | 0 .../valgrind-leaks.yaml => valgrind-leaks/1-start.yaml} | 4 +--- qa/suites/rados/valgrind-leaks/2-inject-leak/mon.yaml | 7 +++++++ qa/suites/rados/valgrind-leaks/2-inject-leak/none.yaml | 0 qa/suites/rados/valgrind-leaks/2-inject-leak/osd.yaml | 7 +++++++ .../{singleton-flat => }/valgrind-leaks/centos_latest.yaml | 0 7 files changed, 15 insertions(+), 3 deletions(-) rename qa/suites/rados/{singleton-flat/valgrind-leaks/+ => valgrind-leaks/%} (100%) rename qa/suites/rados/{singleton-flat => }/valgrind-leaks/.qa (100%) rename qa/suites/rados/{singleton-flat/valgrind-leaks/valgrind-leaks.yaml => valgrind-leaks/1-start.yaml} (83%) create mode 100644 qa/suites/rados/valgrind-leaks/2-inject-leak/mon.yaml create mode 100644 qa/suites/rados/valgrind-leaks/2-inject-leak/none.yaml create mode 100644 qa/suites/rados/valgrind-leaks/2-inject-leak/osd.yaml rename qa/suites/rados/{singleton-flat => }/valgrind-leaks/centos_latest.yaml (100%) diff --git a/qa/suites/rados/singleton-flat/valgrind-leaks/+ b/qa/suites/rados/valgrind-leaks/% similarity index 100% rename from qa/suites/rados/singleton-flat/valgrind-leaks/+ rename to qa/suites/rados/valgrind-leaks/% diff --git a/qa/suites/rados/singleton-flat/valgrind-leaks/.qa b/qa/suites/rados/valgrind-leaks/.qa similarity index 100% rename from qa/suites/rados/singleton-flat/valgrind-leaks/.qa rename to qa/suites/rados/valgrind-leaks/.qa diff --git a/qa/suites/rados/singleton-flat/valgrind-leaks/valgrind-leaks.yaml b/qa/suites/rados/valgrind-leaks/1-start.yaml similarity index 83% rename from qa/suites/rados/singleton-flat/valgrind-leaks/valgrind-leaks.yaml rename to qa/suites/rados/valgrind-leaks/1-start.yaml index 4c03a466bff26..4f4fc33cc7c4b 100644 --- a/qa/suites/rados/singleton-flat/valgrind-leaks/valgrind-leaks.yaml +++ b/qa/suites/rados/valgrind-leaks/1-start.yaml @@ -15,7 +15,6 @@ overrides: conf: global: osd heartbeat grace: 40 - debug deliberately leak memory: true osd max object name len: 460 osd max object namespace len: 64 mon: @@ -26,8 +25,7 @@ overrides: mon: [--tool=memcheck, --leak-check=full, --show-reachable=yes] osd: [--tool=memcheck] roles: -- [mon.a, mgr.x, osd.0, osd.1, client.0] +- [mon.a, mon.b, mon.c, mgr.x, mgr.y, osd.0, osd.1, osd.2, client.0] tasks: - install: - ceph: - expect_valgrind_errors: true diff --git a/qa/suites/rados/valgrind-leaks/2-inject-leak/mon.yaml b/qa/suites/rados/valgrind-leaks/2-inject-leak/mon.yaml new file mode 100644 index 0000000000000..695a9f8af9b45 --- /dev/null +++ b/qa/suites/rados/valgrind-leaks/2-inject-leak/mon.yaml @@ -0,0 +1,7 @@ +overrides: + ceph: + expect_valgrind_errors: true +tasks: +- exec: + mon.a: + - ceph tell mon.a leak_some_memory diff --git a/qa/suites/rados/valgrind-leaks/2-inject-leak/none.yaml b/qa/suites/rados/valgrind-leaks/2-inject-leak/none.yaml new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/rados/valgrind-leaks/2-inject-leak/osd.yaml b/qa/suites/rados/valgrind-leaks/2-inject-leak/osd.yaml new file mode 100644 index 0000000000000..f249f16e1ec5b --- /dev/null +++ b/qa/suites/rados/valgrind-leaks/2-inject-leak/osd.yaml @@ -0,0 +1,7 @@ +overrides: + ceph: + expect_valgrind_errors: true +tasks: +- exec: + mon.a: + - ceph tell osd.0 leak_some_memory diff --git a/qa/suites/rados/singleton-flat/valgrind-leaks/centos_latest.yaml b/qa/suites/rados/valgrind-leaks/centos_latest.yaml similarity index 100% rename from qa/suites/rados/singleton-flat/valgrind-leaks/centos_latest.yaml rename to qa/suites/rados/valgrind-leaks/centos_latest.yaml -- 2.39.5