public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH] libmtd: don't print an error message for devices without ecc support
@ 2018-09-19  8:29 David Oberhollenzer
  2018-09-19 21:45 ` Chris Packham
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: David Oberhollenzer @ 2018-09-19  8:29 UTC (permalink / raw)
  To: linux-mtd; +Cc: Chris.Packham, xiaolei.li, David Oberhollenzer

The libmtd library tries to obtain the available OOB size via the sysfs
with a fallback to the ECCGETLAYOUT ioctl. For some devices (e.g. plat-ram),
the fallback path is always taken and prints an error message to stderr
since the ioctl fails.

This patch fixes the fallback path by suppressing the error message if
errno is set to EOPNOTSUPP (i.e. the device simply doesn't support that).

Fixes: a10353584f93 ("libmtd: Add support to access OOB available size")
Reported-by: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
---
 lib/libmtd_legacy.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/libmtd_legacy.c b/lib/libmtd_legacy.c
index 97fef04..2b7f65f 100644
--- a/lib/libmtd_legacy.c
+++ b/lib/libmtd_legacy.c
@@ -235,6 +235,8 @@ int legacy_get_mtd_oobavail(const char *node)
 
 	ret = ioctl(fd, ECCGETLAYOUT, &usrlay);
 	if (ret < 0) {
+		if (errno == EOPNOTSUPP)
+			goto out_close;
 		sys_errmsg("ECCGETLAYOUT ioctl request failed");
 		goto out_close;
 	}
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-10-02 12:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-19  8:29 [PATCH] libmtd: don't print an error message for devices without ecc support David Oberhollenzer
2018-09-19 21:45 ` Chris Packham
2018-09-20  0:59 ` xiaolei li
2018-10-02 12:06 ` David Oberhollenzer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox