Flexible I/O Tester development
 help / color / mirror / Atom feed
* [PATCH 1/3] Be more verbose on endianness detection failure
@ 2017-02-11 14:28 kusumi.tomohiro
  2017-02-11 14:28 ` [PATCH 2/3] Add a comment to clarify 941bda94 kusumi.tomohiro
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: kusumi.tomohiro @ 2017-02-11 14:28 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 libfio.c | 29 ++++++++++++++++++++++++-----
 1 file changed, 24 insertions(+), 5 deletions(-)

diff --git a/libfio.c b/libfio.c
index 960daf6..096efe2 100644
--- a/libfio.c
+++ b/libfio.c
@@ -327,16 +327,16 @@ static int endian_check(void)
 
 #if defined(CONFIG_LITTLE_ENDIAN)
 	if (be)
-		return 1;
+		return 1; /* should be little */
 #elif defined(CONFIG_BIG_ENDIAN)
 	if (le)
-		return 1;
+		return 2; /* should be big */
 #else
-	return 1;
+	return 3; /* configured for neither */
 #endif
 
 	if (!le && !be)
-		return 1;
+		return 4; /* broken */
 
 	return 0;
 }
@@ -344,6 +344,7 @@ static int endian_check(void)
 int initialize_fio(char *envp[])
 {
 	long ps;
+	int err;
 
 	/*
 	 * We need these to be properly 64-bit aligned, otherwise we
@@ -359,8 +360,26 @@ int initialize_fio(char *envp[])
 	compiletime_assert((offsetof(struct thread_options_pack, percentile_list) % 8) == 0, "percentile_list");
 	compiletime_assert((offsetof(struct thread_options_pack, latency_percentile) % 8) == 0, "latency_percentile");
 
-	if (endian_check()) {
+	err = endian_check();
+	if (err) {
 		log_err("fio: endianness settings appear wrong.\n");
+		switch (err) {
+		case 1:
+			log_err("fio: got big-endian when configured for little\n");
+			break;
+		case 2:
+			log_err("fio: got little-endian when configured for big\n");
+			break;
+		case 3:
+			log_err("fio: not configured to any endianness\n");
+			break;
+		case 4:
+			log_err("fio: failed to find endianness\n");
+			break;
+		default:
+			assert(0);
+			break;
+		}
 		log_err("fio: please report this to fio@vger.kernel.org\n");
 		return 1;
 	}
-- 
2.9.3



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

end of thread, other threads:[~2017-02-13 15:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-11 14:28 [PATCH 1/3] Be more verbose on endianness detection failure kusumi.tomohiro
2017-02-11 14:28 ` [PATCH 2/3] Add a comment to clarify 941bda94 kusumi.tomohiro
2017-02-13 15:41   ` Jens Axboe
2017-02-11 14:28 ` [PATCH 3/3] steadystate: Use calloc(3) kusumi.tomohiro
2017-02-13 15:41 ` [PATCH 1/3] Be more verbose on endianness detection failure Jens Axboe

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