[PATCH 5.10 431/663] device-dax: Fix default return code of range_parse()

From: Greg Kroah-Hartman
Date: Mon Mar 01 2021 - 22:08:14 EST


From: Shiyang Ruan <ruansy.fnst@xxxxxxxxxxxxxx>

[ Upstream commit 7323fb22f05ff1d20498d267828870a5fbbaebd6 ]

The return value of range_parse() indicates the size when it is
positive. The error code should be negative.

Signed-off-by: Shiyang Ruan <ruansy.fnst@xxxxxxxxxxxxxx>
Reviewed-by: Joao Martins <joao.m.martins@xxxxxxxxxx>
Link: https://lore.kernel.org/r/20210126021331.1059933-1-ruansy.fnst@xxxxxxxxxxxxxx
Reported-by: Zhang Qilong <zhangqilong3@xxxxxxxxxx>
Fixes: 8490e2e25b5a ("device-dax: add a range mapping allocation attribute")
Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/dax/bus.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dax/bus.c b/drivers/dax/bus.c
index de7b74505e75e..c1d379bd7af33 100644
--- a/drivers/dax/bus.c
+++ b/drivers/dax/bus.c
@@ -1046,7 +1046,7 @@ static ssize_t range_parse(const char *opt, size_t len, struct range *range)
{
unsigned long long addr = 0;
char *start, *end, *str;
- ssize_t rc = EINVAL;
+ ssize_t rc = -EINVAL;

str = kstrdup(opt, GFP_KERNEL);
if (!str)
--
2.27.0