On Sat, Mar 06, 2010 at 06:31:19AM -0500, Christoph Hellwig wrote:
> On Sat, Mar 06, 2010 at 12:51:23PM +1100, Dave Chinner wrote:
> > From: Dave Chinner <dchinner@xxxxxxxxxx>
> > The current log IO vector structure is a flat array and not
> > extensible. To make it possible to keep separate log IO vectors for
> > individual log items, we need a method of chaining log IO vectors
> > together.
> > Introduce a new log vector type that can be used to wrap the
> > existing log IO vectors on use that internally to the log. This
> > means that the existing external interface (xfs_log_write) does not
> > change and hence no changes to the transaction commit code are
> > required.
> > This initial use of the new log vectors does not use the chaining
> > capability of the new log vector structure - it is not needed to
> > implement the flat vector array the current transaction commit path
> > creates.
> Given that we don't need it yet I wonder if it would be a better idea
> to postponed it to the start of the actual delayed logging series?
Yes, it could be. I wanted to get it out separate from the delayed
logging patches so I could concentrate on them separately. I put it
in this series because it's been unchanged for some time now and
doesn't appear to cause any problems at all.
> patch 9 would be nice to have before, but that might be a bit too much
> rebase work. Anyway, looking into a real review soon.
Yeah, that's what I didn't want to do. The code as it stands in
these patches is actually tested with chained log vectors (the next
patch in the series contains all the delayed logging stuff which I
haven't split yet), so I didn't want to propose code for the dev tree
that I wasn't actually testing....