flushing disk buffer cache
Don Lewis
truckman at FreeBSD.org
Fri Oct 29 12:04:34 PDT 2004
On 29 Oct, Siddharth Aggarwal wrote:
>
> Another related question ...
>
> Is it possible to delay or queue up disk writes until I exit from my
> function in the kernel (where I am trying to sync with the disk)? Or
> make sure that my sync function never goes to sleep waiting for the disk
> driver to signal completion of flushes to disk?
Take a look at how the snapshot code handles this. It has to be done
above the level of individual disk operations because certain file
system operations require multiple disk I/O operations to transform the
file system from one consistent state to another consistent state. If
you try to checkpoint in the middle of this sequence, you will capture a
state where the file system is internally inconsistent.
More information about the freebsd-hackers
mailing list