On Sun, Jul 18, 2010 at 05:17:10PM -0400, Christoph Hellwig wrote: > If we write into an unwritten extent using AIO we need to complete the AIO > request after the extent conversion has finished. Without that a read could > race to see see the extent still unwritten and return zeros. For synchronous > I/O we already take care of that by flushing the xfsconvertd workqueue (which > might be a bit of overkill). > > To do that add iocb and result fields to struct xfs_ioend, so that we can > call aio_complete from xfs_end_io after the extent conversion has happened. > Note that we need a new result field as io_error is used for positive errno > values, while the AIO code can return negative error values and positive > transfer sizes. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs