NetBSD Problem Report #44239

From www@NetBSD.org  Wed Dec 15 20:25:25 2010
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 518CF63B9FC
	for <gnats-bugs@gnats.NetBSD.org>; Wed, 15 Dec 2010 20:25:25 +0000 (UTC)
Message-Id: <20101215202525.2FE6363B886@www.NetBSD.org>
Date: Wed, 15 Dec 2010 20:25:25 +0000 (UTC)
From: pooka@iki.fi
Reply-To: pooka@iki.fi
To: gnats-bugs@NetBSD.org
Subject: raidframe causes a div-by-zero fault for small disks
X-Send-Pr-Version: www-1.0

>Number:         44239
>Category:       kern
>Synopsis:       raidframe causes a div-by-zero fault for small disks
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 15 20:30:00 +0000 2010
>Closed-Date:    Wed Mar 16 06:58:29 +0000 2011
>Last-Modified:  Wed Jul 10 06:15:01 +0000 2019
>Originator:     Antti Kantee
>Release:        
>Organization:
>Environment:
>Description:
Seems like small disks have 0 parity regions:

(gdb) bt
#0  0xbbbb610c in __udivdi3 () from /usr/lib/librumpdev_dm.so.0
#1  0xbbb49370 in rf_paritymap_init (pm=0xb9a5bf20, raid=0xbb4c0000, 
    params=0xb77ff324)
    at /usr/allsrc/src/sys/rump/dev/lib/libraidframe/../../../../dev/raidframe/rf_paritymap.c:444
#2  0xbbb49b7d in rf_paritymap_attach (raidPtr=0xbb4c0000, force=1)
    at /usr/allsrc/src/sys/rump/dev/lib/libraidframe/../../../../dev/raidframe/rf_paritymap.c:679
#3  0xbbb6dbae in rf_Configure (raidPtr=0xbb4c0000, cfgPtr=0xb8321000, ac=0x0)
    at /usr/allsrc/src/sys/rump/dev/lib/libraidframe/../../../../dev/raidframe/rf_driver.c:425
#4  0xbbb65497 in raidioctl (dev=15875, cmd=2147774977, data=0xb77ff920, 
    flag=3, l=0xb9a46ad4)
    at /usr/allsrc/src/sys/rump/dev/lib/libraidframe/../../../../dev/raidframe/rf_netbsdkintf.c:1192
#5  0xbb6dc300 in cdev_ioctl (dev=15875, cmd=2147774977, data=0xb77ff920, 
    flag=3, l=0xb9a46ad4)
    at /usr/allsrc/src/sys/rump/librump/rumpkern/../../../kern/subr_devsw.c:876
#6  0xbb771e6d in spec_ioctl (v=0xb77ff7a8)
    at /usr/allsrc/src/sys/rump/librump/rumpvfs/../../../miscfs/specfs/spec_vnops.c:753
#7  0xbb790102 in rump_vop_spec (v=0xb77ff7a8) at rumpfs.c:1453
#8  0xbb6ca64a in VOP_IOCTL (vp=0xbb4b62f8, command=2147774977, 
    data=0xb77ff920, fflag=3, cred=0xbb425f00)
    at /usr/allsrc/src/sys/rump/librump/rumpkern/../../../kern/vnode_if.c:467
#9  0xbb77bbdc in vn_ioctl (fp=0xb8319f80, com=2147774977, data=0xb77ff920)
    at /usr/allsrc/src/sys/rump/librump/rumpvfs/../../../kern/vfs_vnops.c:731
#10 0xbb6addd4 in sys_ioctl (l=0xb9a46ad4, uap=0xb9b04040, retval=0xb77ffa7c)
    at /usr/allsrc/src/sys/rump/librump/rumpkern/../../../kern/sys_generic.c:624
#11 0xbb704fcc in sy_call (sy=0xbb71aea8, l=0xb9a46ad4, uap=0xb9b04040, 
    rval=0xb77ffa7c) at /sys/rump/librump/rumpkern/../../../sys/syscallvar.h:61
#12 0xbb704f8c in rump_proxy_syscall (num=54, arg=0xb9b04040, 
    retval=0xb77ffa7c) at rump.c:672
#13 0xbb667650 in rumpsyscall (sysnum=54, data=0xb9b04040, retval=0xb77ffa7c)
    at rumpuser_sp.c:161
#14 0xbb667f60 in serv_handlesyscall (spc=0xbb66dc64, rhdr=0xb9b02074, 
    data=0xb9b04040 "") at rumpuser_sp.c:472
#15 0xbb66809f in serv_syscallbouncer (arg=0x0) at rumpuser_sp.c:516
#16 0xbb65f4c7 in pthread_setcancelstate () from /usr/lib/libpthread.so.0
#17 0xbb5a3610 in swapcontext () from /usr/lib/libc.so.12

444             rstripes = howmany(raid->Layout.numStripe, pm->params.regions);
(gdb) print pm->params
$1 = {cooldown = 8, tickms = 40000, regions = 0}

>How-To-Repeat:
run tests/dev/raid/t_raid smalldisk (to be committed very soon)
>Fix:

>Release-Note:

>Audit-Trail:
From: "Antti Kantee" <pooka@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: src/tests/dev
Date: Wed, 15 Dec 2010 20:37:52 +0000

 Module Name:	src
 Committed By:	pooka
 Date:		Wed Dec 15 20:37:52 UTC 2010

 Modified Files:
 	src/tests/dev: Makefile
 Added Files:
 	src/tests/dev/raid: Makefile t_raid.sh

 Log Message:
 Add first raidframe tests.  This is the test for the kernel fault
 described in PR kern/44239


 To generate a diff of this commit:
 cvs rdiff -u -r1.5 -r1.6 src/tests/dev/Makefile
 cvs rdiff -u -r0 -r1.1 src/tests/dev/raid/Makefile \
     src/tests/dev/raid/t_raid.sh

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

From: "Antti Kantee" <pooka@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: src/tests/dev
Date: Wed, 15 Dec 2010 20:40:18 +0000

 Module Name:	src
 Committed By:	pooka
 Date:		Wed Dec 15 20:40:18 UTC 2010

 Modified Files:
 	src/tests/dev: Makefile
 Added Files:
 	src/tests/dev/raidframe: Makefile t_raid.sh
 Removed Files:
 	src/tests/dev/raid: Makefile t_raid.sh

 Log Message:
 "A few seconds later" I realized the kernel directory is dev/raidframe,
 not dev/raid, so reflect this in the test dir.  Affects location
 for test of PR kern/44239.


 To generate a diff of this commit:
 cvs rdiff -u -r1.6 -r1.7 src/tests/dev/Makefile
 cvs rdiff -u -r1.1 -r0 src/tests/dev/raid/Makefile \
     src/tests/dev/raid/t_raid.sh
 cvs rdiff -u -r0 -r1.1 src/tests/dev/raidframe/Makefile \
     src/tests/dev/raidframe/t_raid.sh

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

From: "Jeff Rizzo" <riz@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: src/sys/dev/raidframe
Date: Tue, 1 Mar 2011 22:51:14 +0000

 Module Name:	src
 Committed By:	riz
 Date:		Tue Mar  1 22:51:14 UTC 2011

 Modified Files:
 	src/sys/dev/raidframe: rf_paritymap.c

 Log Message:
 Always return at least one parity region.  Fixes PR#44239.
 Fix from oster@, code (such as it is) by me.


 To generate a diff of this commit:
 cvs rdiff -u -r1.5 -r1.6 src/sys/dev/raidframe/rf_paritymap.c

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

From: "Jeff Rizzo" <riz@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: src/tests/dev/raidframe
Date: Tue, 1 Mar 2011 22:52:54 +0000

 Module Name:	src
 Committed By:	riz
 Date:		Tue Mar  1 22:52:54 UTC 2011

 Modified Files:
 	src/tests/dev/raidframe: t_raid.sh

 Log Message:
 PR#44239 is now fixed, remove the xfail from the test.


 To generate a diff of this commit:
 cvs rdiff -u -r1.6 -r1.7 src/tests/dev/raidframe/t_raid.sh

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

State-Changed-From-To: open->pending-pullups
State-Changed-By: riz@NetBSD.org
State-Changed-When: Tue, 01 Mar 2011 23:09:53 +0000
State-Changed-Why:
problem has been fixed in -current, should be pulled up to 5


From: "Soren Jacobsen" <snj@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: [netbsd-5] src/sys/dev/raidframe
Date: Mon, 7 Mar 2011 17:38:23 +0000

 Module Name:	src
 Committed By:	snj
 Date:		Mon Mar  7 17:38:23 UTC 2011

 Modified Files:
 	src/sys/dev/raidframe [netbsd-5]: rf_paritymap.c

 Log Message:
 Pull up following revision(s) (requested by riz in ticket #1569):
 	sys/dev/raidframe/rf_paritymap.c: revision 1.6
 Always return at least one parity region.  Fixes PR#44239.
 Fix from oster@, code (such as it is) by me.


 To generate a diff of this commit:
 cvs rdiff -u -r1.3.2.3 -r1.3.2.4 src/sys/dev/raidframe/rf_paritymap.c

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

State-Changed-From-To: pending-pullups->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Wed, 16 Mar 2011 06:58:29 +0000
State-Changed-Why:
Pulled up, thanks.


From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/44239 CVS commit: src/tests/dev/raidframe
Date: Wed, 10 Jul 2019 06:10:54 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Wed Jul 10 06:10:54 UTC 2019

 Modified Files:
 	src/tests/dev/raidframe: t_raid.sh

 Log Message:
 Reduce disk image size for tests (PR 44239 has been fixed)


 To generate a diff of this commit:
 cvs rdiff -u -r1.13 -r1.14 src/tests/dev/raidframe/t_raid.sh

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

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.43 2018/01/16 07:36:43 maya Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2017 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.