On Tue, May 31, 2016 at 06:32:52PM +1000, Dave Chinner wrote: > On Wed, May 25, 2016 at 03:31:07PM -0400, Brian Foster wrote: > > Multi-block buffers are logged based on buffer offset in > > xfs_trans_log_buf(). xfs_buf_item_log() ultimately walks each mapping in > > the buffer and marks the associated range to be logged in the > > xfs_buf_log_format bitmap for that mapping. This code is broken, > > however, [....] > > [snip description I've not read, and go look at the code changes] .... > So from the code perspective the change looks correct. I've looked > over all the other users of bp->b_maps[i].bm_len and loops over > bli_format_count and I can't see any other obvious problems. I'm > going to leave this under test overnight and see if anything pops > up... Passes all the tests I've thrown at it. multiple xfstests runs on multiple machines with dir block sizes from 16k to 64k, fsmark runs with 16k and 64k block sizes, dbench stress loops with up to 500 processes running at once, etc. Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> I'll commit this when I get to updating the xfs trees now that the merge window has closed and 4.7-rc1 is out. Hopefully that will be later today.... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs