commit: c66fba6a50fc550918df1804ef4afc90613ec28f Author: Mike Frysinger <vapier <AT> gentoo <DOT> org> AuthorDate: Sun Dec 18 04:42:55 2016 +0000 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org> CommitDate: Sun Dec 18 04:43:54 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c66fba6a
sys-process/procps: fix test failures under some kernel configs #583036 .../procps/files/procps-3.3.12-proc-tests.patch | 47 ++++++++++++++++++++++ sys-process/procps/procps-3.3.12.ebuild | 1 + 2 files changed, 48 insertions(+) diff --git a/sys-process/procps/files/procps-3.3.12-proc-tests.patch b/sys-process/procps/files/procps-3.3.12-proc-tests.patch new file mode 100644 index 00000000..9549252 --- /dev/null +++ b/sys-process/procps/files/procps-3.3.12-proc-tests.patch @@ -0,0 +1,47 @@ +https://bugs.gentoo.org/583036 +http://www.freelists.org/post/procps/Patch-Test-suite-fails-if-procpidsmaps-is-absent,1 + +From: to...@opentrash.com +To: pro...@freelists.org +Date: Sun, 11 Sep 2016 15:01:29 +0200 +Subject: [procps] [Patch] Test suite fails if /proc/<pid>/smaps is absent +Message-Id: <20160911130129.9a8b3322...@astra4649.startdedicated.de> + +Summary: Some Linux systems do not have /proc/<pid>/smaps, hence the test +suite fails. Attached a patch to skip tests in that case it. + +When pmap is called with either -c, -x, or -x it tries to read +/proc/<pid>/smaps (pmap.c, l. 540). If not present it exits. +The file /proc/<pid>/smaps exits on Linux systems only if the kernel is +compiled with the option CONFIG_PROC_PAGE_MONITOR (see man page proc(5)). + +In the test suite some tests check the output of pmap -X et al, but they +fail if /proc/<pid>/smaps is not present, because pmap does not produce +their expected output. + +Attached a patch which checks if /proc/<pid>/smaps exits, if not it +skipps the test related to it. + +Note: It is unclear what the 'expected' behaviour/output of pmap should +be if the file /proc/<pid>/smaps is not present. Maybe add an additional +test to check the return code if /proc/<pid>/smaps is absent. + +--- a/testsuite/pmap.test/pmap.exp ++++ b/testsuite/pmap.test/pmap.exp +@@ -45,6 +45,11 @@ + spawn $pmap -qd $mypid + expect_table $test $pmap_procname $pmap_device_items "\$" + ++if { [ file readable "/proc/self/smaps" ] == 0 } { ++ unsupported "Skipping test which require pmap to access /proc/<pid>/smaps, because kernel seems to be compiled without CONFIG_PROC_PAGE_MONITOR." ++ ++} else { ++ + set test "pmap extended output" + spawn $pmap -x $mypid + expect_table $test $pmap_ext_header $pmap_ext_items $pmap_ext_footer +@@ -66,3 +71,4 @@ + spawn $pmap -XX 1 + expect_pass $test "$pmap_initname\$" + ++} diff --git a/sys-process/procps/procps-3.3.12.ebuild b/sys-process/procps/procps-3.3.12.ebuild index fea54a1..bdfbd2f 100644 --- a/sys-process/procps/procps-3.3.12.ebuild +++ b/sys-process/procps/procps-3.3.12.ebuild @@ -35,6 +35,7 @@ S="${WORKDIR}/${PN}-ng-${PV}" PATCHES=( "${FILESDIR}"/${PN}-3.3.8-kill-neg-pid.patch # http://crbug.com/255209 "${FILESDIR}"/${PN}-3.3.11-sysctl-manpage.patch # 565304 + "${FILESDIR}"/${PN}-3.3.12-proc-tests.patch #583036 # Upstream fixes "${FILESDIR}"/${P}-strtod_nol_err.patch