On Mon, Apr 24, 2017 at 09:22:45AM -0400, Jeff Layton wrote:
> In order to get proper error codes from fsync, we must set an error in
> the mapping range when writeback fails.
> 
> Signed-off-by: Jeff Layton <jlay...@redhat.com>

Works fine in some error injection testing.

Tested-by: Ross Zwisler <ross.zwis...@linux.intel.com>

> ---
>  fs/dax.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/dax.c b/fs/dax.c
> index 85abd741253d..9b6b04030c3f 100644
> --- a/fs/dax.c
> +++ b/fs/dax.c
> @@ -901,8 +901,10 @@ int dax_writeback_mapping_range(struct address_space 
> *mapping,
>  
>                       ret = dax_writeback_one(bdev, mapping, indices[i],
>                                       pvec.pages[i]);
> -                     if (ret < 0)
> +                     if (ret < 0) {
> +                             mapping_set_error(mapping, ret);
>                               return ret;
> +                     }
>               }
>       }
>       return 0;
> -- 
> 2.9.3
> 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Jfs-discussion mailing list
Jfs-discussion@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jfs-discussion

Reply via email to