[PATCH v2 1/6] tool api fs: Correctly encode errno for read/write open failures

Ian Rogers posted 6 patches 3 weeks, 1 day ago
There is a newer version of this series
[PATCH v2 1/6] tool api fs: Correctly encode errno for read/write open failures
Posted by Ian Rogers 3 weeks, 1 day ago
Switch from returning -1 to -errno so that callers can determine types
of failure.

Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/lib/api/fs/fs.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/lib/api/fs/fs.c b/tools/lib/api/fs/fs.c
index 337fde770e45..edec23406dbc 100644
--- a/tools/lib/api/fs/fs.c
+++ b/tools/lib/api/fs/fs.c
@@ -296,7 +296,7 @@ int filename__read_int(const char *filename, int *value)
 	int fd = open(filename, O_RDONLY), err = -1;
 
 	if (fd < 0)
-		return -1;
+		return -errno;
 
 	if (read(fd, line, sizeof(line)) > 0) {
 		*value = atoi(line);
@@ -314,7 +314,7 @@ static int filename__read_ull_base(const char *filename,
 	int fd = open(filename, O_RDONLY), err = -1;
 
 	if (fd < 0)
-		return -1;
+		return -errno;
 
 	if (read(fd, line, sizeof(line)) > 0) {
 		*value = strtoull(line, NULL, base);
@@ -372,7 +372,7 @@ int filename__write_int(const char *filename, int value)
 	char buf[64];
 
 	if (fd < 0)
-		return err;
+		return -errno;
 
 	sprintf(buf, "%d", value);
 	if (write(fd, buf, sizeof(buf)) == sizeof(buf))
-- 
2.47.0.199.ga7371fff76-goog
Re: [PATCH v2 1/6] tool api fs: Correctly encode errno for read/write open failures
Posted by Arnaldo Carvalho de Melo 2 weeks, 5 days ago
On Sat, Nov 02, 2024 at 09:53:55AM -0700, Ian Rogers wrote:
> Switch from returning -1 to -errno so that callers can determine types
> of failure.

Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com>

- Arnaldo
 
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/lib/api/fs/fs.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/tools/lib/api/fs/fs.c b/tools/lib/api/fs/fs.c
> index 337fde770e45..edec23406dbc 100644
> --- a/tools/lib/api/fs/fs.c
> +++ b/tools/lib/api/fs/fs.c
> @@ -296,7 +296,7 @@ int filename__read_int(const char *filename, int *value)
>  	int fd = open(filename, O_RDONLY), err = -1;
>  
>  	if (fd < 0)
> -		return -1;
> +		return -errno;
>  
>  	if (read(fd, line, sizeof(line)) > 0) {
>  		*value = atoi(line);
> @@ -314,7 +314,7 @@ static int filename__read_ull_base(const char *filename,
>  	int fd = open(filename, O_RDONLY), err = -1;
>  
>  	if (fd < 0)
> -		return -1;
> +		return -errno;
>  
>  	if (read(fd, line, sizeof(line)) > 0) {
>  		*value = strtoull(line, NULL, base);
> @@ -372,7 +372,7 @@ int filename__write_int(const char *filename, int value)
>  	char buf[64];
>  
>  	if (fd < 0)
> -		return err;
> +		return -errno;
>  
>  	sprintf(buf, "%d", value);
>  	if (write(fd, buf, sizeof(buf)) == sizeof(buf))
> -- 
> 2.47.0.199.ga7371fff76-goog