On Wed, Jun 06, 2012 at 12:32:26AM +0200, Jan Kara wrote: > Commit de1cbee which removed b_file_offset in favor of b_bn introduced a bug > causing xfs_buf_allocate_memory() to overestimate the number of necessary > pages. The problem is that xfs_buf_alloc() sets b_bn to -1 and thus effectively > every buffer is straddling a page boundary which causes > xfs_buf_allocate_memory() to allocate two pages and use vmalloc() for access > which is unnecessary. > > Dave says xfs_buf_alloc() doesn't need to set b_bn to -1 anymore since the > buffer is inserted into the cache only after being fully initialized now. > So just make xfs_buf_alloc() fill in proper block number from the beginning. > > CC: David Chinner <dchinner@xxxxxxxxxx> > Signed-off-by: Jan Kara <jack@xxxxxxx> Hmmm, the Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> I sent yesterday doesn't appear to have made it to the list. Oh well, try again... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs