Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Aug 2002 18:55:03 -0700 (PDT)
From:      Lamont Granquist <lamont@scriptkiddie.org>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        "Justin T. Gibbs" <gibbs@scsiguy.com>, Zhihui Zhang <zzhang@cs.binghamton.edu>, <freebsd-hackers@FreeBSD.ORG>, <freebsd-scsi@FreeBSD.ORG>
Subject:   Re: transaction ordering in SCSI subsystem
Message-ID:  <20020805184018.F2654-100000@coredump.scriptkiddie.org>
In-Reply-To: <3D4E1E0D.582EBE7C@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 4 Aug 2002, Terry Lambert wrote:
> Operations which can *not* occur concurrently are requested only
> serially.  This serialization is called a "stall barrier": the
> next operation is not attempted until the previous operation has
> been committed to stable storage.
>
> Operations at the CAM layer are proxied transactions; as Justin
> stated, operations queued to CAM are guaranteed to be queued to
> the underlying physical device in the same order.

So it sounds like CAM has two features which aid in preserving data
integrity.  First it serializes operations with the same tag and
second it implements stall barriers in those pipelines?

Is there a good SCSI reference out there for someone interested more in
the features of CAM and the upper layers of the protocol?

Also, at a higher level in the VFS layer, which operations are tagged the
same?  Are operations on the same vnode tagged the same and then write
barriers are introduced appropriately between data and metadata writes?
Are operations on different vnodes always different tags?  And how is the
consistancy of something like the block allocation table maintained?

[ p.s. thanks quite a lot for that last response ]


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020805184018.F2654-100000>