From owner-freebsd-current@FreeBSD.ORG Wed May 13 13:53:07 2009 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 324781065670 for ; Wed, 13 May 2009 13:53:07 +0000 (UTC) (envelope-from Achim_Leubner@adaptec.com) Received: from mail-gw3.adaptec.com (mail-gw3.adaptec.com [162.62.93.58]) by mx1.freebsd.org (Postfix) with ESMTP id 175F38FC1D for ; Wed, 13 May 2009 13:53:06 +0000 (UTC) (envelope-from Achim_Leubner@adaptec.com) Received: from ADPE2K702.adaptec.com (adaptecpop.adaptec.com [10.25.8.26]) by mail-gw3.adaptec.com (Spam Firewall) with ESMTP id 85A9B27D784; Wed, 13 May 2009 06:53:06 -0700 (PDT) Received: from ADPE2K703.adaptec.com ([10.25.8.22]) by ADPE2K702.adaptec.com ([10.25.8.26]) with mapi; Wed, 13 May 2009 06:53:06 -0700 From: "Leubner, Achim" To: Scott Long Date: Wed, 13 May 2009 06:53:04 -0700 Thread-Topic: softdep_move_dependencies panic Thread-Index: AcnOa4SCR05AnShwRy+zSDkeRHZY1wFZincg Message-ID: <532ABFBDAAC3A34EB12EBA6CEC2838F4020B72409D@ADPE2K703.adaptec.com> References: <532ABFBDAAC3A34EB12EBA6CEC2838F4020B67FCE8@ADPE2K703.adaptec.com> <4A01C10F.4060805@samsco.org> In-Reply-To: <4A01C10F.4060805@samsco.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: Ed Maste , "current@freebsd.org" , "Sridaran, Gana" Subject: RE: softdep_move_dependencies panic X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 May 2009 13:53:07 -0000 Thanks for the information. But could you please explain this workaround in= detail? If I understand you correctly I should not remove the device with = device_delete_child(). But how should I indicate that it has failed? And ho= w can I complete the i/o with good status although the i/o did not work? Thanks, Achim -----Original Message----- From: Scott Long [mailto:scottl@samsco.org]=20 Sent: Wednesday, May 06, 2009 6:56 PM To: Leubner, Achim Cc: Ed Maste; current@freebsd.org; Sridaran, Gana Subject: Re: softdep_move_dependencies panic No, there is no fix for this. FreeBSD doesn't handle this case very=20 well. What I would suggest doing is keeping the logical representation of the device around, but indicate that it has failed. Then complete all i/o with good status. This is something that is being worked on, but I have no information on when it might be fixed. Scott Leubner, Achim wrote: > Hi Ed, Hi Scott, >=20 > =20 >=20 > We run into a problem if a RAID array goes into an "error" state and is=20 > marked "offline". The new aac driver removes the device in this case=20 > with device_delete_child() and all commands to that device will be=20 > answered using biodone() with flag BIO_ERROR and error EINVAL. But this=20 > causes a "softdep_move_dependencies: need merge code" panic in the=20 > filesystem. Is there any possibility to avoid this panic? We see it=20 > under FreeBSD 7.1 too. >=20 > Any help is greatly appreciated. >=20 > =20 >=20 > Thanks & Regards, >=20 > Achim >=20 > =20 >=20 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >=20 > Achim Leubner >=20 > Software Engineer / RAID drivers >=20 > ICP vortex GmbH / Adaptec Inc. >=20 > Phone: +49-351-8718291 >=20 > =20 >=20