From owner-freebsd-bugs Fri Jun 7 7:30:16 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 6EBB737B405 for ; Fri, 7 Jun 2002 07:30:02 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g57EU2f16754; Fri, 7 Jun 2002 07:30:02 -0700 (PDT) (envelope-from gnats) Received: from nwww.freebsd.org (www.FreeBSD.org [216.136.204.117]) by hub.freebsd.org (Postfix) with ESMTP id 247F937B407 for ; Fri, 7 Jun 2002 07:20:32 -0700 (PDT) Received: from www.freebsd.org (localhost [127.0.0.1]) by nwww.freebsd.org (8.12.2/8.12.2) with ESMTP id g57EKUhG008513 for ; Fri, 7 Jun 2002 07:20:30 -0700 (PDT) (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.12.2/8.12.2/Submit) id g57EKTvX008512; Fri, 7 Jun 2002 07:20:30 -0700 (PDT) Message-Id: <200206071420.g57EKTvX008512@www.freebsd.org> Date: Fri, 7 Jun 2002 07:20:30 -0700 (PDT) From: Aggelos Economopoulos To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-1.0 Subject: kern/38983: Kernel fails to access disk Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 38983 >Category: kern >Synopsis: Kernel fails to access disk >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jun 07 07:30:02 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Aggelos Economopoulos >Release: FreeBSD -stable >Organization: >Environment: FreeBSD erwin.gr 4.6-RC FreeBSD 4.6-RC #0: Tue Jun 4 07:05:31 EEST 2002 root@erwin.gr:/usr/obj/usr/src/sys/CUSTOM i386 >Description: On attempting to access a new 40G ide disk(ad3) from my -stable installation on ad0, I get a kernel error message about "excessive recursion in search for slices". This occurs in *any* access e.g. read(2) on /dev/ad3, mount(2) /dev/ad3s1, fdisk -s /dev/ad3 etc. However, a) there does not seem be a hardware problem, since I have a fully functioning linux installation on ad3 b) the mbr partition table of ad3 and the extended partition tables of ad3 are valid. Using a userspace partition viewer, I can get sane results and identical to those of the linux kernel. But, the same program when run under FreeBSD gets into an infinite loop (since it does not use recursion like sys/kern/subr_diskmbr.c does), while I (of course) get the kernel error messages. Do _not_ consider this a fact, but I think that a read(2) while following the extended pt chain returns sector 0 (that is, the mbr of ad3) c) the kernel seems to get the disk characteristics right. Inserting a printf in subr_diskmbr.c I have verified that the d_secperunit field in the disklabel for ad3 is the same value as the one reported by the linux kernel. d) This is not a cvsup at a bad time. I have been able to repeat the problem with all the kernels I have built in the two weeks I have spent in subr_diskmbr.c thinking it was a problem with the partition handling code. So, I can only attribute this to a bug in the block i/o layer or the ide code. Right now, I am without a clue about how to go on in search of the cause of this. >How-To-Repeat: I haven't tried to repeat the problem using the disk on another freebsd installation. >Fix: !clue >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message