Kernel support for HAMMER:
* Add another type to the bio->bio_caller_info1 union
* Add two new flags to getblk(), used by the cluster code.
GETBLK_SZMATCH - Tell getblk() to fail and return NULL if a
pre-existing buffer's size does not match
the requested size (this prevents getblk()
from doing a potentially undesired bwrite()
sequence).
GETBLK_NOWAIT - Tell getblk() to use a non-blocking lock.
* pop_bio() now returns the previous BIO (or NULL if there is no previous
BIO). This allows HAMMER to chain bio_done()'s
* Fix a bug in cluster_read(). The cluster code's read-ahead at the
end could go past the caller-specified limit and force a block to
the wrong block size.