Re: [PATCH] mtd: blktrans: change blktrans_getgeo rerurn value

From: Wenlin Kang
Date: Thu May 21 2015 - 04:03:57 EST


On 2015å05æ21æ 15:37, Brian Norris wrote:
On Thu, May 21, 2015 at 02:49:38PM +0800, Wenlin Kang wrote:
On 2015å05æ21æ 03:47, nick wrote:
On 2015-05-20 03:33 PM, Brian Norris wrote:
On Wed, May 13, 2015 at 02:29:16PM +0800, Wenlin Kang wrote:
Modify function blktrans_getgeo()'s return value to -ENXIO when
dev->tr->getgeo == NULL.

We shouldn't make the return value to 0 when dev->tr->getgeo == NULL,
because the function blktrans_getgeo() has an output value "hd_geometry"
which is usually used by some application, if return 0, it will make some
application get the wrong information.

Signed-off-by: Wenlin Kang <wenlin.kang@xxxxxxxxxxxxx>
---
drivers/mtd/mtd_blkdevs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c
index 2b0c5287..f8bb16e 100644
--- a/drivers/mtd/mtd_blkdevs.c
+++ b/drivers/mtd/mtd_blkdevs.c
@@ -273,7 +273,7 @@ static int blktrans_getgeo(struct block_device *bdev, struct hd_geometry *geo)
if (!dev->mtd)
goto unlock;
- ret = dev->tr->getgeo ? dev->tr->getgeo(dev, geo) : 0;
+ ret = dev->tr->getgeo ? dev->tr->getgeo(dev, geo) : -ENXIO;
Good catch. I don't think ENXIO is correct in this case, though. Maybe
-EOPNOTSUPP or -ENOSYS? The latter might make more sense I guess.

I would recommend -EOPNOTSUPP as this as nothing to do with unimplemented
functions or hardware support. This is just unsupported due to the value
being NULL and therefore the hardware support is not there.
Just My Option,
Nick
As you said, -EOPNOTSUPP might be better,thanks.
Nick's opinion is irrelevant here:

https://lkml.org/lkml/2014/8/4/206

I have remade the patch and attached it, would you please check it
again? thanks.
Please send patches inline (e.g., via git-send-email), not as
attachments. But this is pretty trivial, and it's what I already tested.

So, applied to l2-mtd.git.

Brian


OK, thanks, I have resent the patch to you and list by git send-email, please check it.




--
Thanks,
Wenlin Kang

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/