[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160203154816.GA2698@lst.de>
Date: Wed, 3 Feb 2016 16:48:16 +0100
From: Christoph Hellwig <hch@....de>
To: "Darrick J. Wong" <darrick.wong@...cle.com>
Cc: linux-fsdevel@...r.kernel.org, xfs@....sgi.com,
linux-ext4@...r.kernel.org, ocfs2-devel@....oracle.com
Subject: Re: [PATCH 1/3] direct-io: always call ->end_io if non-NULL
> > - if (dio->end_io && dio->result)
> > - dio->end_io(dio->iocb, offset, transferred, dio->private);
> > + if (dio->end_io)
> > + dio->end_io(dio->iocb, offset, ret, dio->private);
>
> Could we make end_io return an int so that errors during completion can be
> stuffed into ret to be picked up by whatever's calling directio? Something
> like this:
>
> if (dio->end_io) {
> int ret2;
>
> ret2 = dio->end_io(dio->iocb, offset, ret, dio->private);
> if (ret2 && !ret)
> ret = ret2;
> }
>
> That way I can capture IO errors during the CoW remapping step and pass them to
> userland either via dio_complete()'s return value or through ki_complete.
>
> (If ret itself is an error code then obviously we don't bother with the
> post-CoW remap.)
Should be doable, I'll respin it with that change.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists