Does that mean it needs to seek to and from the volume label/volume info blocks for every single read or write?
It sounds like that would kill performance, at a time when you needed all the performance you could get. I suppose it could be amortized, something like only check the volume headers if it has been more than 10 seconds since the last read/write.