xfs
[Top] [All Lists]

Re: separate log and structure from user data device?

To: Jan Wagner <jwagner@xxxxxxxxxxx>, Keith Owens <kaos@xxxxxxx>
Subject: Re: separate log and structure from user data device?
From: Nathan Scott <nathans@xxxxxxx>
Date: Tue, 6 Jun 2006 10:12:58 +1000
Cc: xfs@xxxxxxxxxxx
In-reply-to: <8630.1149517148@xxxxxxxxxxxxxxx>; from kaos@xxxxxxx on Tue, Jun 06, 2006 at 12:19:08AM +1000
References: <Pine.LNX.4.58.0606051402410.18047@xxxxxxxxxxx> <8630.1149517148@xxxxxxxxxxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.2.5i
On Tue, Jun 06, 2006 at 12:19:08AM +1000, Keith Owens wrote:
> The ATA Streaming Feature Set defines the Handle Stream Error (HSE) bit
> to mark data which is critical, and therefore needs full error
> recovery.  That leaves all other data to be handled as best case,
> returning no data instead of taking too long.  Why not use HSE to mark
> the filesystem metadata and journals?  Then you do not need to separate
> metadata from normal data at the disk level.

Hmm, OK, interesting.

> Of course that requires a change to the VFS layer to pass a flag saying
> "this data is critical", plus support in the I/O path for setting HSE.

Its a trivial thing from the filesystem POV - in XFS, it would
require a change in fs/xfs/linux-2.6/xfs_buf.c - the call into
submit_bio() there is the point all metadata and log IO gets
funnelled through, and file data doesn't travel that path. So,
if the drivers/block layer supported a bio flag to say "this is
critical", it should be a one-line XFS change to support that I
would think.

I actually spoke to Jens awhile back about having a bio flag to
tag this kind of difference, it'd also be useful to us from a block
device tracing POV (i.e. in blktrace) for easily distinguishing file
data from metadata/log IOs, so maybe this is one way we'd be able to
see a little featurette like that someday too.

> Until the kernel is changed, your only option is to use a filesystem
> that lets you manually separate the two classes of data.  The Streaming
> Feature Set is held in the cfsse field and nothing in the kernel uses
> cfsse in any significant way, so it will probably be a while before
> Linux supports AV mode.

Oh well.

cheers.

-- 
Nathan


<Prev in Thread] Current Thread [Next in Thread>