If you created a realtime file & wrote to it with buffered I/O, it
could wind up on the wrong device due to a check that did not allow
bmaps for block zero. Block zero on the realtime is perfectly valid,
and only pbm_bn < 0 reflects a special situation such as delalloc.
Also clean up the "weird blockno" check in set_buffer_dirty_uptodate()
so that it won't complain about block zero if it looks like this
might be destined for the realtime device. And move the whole check
into #ifdef PAGEBUF_DEBUG for good measure.
Date: Mon Feb 4 08:31:54 PST 2002
The following file(s) were checked into:
linux/fs/xfs/pagebuf/page_buf_io.c - 1.6
- Allow block zero in __pb_block_prepare_write_async
Move block zero check into PAGEBUF_DEBUG, make it a bit smarter.