NetBSD Problem Report #55945
From gson@gson.org Fri Jan 22 14:49:11 2021
Return-Path: <gson@gson.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id 3E9DD1A923B
for <gnats-bugs@gnats.NetBSD.org>; Fri, 22 Jan 2021 14:49:11 +0000 (UTC)
Message-Id: <20210122144853.1EBC3253EDE@guava.gson.org>
Date: Fri, 22 Jan 2021 16:48:53 +0200 (EET)
From: gson@gson.org (Andreas Gustafsson)
Reply-To: gson@gson.org (Andreas Gustafsson)
To: gnats-bugs@NetBSD.org
Subject: rump/rumpkern/t_vm:busypage fails since early December
X-Send-Pr-Version: 3.95
>Number: 55945
>Category: kern
>Synopsis: rump/rumpkern/t_vm:busypage fails since early December
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Jan 22 14:50:00 +0000 2021
>Last-Modified: Tue Jul 06 04:25:01 +0000 2021
>Originator: Andreas Gustafsson
>Release: NetBSD-current
>Organization:
>Environment:
System: NetBSD
Architecture: i386
Machine: i386
>Description:
On December 8, 2020, the TNF testbed sent the following report to
current-users. The failure is still happening as of source date
2021.01.21.21.45.42.
This is an automatically generated notice of a new failure of the
NetBSD test suite.
The newly failing test case is:
rump/rumpkern/t_vm:busypage
The above test failed in each of the last 4 test runs, and passed in
at least 26 consecutive runs before that.
Between the last successful test and the failed test, a total of 434
revisions were committed, by the following developers:
christos
chs
dholland
jdc
jmcneill
mrg
nia
rillig
rin
sjg
skrll
thorpej
tsutsui
The first of these commits was made on CVS date 2020.12.05.18.17.01,
and the last on 2020.12.07.10.02.51.
Logs can be found at:
http://releng.NetBSD.org/b5reports/i386/commits-2020.12.html#2020.12.07.10.02.51
>How-To-Repeat:
>Fix:
>Audit-Trail:
From: "Chuck Silvers" <chs@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/55945 CVS commit: src/tests/rump/rumpkern
Date: Fri, 22 Jan 2021 22:03:01 +0000
Module Name: src
Committed By: chs
Date: Fri Jan 22 22:03:01 UTC 2021
Modified Files:
src/tests/rump/rumpkern: t_vm.c
Log Message:
for the busypage test, replace atf_tc_expect_fail() with atf_tc_skip()
because atf apparently has no way to expect a test program to crash.
fixes PR 55945.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/rump/rumpkern/t_vm.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Andreas Gustafsson <gson@gson.org>
To: "Chuck Silvers" <chs@netbsd.org>
Cc: gnats-bugs@netbsd.org
Subject: Re: PR/55945 CVS commit: src/tests/rump/rumpkern
Date: Sat, 23 Jan 2021 12:04:04 +0200
Chuck Silvers wrote:
> Module Name: src
> Committed By: chs
> Date: Fri Jan 22 22:03:01 UTC 2021
>
> Modified Files:
> src/tests/rump/rumpkern: t_vm.c
>
> Log Message:
> for the busypage test, replace atf_tc_expect_fail() with atf_tc_skip()
> because atf apparently has no way to expect a test program to crash.
> fixes PR 55945.
>
> To generate a diff of this commit:
> cvs rdiff -u -r1.5 -r1.6 src/tests/rump/rumpkern/t_vm.c
For context, the previous commit (predating the PR) was:
Revision 1.5
date: 2020-12-08 19:52:11 +0200; author: chs; state: Exp; lines: +2 -1; commitid: OWDf2vgr44wLVXyC;
the busypage test is buggy, expect it to fail.
If you think a test is buggy and you can't fix it, you should file a PR
about it and include a reference to that PR in the atf_tc_expect_fail()
or atf_tc_skip() message.
I don't think this PR should be considered "fixed" until either the
buggy test has been fixed, or the atf_tc_skip() message contains a
reference to a PR.
--
Andreas Gustafsson, gson@gson.org
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/55945 CVS commit: [netbsd-9] src
Date: Tue, 6 Jul 2021 04:22:35 +0000
Module Name: src
Committed By: martin
Date: Tue Jul 6 04:22:35 UTC 2021
Modified Files:
src/external/cddl/osnet/dist/uts/common/fs/zfs [netbsd-9]: zfs_vnops.c
src/sys/rump/librump/rumpkern [netbsd-9]: vm.c
src/sys/rump/librump/rumpvfs [netbsd-9]: vm_vfs.c
src/sys/uvm [netbsd-9]: uvm_anon.c uvm_page.c uvm_pager.c
src/tests/rump/rumpkern [netbsd-9]: t_vm.c
Log Message:
Pull up following revision(s) - all via patch -
(requested by riastradh in ticket #1317):
sys/uvm/uvm_page.c: revision 1.248
sys/uvm/uvm_anon.c: revision 1.80
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.40
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.41
sys/rump/librump/rumpkern/vm.c: revision 1.191
sys/uvm/uvm_pager.c: revision 1.130
external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vnops.c: revision 1.71
tests/rump/rumpkern/t_vm.c: revision 1.5
tests/rump/rumpkern/t_vm.c: revision 1.6
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.39
Move the handling of PG_PAGEOUT from uvm_aio_aiodone_pages() to
uvm_page_unbusy() so that all callers of uvm_page_unbusy() don't need to
handle this flag separately. Split out the pages part of uvm_aio_aiodone()
into uvm_aio_aiodone_pages() in rump just like in the real kernel.
In ZFS functions that can fail to copy data between the ARC and VM pages,
use uvm_aio_aiodone_pages() rather than uvm_page_unbusy() so that we can
handle these "I/O" errors. Fixes PR 55702.
fix an incorrect assertion in the previous commit.
Handle PG_PAGEOUT in uvm_anon_release() too.
Commit the ZFS file that I forgot in this previous commit:
Move the handling of PG_PAGEOUT from uvm_aio_aiodone_pages() to
uvm_page_unbusy() so that all callers of uvm_page_unbusy() don't need to
handle this flag separately. Split out the pages part of uvm_aio_aiodone()
into uvm_aio_aiodone_pages() in rump just like in the real kernel.
In ZFS functions that can fail to copy data between the ARC and VM pages,
use uvm_aio_aiodone_pages() rather than uvm_page_unbusy() so that we can
handle these "I/O" errors. Fixes PR 55702.
update the rump copy of uvm_page_unbusy() to match the real version,
in particular handle PG_PAGEOUT. fixes a few atf tests.
the busypage test is buggy, expect it to fail.
make rump's uvm_aio_aiodone_pages() look more like the kernel version.
fixes some more rumpy assertions.
for the busypage test, replace atf_tc_expect_fail() with atf_tc_skip()
because atf apparently has no way to expect a test program to crash.
fixes PR 55945.
To generate a diff of this commit:
cvs rdiff -u -r1.50.2.9 -r1.50.2.10 \
src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vnops.c
cvs rdiff -u -r1.173 -r1.173.14.1 src/sys/rump/librump/rumpkern/vm.c
cvs rdiff -u -r1.34 -r1.34.34.1 src/sys/rump/librump/rumpvfs/vm_vfs.c
cvs rdiff -u -r1.64 -r1.64.8.1 src/sys/uvm/uvm_anon.c
cvs rdiff -u -r1.199 -r1.199.4.1 src/sys/uvm/uvm_page.c
cvs rdiff -u -r1.111.8.1 -r1.111.8.2 src/sys/uvm/uvm_pager.c
cvs rdiff -u -r1.4 -r1.4.16.1 src/tests/rump/rumpkern/t_vm.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
(Contact us)
$NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.