NetBSD Problem Report #20296

Received: (qmail 17160 invoked by uid 605); 11 Feb 2003 18:23:19 -0000
Message-Id: <20030211182318.4C85F1114C@narn.netbsd.org>
Date: Tue, 11 Feb 2003 10:23:18 -0800 (PST)
From: wojtek@tensor.3miasto.net
Sender: gnats-bugs-owner@netbsd.org
Reply-To: wojtek@tensor.3miasto.net
To: gnats-bugs@gnats.netbsd.org
Subject: vnd device locks up under high write load and large images
X-Send-Pr-Version: www-1.0

>Number:         20296
>Category:       kern
>Synopsis:       vnd device locks up under high write load and large images
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Feb 11 18:24:00 +0000 2003
>Closed-Date:    
>Last-Modified:  Sun Sep 03 19:51:10 +0000 2006
>Originator:     Wojciech Puchar
>Release:        release-1-5 (at most 1 week old)
>Organization:
TENSOR ap
>Environment:
NetBSD chylonia.3miasto.net 1.5.4_ALPHA NetBSD 1.5.4_ALPHA (local) #8: Thu Jan 16 19:44:35 CET 2003     wojtek@chylonia.3miasto.net:/home/wojtek/kernel/local i386

>Description:
copying lots of small files (pkgsrc) from normal ffs filesystem to vnd-mounted ffs filesystem (3GB image)
locks up whole system.

"lock up" means that it responds to everything except any disk access. all disk access just waits.
only reset helps
>How-To-Repeat:
dd if=/dev/zero of=image bs=1024k count=3000
disklabel -I -i vnd0
at least type W amd Q
newfs -m 5 -i 16384 -b 8192 -f 1024 -c 96 /dev/rvnd0a (that's what i used)
mount -o async,noatime /dev/vnd0a /mnt

and

cp -R /usr/src/pkgsrc /mnt

will quickly render system unusable

>Fix:
without async it works fine, while slow
softdep not tested


>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed
State-Changed-By: christos@netbsd.org
State-Changed-When: Sun, 27 Aug 2006 14:46:56 -0400
State-Changed-Why:
fixed, thanks


From: Christos Zoulas <christos@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: PR/20296 CVS commit: src/sys/dev
Date: Sun, 27 Aug 2006 18:45:21 +0000 (UTC)

 Module Name:	src
 Committed By:	christos
 Date:		Sun Aug 27 18:45:20 UTC 2006

 Modified Files:
 	src/sys/dev: vnd.c

 Log Message:
 PR/34293: Michael van Elst: vnd deadlocks on I/O buffers
 Also fixes: PR/10731, PR/12189, PR/20296
 Sleep while there a buffer shortage.


 To generate a diff of this commit:
 cvs rdiff -r1.148 -r1.149 src/sys/dev/vnd.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Manuel Bouyer <bouyer@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: PR/20296 CVS commit: src/sys/dev
Date: Sun,  3 Sep 2006 19:49:34 +0000 (UTC)

 Module Name:	src
 Committed By:	bouyer
 Date:		Sun Sep  3 19:49:34 UTC 2006

 Modified Files:
 	src/sys/dev: vnd.c

 Log Message:
 Back out rev 1.149.
 From various discussion about vndstrategy (see
 http://mail-index.netbsd.org/tech-kern/2005/03/29/0034.html
 http://mail-index.netbsd.org/tech-kern/2005/03/23/0015.html)
 it's not correct to tsleep() in a strategy routine, which may be called from
 interrupt context.
 Unfortunably this reopens PR/10731, PR/12189, PR/20296, PR/34293

 As for what the correct fix it, this needs to be analysed deeper. I suspect
 throttling the caller in vnd only hides the problem; the same caller writing
 to some other device could exaust all buffers as well. If this driver doesn't
 need to allocate buffer this won't cause a deadlock, but it's bad for
 performances on systems with e.g. multiple drives. Also, others stacked
 block device drivers may also have this issue.


 To generate a diff of this commit:
 cvs rdiff -r1.149 -r1.150 src/sys/dev/vnd.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: closed->open
State-Changed-By: bouyer@netbsd.org
State-Changed-When: Sun, 03 Sep 2006 19:51:10 +0000
State-Changed-Why:
vnd.c 1.149 has been backed out.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.