• D
    xfs: DIO needs an ioend for writes · d5cc2e3f
    Dave Chinner 提交于
    Currently we can only tell DIO completion that an IO requires
    unwritten extent completion. This is done by a hacky non-null
    private pointer passed to Io completion, but the private pointer
    does not actually contain any information that is used.
    
    We also need to pass to IO completion the fact that the IO may be
    beyond EOF and so a size update transaction needs to be done. This
    is currently determined by checks in the io completion, but we need
    to determine if this is necessary at block mapping time as we need
    to defer the size update transactions to a completion workqueue,
    just like unwritten extent conversion.
    
    To do this, first we need to allocate and pass an ioend to to IO
    completion. Add this for unwritten extent conversion; we'll do the
    EOF updates in the next commit.
    Signed-off-by: NDave Chinner <dchinner@redhat.com>
    Reviewed-by: NBrian Foster <bfoster@redhat.com>
    Signed-off-by: NDave Chinner <david@fromorbit.com>
    d5cc2e3f
xfs_trace.h 63.6 KB