From owner-freebsd-hackers Sun Aug 4 22:43:10 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6097537B400; Sun, 4 Aug 2002 22:43:05 -0700 (PDT) Received: from warez.scriptkiddie.org (uswest-dsl-142-38.cortland.com [209.162.142.38]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3DC043E4A; Sun, 4 Aug 2002 22:43:04 -0700 (PDT) (envelope-from lamont@scriptkiddie.org) Received: from [192.168.69.11] (unknown [192.168.69.11]) by warez.scriptkiddie.org (Postfix) with ESMTP id 5BDDD62D1A; Sun, 4 Aug 2002 22:43:04 -0700 (PDT) Date: Sun, 4 Aug 2002 22:43:25 -0700 (PDT) From: Lamont Granquist To: "Justin T. Gibbs" Cc: Zhihui Zhang , , Subject: Re: transaction ordering in SCSI subsystem In-Reply-To: <200208042111.g74LBVSY063691@aslan.scsiguy.com> Message-ID: <20020804223605.X892-100000@coredump.scriptkiddie.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG So what exactly gets ordered and how do things get tagged? I tried following this in the code from VOP_STRATEGY and never quite figured it out. Basically when you do a write are you just tagging the data writes along with the metadata writes and then sequencing them so that they have to complete in a given order? And can operations with different tags be mixed around randomly? Also, how does the feedback from the SCSI controller that the write completed get used by the O/S (and the corollary being how does IDE write caching lying about completion affect the O/S and the data integrity)? On Sun, 4 Aug 2002, Justin T. Gibbs wrote: > >While reading the document on FreeBSD SCSI subsystem, I am wondering what > >does guaranteed transaction ordering mean? Does it have anything to do > >with I/O ordering, tagging, write caching, etc.? > > Yes, yes, and yes. CAM guarantees that transactions are queued to > the device in the order they were queued to CAM. Even if an error > recovery action occurs, I/O is retried/resumed in order once the > device is recovered. > > -- > Justin > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-hackers" in the body of the message > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message