summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikolai Kondrashov <Nikolai.Kondrashov@redhat.com>2014-09-04 14:04:15 +0300
committerJakub Hrozek <jhrozek@redhat.com>2014-09-22 10:22:17 +0200
commit6398f22526303343193a18e514602f1af6fb29cb (patch)
tree497a1bf764aca87f3c8ac5e0352ce196486f1123
parente1a58f3d5b44d4d8b8d0239481eee52c7a9b69fd (diff)
downloadsssd-6398f22526303343193a18e514602f1af6fb29cb.tar.gz
sssd-6398f22526303343193a18e514602f1af6fb29cb.tar.xz
sssd-6398f22526303343193a18e514602f1af6fb29cb.zip
CI: Add Valgrind suppression support
Add an empty Valgrind suppressions file, use it when invoking Valgrind. This prepares for addition of Valgrind suppressions for current false positives and issues that cannot be fixed, preparing for enforcing Valgrind check. Make Valgrind output a suppression for every error and make it output used suppression names and counts at the end of each run. This simplifies discovery and addition of new suppressions and removal of unused ones. Related to https://fedorahosted.org/sssd/ticket/2428 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
-rw-r--r--Makefile.am4
-rwxr-xr-xcontrib/ci/run8
-rw-r--r--contrib/ci/sssd.supp9
3 files changed, 18 insertions, 3 deletions
diff --git a/Makefile.am b/Makefile.am
index b19d69803..86a057229 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -342,7 +342,9 @@ dist_noinst_DATA = \
contrib/ci/configure.sh \
contrib/ci/deps.sh \
contrib/ci/distro.sh \
- contrib/ci/misc.sh
+ contrib/ci/misc.sh \
+ contrib/ci/sssd.supp \
+ $(NULL)
###############################
# Global compilation settings #
diff --git a/contrib/ci/run b/contrib/ci/run
index f5f84c448..68ec1aab4 100755
--- a/contrib/ci/run
+++ b/contrib/ci/run
@@ -18,7 +18,8 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
set -o nounset -o pipefail -o errexit
-export PATH=`dirname "\`readlink -f \"\$0\"\`"`:$PATH
+declare -r CI_DIR=`dirname "\`readlink -f \"\$0\"\`"`
+export PATH=$CI_DIR:$PATH
export LC_ALL=C
. deps.sh
@@ -207,7 +208,10 @@ function build_debug()
--vgdb=no \
--trace-children=yes \
--trace-children-skip='*/bin/*,*/sbin/*' \
- --leak-check=full ||
+ --leak-check=full \
+ --gen-suppressions=all \
+ --suppressions="$CI_DIR/sssd.supp" \
+ --verbose ||
status=$?
mv "$test_dir" ci-test-dir
diff --git a/contrib/ci/sssd.supp b/contrib/ci/sssd.supp
new file mode 100644
index 000000000..d2541e895
--- /dev/null
+++ b/contrib/ci/sssd.supp
@@ -0,0 +1,9 @@
+#
+# Valgrind suppression patterns
+#
+# See an introduction to suppressions in Valgrind manual:
+# http://valgrind.org/docs/manual/manual-core.html#manual-core.suppress
+#
+# Each suppression name here must start with "sssd-" to differentiate it from
+# suppressions maintained elsewhere.
+#