mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-03-16 03:54:10 +00:00
fsdax: dax_unshare_iter() should return a valid length
The copy_mc_to_kernel() will return 0 if it executed successfully. Then
the return value should be set to the length it copied.
[akpm@linux-foundation.org: don't mess up `ret', per Matthew]
Link: https://lkml.kernel.org/r/1675341227-14-1-git-send-email-ruansy.fnst@fujitsu.com
Fixes: d984648e42
("fsdax,xfs: port unshare to fsdax")
Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
Cc: Darrick J. Wong <djwong@kernel.org>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: John Hubbard <jhubbard@nvidia.com>
Cc: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
aa1e6a932c
commit
388bc034d9
1 changed files with 3 additions and 2 deletions
5
fs/dax.c
5
fs/dax.c
|
@ -1271,8 +1271,9 @@ static s64 dax_unshare_iter(struct iomap_iter *iter)
|
|||
if (ret < 0)
|
||||
goto out_unlock;
|
||||
|
||||
ret = copy_mc_to_kernel(daddr, saddr, length);
|
||||
if (ret)
|
||||
if (copy_mc_to_kernel(daddr, saddr, length) == 0)
|
||||
ret = length;
|
||||
else
|
||||
ret = -EIO;
|
||||
|
||||
out_unlock:
|
||||
|
|
Loading…
Add table
Reference in a new issue