From owner-freebsd-bugs@FreeBSD.ORG Mon Jul 7 22:12:43 2014 Return-Path: Delivered-To: freebsd-bugs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3FCCEF2A for ; Mon, 7 Jul 2014 22:12:43 +0000 (UTC) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 265DA26D9 for ; Mon, 7 Jul 2014 22:12:43 +0000 (UTC) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.14.8/8.14.8) with ESMTP id s67MCgq7069427 for ; Mon, 7 Jul 2014 23:12:42 +0100 (BST) (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 191019] pgrep/pkill -j testcases fail on 11-CURRENT Date: Mon, 07 Jul 2014 22:12:43 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bin X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: yaneurabeya@gmail.com X-Bugzilla-Status: Needs Triage X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-bugs@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Jul 2014 22:12:43 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191019 --- Comment #3 from yaneurabeya@gmail.com --- The pgrep issues are test bugs. The assumption that the test script makes is that the forked background process is the same as the value returned by pgrep. pgrep is returning the PID of the process from within the jail: Script started on Mon Jul 7 15:02:12 2014 command: sh -x ./pgrep-j_test + basename ./pgrep-j_test + base=pgrep-j_test + id -u + [ 0 -ne 0 ] + echo 1..3 1..3 + mktemp -d /usr/tests/bin/pkill/pgrep-j_test.XXXXXXX + tmpdir=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M + cd /usr/tests/bin/pkill/pgrep-j_test.bihmF9M + trap 'cd /; jls jid name | grep pgrep-j_test | xargs -n 1 jail -R ; rm -Rf /usr/tests/bin/pkill/pgrep-j_test.bihmF9M' EXIT + pwd + sleep=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + ln -f /bin/sleep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + name='pgrep -j ' + chpid=63235 + _jail pgrep-j_test_1-1 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + local name=pgrep-j_test_1-1 + shift + jail -c path=/ host.hostname=pgrep-j_test_1-1 name=pgrep-j_test_1-1 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + chpid2=63236 + chpid3=63237 + sleep 0.5 + _jail pgrep-j_test_1-2 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + local name=pgrep-j_test_1-2 + shift + jail -c path=/ host.hostname=pgrep-j_test_1-2 name=pgrep-j_test_1-2 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + ps auxww + grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt root 63235 0.0 0.0 18476 1676 0 S+ 3:02PM 0:00.00 jail -c path=/ host.hostname=pgrep-j_test_1-1 name=pgrep-j_test_1-1 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63236 0.0 0.0 18476 1676 0 S+ 3:02PM 0:00.00 jail -c path=/ host.hostname=pgrep-j_test_1-2 name=pgrep-j_test_1-2 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63237 0.0 0.0 8036 1360 0 S+ 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63239 0.0 0.0 8036 1360 0 S+J 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63240 0.0 0.0 8036 1360 0 S+J 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63242 0.0 0.0 18608 1992 0 R+ 3:02PM 0:00.00 grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + jls jid name + awk '$2 == "pgrep-j_test_1-1" {print $1}' + jid=136 + pgrep -f -j 136 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + pid=63239 + [ 63239 = 63235 ] + echo 'not ok 1 - pgrep -j ' not ok 1 - pgrep -j + sleep 7 + name='pgrep -j any' + chpid=63248 + _jail pgrep-j_test_2-1 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + local name=pgrep-j_test_2-1 + shift + jail -c path=/ host.hostname=pgrep-j_test_2-1 name=pgrep-j_test_2-1 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + chpid2=63249 + _jail pgrep-j_test_2-2 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + local name=pgrep-j_test_2-2 + shift + chpid3=63250 + jail -c path=/ host.hostname=pgrep-j_test_2-2 name=pgrep-j_test_2-2 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + sleep 0.5 + /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + ps auxww + grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt root 63248 0.0 0.0 18476 1676 0 S+ 3:02PM 0:00.01 jail -c path=/ host.hostname=pgrep-j_test_2-1 name=pgrep-j_test_2-1 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63249 0.0 0.0 18476 1676 0 S+ 3:02PM 0:00.00 jail -c path=/ host.hostname=pgrep-j_test_2-2 name=pgrep-j_test_2-2 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63250 0.0 0.0 8036 1360 0 S+ 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63252 0.0 0.0 8036 1360 0 S+J 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63253 0.0 0.0 8036 1360 0 S+J 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63255 0.0 0.0 18608 1992 0 R+ 3:02PM 0:00.00 grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + pgrep -f -j any /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + sort + pids='63252 63253' + echo 63248 + echo 63249 + sort + refpids='63248 63249' + [ '63252 63253' = '63248 63249' ] + echo 'not ok 2 - pgrep -j any' not ok 2 - pgrep -j any + sleep 7 + name='pgrep -j none' + chpid=63263 + /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + chpid2=63264 + _jail pgrep-j_test_3 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + local name=pgrep-j_test_3 + shift + jail -c path=/ host.hostname=pgrep-j_test_3 name=pgrep-j_test_3 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 + sleep 0.5 + ps auxww + grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt root 63263 0.0 0.0 8036 1360 0 S+ 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63264 0.0 0.0 18476 1676 0 S+ 3:02PM 0:00.00 jail -c path=/ host.hostname=pgrep-j_test_3 name=pgrep-j_test_3 ip4.addr=127.0.0.1 command=/usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63266 0.0 0.0 8036 1360 0 S+J 3:02PM 0:00.00 /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5 root 63268 0.0 0.0 18608 1992 0 R+ 3:02PM 0:00.00 grep /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + pgrep -f -j none /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt + pid='63264 63263' + [ '63264 63263' = 63263 ] + echo 'not ok 3 - pgrep -j none' not ok 3 - pgrep -j none + cd / + jls jid name + grep pgrep-j_test + xargs -n 1 jail -R jail: /usr/tests/bin/pkill/pgrep-j_test.bihmF9M/sleep.txt 5: exited on signal 15 jail: "pgrep-j_test_3" not found + rm -Rf /usr/tests/bin/pkill/pgrep-j_test.bihmF9M Script done on Mon Jul 7 15:02:28 2014 The issue with pkill is valid per the manpage though. In particular the process in the jail is getting killed after it's started up with pkill. It's easy to reproduce (throwing in -f exhibits the problem): # jls JID IP Address Hostname Path # jail / foobar 127.0.0.1 sleep 60 & # jls JID IP Address Hostname Path 35 127.0.0.1 foobar / # pkill -j none sleep # jls JID IP Address Hostname Path 35 127.0.0.1 foobar / # pkill -f -j none sleep [1] Terminated jail / foobar 127.0.0.1 sleep 60 -- You are receiving this mail because: You are the assignee for the bug.