On Fri, Jan 19, 2018 at 02:59:51PM +1100, Dave Chinner wrote: > On Fri, Jan 19, 2018 at 02:13:53AM +0000, Al Viro wrote: > > On Thu, Jan 18, 2018 at 06:57:40PM -0600, Goldwyn Rodrigues wrote: > > > From: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx> > > > > > > In case direct I/O encounters an error midway, it returns the error. > > > Instead it should be returning the number of bytes transferred so far. > > > > > > Test case for filesystems (with ENOSPC): > > > 1. Create an almost full filesystem > > > 2. Create a file, say /mnt/lastfile, until the filesystem is full. > > > 3. Direct write() with count > sizeof /mnt/lastfile. > > > > > > Result: write() returns -ENOSPC. However, file content has data written > > > in step 3. > > > > > > This fixes fstest generic/472. > > > > OK... I can live with that. What about the XFS side? It should be > > a prereq, to avoid bisection hazard; I can throw both into vfs.git, > > if XFS folks are OK with that. Objections? > > Going through the VFS tree seesm the best approach to me - it's a > trivial change. I'm sure Darrick will shout if it's going to be a > problem, though. vfs.git is fine, though the second patch to remove the xfs assert should go first, as Al points out. For both patches, Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > > Cheers, > > Dave. > -- > Dave Chinner > david@xxxxxxxxxxxxx