On Tue, Oct 30, 2012 at 08:23:31AM -0400, Christoph Hellwig wrote:
> > Remote attr buffers aren't logged - they are written sycnhronously
> > during the transaction - so won't get found by this.
> Oh right. Removing the synchronous writes for the remote attrs is
> someting we should tackled on day as well.
> > As for remote
> > symlink buffers, yeah, that might be a problem. Ultimately, both of
> > these buffer types are going to grow headers for CRCs, so this
> > problem will go away. I'm not sure how to address this problem
> > in the mean time short of putting the buffer content type into all
> > the buf_log_format headers. Do you have any better ideas?
> I can't think of a really good idea. But introducing user exploitable
> issues in log recovery is something I'd avoid. I also hate having to
> change the log format now if we're going to bump it soon again. Let
> me look a bit more at the log recovery code if there's some way to
> interfer the buffer type.
I couldn't find any short of magic number matches. The ones that can
be inferred (inode and dquot buffers) are done that way, but for
everything else they are anonymous buffers being recovered. I might
just drop this patch for now, and only re-introduce it for CRC
enabled filesystems when that is added.