From owner-freebsd-bugs@FreeBSD.ORG Tue Feb 19 22:00:05 2008 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E76D16A469 for ; Tue, 19 Feb 2008 22:00:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 40B2C13C45B for ; Tue, 19 Feb 2008 22:00:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m1JM05SD034024 for ; Tue, 19 Feb 2008 22:00:05 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m1JM05wu034017; Tue, 19 Feb 2008 22:00:05 GMT (envelope-from gnats) Resent-Date: Tue, 19 Feb 2008 22:00:05 GMT Resent-Message-Id: <200802192200.m1JM05wu034017@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Oleg Sharoiko Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D1CE816A46E for ; Tue, 19 Feb 2008 21:54:25 +0000 (UTC) (envelope-from os@brain.cc.rsu.ru) Received: from brain.cc.rsu.ru (brain.cc.rsu.ru [195.208.252.154]) by mx1.freebsd.org (Postfix) with ESMTP id B098113C459 for ; Tue, 19 Feb 2008 21:54:24 +0000 (UTC) (envelope-from os@brain.cc.rsu.ru) Received: from brain.cc.rsu.ru (localhost [127.0.0.1]) by brain.cc.rsu.ru (8.14.2/8.14.2) with ESMTP id m1JLsLiN010249; Wed, 20 Feb 2008 00:54:21 +0300 (MSK) (envelope-from os@brain.cc.rsu.ru) Received: (from os@localhost) by brain.cc.rsu.ru (8.14.2/8.14.2/Submit) id m1JLsLeA010248; Wed, 20 Feb 2008 00:54:21 +0300 (MSK) (envelope-from os) Message-Id: <200802192154.m1JLsLeA010248@brain.cc.rsu.ru> Date: Wed, 20 Feb 2008 00:54:21 +0300 (MSK) From: Oleg Sharoiko To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Oleg Sharoiko Subject: kern/120858: [patch] [cam] panic: ufs_dirbad with CLARiiON CX3-40 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Oleg Sharoiko List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Feb 2008 22:00:05 -0000 >Number: 120858 >Category: kern >Synopsis: [patch] [cam] panic: ufs_dirbad with CLARiiON CX3-40 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Feb 19 22:00:04 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Oleg Sharoiko >Release: FreeBSD 7.0-RC1 amd64 >Organization: Southern federal university >Environment: System: FreeBSD blade-3-1.r61.net 7.0-PRERELEASE FreeBSD 7.0-PRERELEASE #1: Tue Feb 19 19:00:51 UTC 2008 os@blade-3-1.r61.net:/usr/obj/usr/src/sys/GENERIC amd64 >Description: Had a chance to play with FreeBSD on IBM BladeCenter H and EMC CLARiiON CX3-40. Moderate I/O activity on ufs filesystem gave me a reproducable ufs_dirbad panic and corrupted root directory of filesystem. >How-To-Repeat: Assuming da0 is a LUN on CX3: newfs -U /dev/da0s1a mount /dev/da0s1a /mnt tar cf - -C / --one-file-system . usr var tmp | tar xvf -C /mnt >Fix: Lowering queue depth down to 63 (with camcontrol tags da0 -N 63) fixes this issue. I did several successfull make -9 buildworld and make -j buildkerel. With queue depth 64 I still got panics. Here is a patch which sets maxtags to 63 for volumes on CLARiiON. The LUNs from CLARiON are identified by camcontrol devlist as follows: at scbus0 target 0 lun 0 (pass0,da0) at scbus0 target 1 lun 0 (pass1,da1) at scbus1 target 0 lun 0 (pass2,da2) at scbus1 target 1 lun 0 (pass3,da3) I'm not sure if DGC is a sufficently narrow pattern for xpt_quirk_table, but can't suggest anything better. Index: cam_xpt.c =================================================================== RCS file: /home/ncvs/src/sys/cam/cam_xpt.c,v retrieving revision 1.190.2.1 diff -u -r1.190.2.1 cam_xpt.c --- cam_xpt.c 31 Jan 2008 09:31:41 -0000 1.190.2.1 +++ cam_xpt.c 19 Feb 2008 20:33:30 -0000 @@ -632,6 +632,15 @@ CAM_QUIRK_NOSERIAL, /*mintags*/0, /*maxtags*/0 }, { + /* + * It looks like EMC CLARiiON CX3 model 40 silently + * drops commands when there are more than 63 commands + * in a queue + */ + { T_ANY, SIP_MEDIA_FIXED|SIP_MEDIA_REMOVABLE, "DGC", "*", "*" }, + /*quirks*/0, /*mintags*/2, /*maxtags*/63 + }, + { /* Default tagged queuing parameters for all devices */ { T_ANY, SIP_MEDIA_REMOVABLE|SIP_MEDIA_FIXED, >Release-Note: >Audit-Trail: >Unformatted: