All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/8] Define pointer alignment macro in fio.h
@ 2017-01-23 15:13 kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 2/8] Use ARRAY_SIZE() kusumi.tomohiro
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

Define PTR_ALIGN() as a common utility within the entire fio,
but inside FIO_INTERNAL guard since it could be a common name.

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 backend.c      | 5 +----
 fio.h          | 5 +++++
 lib/memalign.c | 4 +---
 smalloc.c      | 3 ++-
 4 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/backend.c b/backend.c
index 4570d8d..fc64709 100644
--- a/backend.c
+++ b/backend.c
@@ -76,9 +76,6 @@ int shm_id = 0;
 int temp_stall_ts;
 unsigned long done_secs = 0;
 
-#define PAGE_ALIGN(buf)	\
-	(char *) (((uintptr_t) (buf) + page_mask) & ~page_mask)
-
 #define JOB_START_TIMEOUT	(5 * 1000)
 
 static void sig_int(int sig)
@@ -1198,7 +1195,7 @@ static int init_io_u(struct thread_data *td)
 
 	if (td->o.odirect || td->o.mem_align || td->o.oatomic ||
 	    td_ioengine_flagged(td, FIO_RAWIO))
-		p = PAGE_ALIGN(td->orig_buffer) + td->o.mem_align;
+		p = PTR_ALIGN(td->orig_buffer, page_mask) + td->o.mem_align;
 	else
 		p = td->orig_buffer;
 
diff --git a/fio.h b/fio.h
index b2dade9..14950fc 100644
--- a/fio.h
+++ b/fio.h
@@ -619,6 +619,11 @@ extern int __must_check allocate_io_mem(struct thread_data *);
 extern void free_io_mem(struct thread_data *);
 extern void free_threads_shm(void);
 
+#ifdef FIO_INTERNAL
+#define PTR_ALIGN(ptr, mask)	\
+	(char *) (((uintptr_t) (ptr) + (mask)) & ~(mask))
+#endif
+
 /*
  * Reset stats after ramp time completes
  */
diff --git a/lib/memalign.c b/lib/memalign.c
index cfd6e46..1d1ba9b 100644
--- a/lib/memalign.c
+++ b/lib/memalign.c
@@ -3,14 +3,12 @@
 #include <inttypes.h>
 
 #include "memalign.h"
+#include "../fio.h"
 
 struct align_footer {
 	unsigned int offset;
 };
 
-#define PTR_ALIGN(ptr, mask)	\
-	(char *) (((uintptr_t) ((ptr) + (mask)) & ~(mask)))
-
 void *fio_memalign(size_t alignment, size_t size)
 {
 	struct align_footer *f;
diff --git a/smalloc.c b/smalloc.c
index d038ac6..e48cfe8 100644
--- a/smalloc.c
+++ b/smalloc.c
@@ -13,6 +13,7 @@
 #include <limits.h>
 #include <fcntl.h>
 
+#include "fio.h"
 #include "mutex.h"
 #include "arch/arch.h"
 #include "os/os.h"
@@ -248,7 +249,7 @@ static void *postred_ptr(struct block_hdr *hdr)
 	uintptr_t ptr;
 
 	ptr = (uintptr_t) hdr + hdr->size - sizeof(unsigned int);
-	ptr = (ptr + int_mask) & ~int_mask;
+	ptr = (uintptr_t) PTR_ALIGN(ptr, int_mask);
 
 	return (void *) ptr;
 }
-- 
2.5.5



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

* [PATCH 2/8] Use ARRAY_SIZE()
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 3/8] Fix wrong comment on exit condition of threads/processes kusumi.tomohiro
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

They can assume ARRAY_SIZE() is defined and usable as far as fio's
internal code is concerned (i.e. FIO_INTERNAL defined).

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 gclient.c     | 2 +-
 gfio.c        | 2 +-
 lib/num2str.c | 4 +---
 3 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/gclient.c b/gclient.c
index 5ce33d0..928a1b7 100644
--- a/gclient.c
+++ b/gclient.c
@@ -48,7 +48,7 @@ static GtkActionEntry results_menu_items[] = {
 	{ "PrintFile", GTK_STOCK_PRINT, "Print", "<Control>P", NULL, G_CALLBACK(results_print) },
 	{ "CloseFile", GTK_STOCK_CLOSE, "Close", "<Control>W", NULL, G_CALLBACK(results_close) },
 };
-static gint results_nmenu_items = sizeof(results_menu_items) / sizeof(results_menu_items[0]);
+static gint results_nmenu_items = ARRAY_SIZE(results_menu_items);
 
 static const gchar *results_ui_string = " \
 	<ui> \
diff --git a/gfio.c b/gfio.c
index 9ccf78c..9c917cb 100644
--- a/gfio.c
+++ b/gfio.c
@@ -1271,7 +1271,7 @@ static GtkActionEntry menu_items[] = {
 	{ "Quit", GTK_STOCK_QUIT, NULL,   "<Control>Q", NULL, G_CALLBACK(quit_clicked) },
 	{ "About", GTK_STOCK_ABOUT, NULL,  NULL, NULL, G_CALLBACK(about_dialog) },
 };
-static gint nmenu_items = sizeof(menu_items) / sizeof(menu_items[0]);
+static gint nmenu_items = ARRAY_SIZE(menu_items);
 
 static const gchar *ui_string = " \
 	<ui> \
diff --git a/lib/num2str.c b/lib/num2str.c
index 940d4a5..ed3545d 100644
--- a/lib/num2str.c
+++ b/lib/num2str.c
@@ -4,8 +4,6 @@
 
 #include "../fio.h"
 
-#define ARRAY_LENGTH(arr)	sizeof(arr) / sizeof((arr)[0])
-
 /**
  * num2str() - Cheesy number->string conversion, complete with carry rounding error.
  * @num: quantity (e.g., number of blocks, bytes or bits)
@@ -75,7 +73,7 @@ char *num2str(uint64_t num, int maxlen, int base, int pow2, int units)
 
 	if (modulo == -1U) {
 done:
-		if (post_index >= ARRAY_LENGTH(sistr))
+		if (post_index >= ARRAY_SIZE(sistr))
 			post_index = 0;
 
 		sprintf(buf, "%llu%s%s", (unsigned long long) num,
-- 
2.5.5



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

* [PATCH 3/8] Fix wrong comment on exit condition of threads/processes
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 2/8] Use ARRAY_SIZE() kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 4/8] Remove unused io_u's priv union field kusumi.tomohiro
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

74f4b020 in 2013 has changed the exit condition from min to max,
so sync the comment with 74f4b020.

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 backend.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/backend.c b/backend.c
index fc64709..27e36bb 100644
--- a/backend.c
+++ b/backend.c
@@ -1359,7 +1359,7 @@ static bool keep_running(struct thread_data *td)
 		uint64_t diff;
 
 		/*
-		 * If the difference is less than the minimum IO size, we
+		 * If the difference is less than the maximum IO size, we
 		 * are done.
 		 */
 		diff = limit - ddir_rw_sum(td->io_bytes);
-- 
2.5.5



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

* [PATCH 4/8] Remove unused io_u's priv union field
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 2/8] Use ARRAY_SIZE() kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 3/8] Fix wrong comment on exit condition of threads/processes kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 16:06   ` Andrey Kuzmin
  2017-01-23 15:13 ` [PATCH 5/8] Remove unused disk_util's name field kusumi.tomohiro
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 ioengine.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/ioengine.h b/ioengine.h
index 89873e7..7249df6 100644
--- a/ioengine.h
+++ b/ioengine.h
@@ -123,7 +123,6 @@ struct io_u {
 		struct ibv_mr *mr;
 #endif
 		void *mmap_data;
-		uint64_t null;
 	};
 };
 
-- 
2.5.5



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

* [PATCH 5/8] Remove unused disk_util's name field
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
                   ` (2 preceding siblings ...)
  2017-01-23 15:13 ` [PATCH 4/8] Remove unused io_u's priv union field kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 6/8] Add missing free(td->sysfs_root); kusumi.tomohiro
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 diskutil.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/diskutil.h b/diskutil.h
index ff8a5b0..04fdde2 100644
--- a/diskutil.h
+++ b/diskutil.h
@@ -46,7 +46,6 @@ struct disk_util {
 	 */
 	struct flist_head slavelist;
 
-	char *name;
 	char *sysfs_root;
 	char path[PATH_MAX];
 	int major, minor;
-- 
2.5.5



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

* [PATCH 6/8] Add missing free(td->sysfs_root);
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
                   ` (3 preceding siblings ...)
  2017-01-23 15:13 ` [PATCH 5/8] Remove unused disk_util's name field kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 7/8] Fix bad pointer du->sysfs_root kusumi.tomohiro
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

->sysfs_root for td (not du) is always strdup'd.

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 filesetup.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/filesetup.c b/filesetup.c
index eb28826..4aaa903 100644
--- a/filesetup.c
+++ b/filesetup.c
@@ -1208,6 +1208,7 @@ void close_and_free_files(struct thread_data *td)
 	td->o.filename = NULL;
 	free(td->files);
 	free(td->file_locks);
+	free(td->sysfs_root);
 	td->files_index = 0;
 	td->files = NULL;
 	td->file_locks = NULL;
-- 
2.5.5



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

* [PATCH 7/8] Fix bad pointer du->sysfs_root
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
                   ` (4 preceding siblings ...)
  2017-01-23 15:13 ` [PATCH 6/8] Add missing free(td->sysfs_root); kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:13 ` [PATCH 8/8] Remove/Move Linux specific sysfs_root field from thread_data kusumi.tomohiro
  2017-01-23 15:26 ` [PATCH 1/8] Define pointer alignment macro in fio.h Jens Axboe
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

There are two call paths for disk_util_add() (usually the second one)
which assigns ->sysfs_root for a newly allocated disk_util*, but both
temppath/foo are local char[] within their stack, so strdup/free it.

-> find_add_disk_slaves(...)
  -> __init_per_file_disk_util(..., temppath)
    -> disk_util_add(..., path)
      -> du->sysfs_root = path; /* == &temppath[0] */

-> init_per_file_disk_util(...)
  -> __init_per_file_disk_util(..., foo)
    -> disk_util_add(..., path)
      -> du->sysfs_root = path; /* == &foo[0] */

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 diskutil.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/diskutil.c b/diskutil.c
index 27ddb46..c34841a 100644
--- a/diskutil.c
+++ b/diskutil.c
@@ -37,6 +37,7 @@ static void disk_util_free(struct disk_util *du)
 	}
 
 	fio_mutex_remove(du->lock);
+	free(du->sysfs_root);
 	sfree(du);
 }
 
@@ -305,7 +306,7 @@ static struct disk_util *disk_util_add(struct thread_data *td, int majdev,
 		return NULL;
 	}
 	strncpy((char *) du->dus.name, basename(path), FIO_DU_NAME_SZ - 1);
-	du->sysfs_root = path;
+	du->sysfs_root = strdup(path);
 	du->major = majdev;
 	du->minor = mindev;
 	INIT_FLIST_HEAD(&du->slavelist);
-- 
2.5.5



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

* [PATCH 8/8] Remove/Move Linux specific sysfs_root field from thread_data
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
                   ` (5 preceding siblings ...)
  2017-01-23 15:13 ` [PATCH 7/8] Fix bad pointer du->sysfs_root kusumi.tomohiro
@ 2017-01-23 15:13 ` kusumi.tomohiro
  2017-01-23 15:26 ` [PATCH 1/8] Define pointer alignment macro in fio.h Jens Axboe
  7 siblings, 0 replies; 12+ messages in thread
From: kusumi.tomohiro @ 2017-01-23 15:13 UTC (permalink / raw)
  To: axboe, fio; +Cc: Tomohiro Kusumi

From: Tomohiro Kusumi <tkusumi@tuxera.com>

struct thread_data is better without having a Linux specific field
(even if sysfs_root is simply unused on non Linux environment) given
that other Linux specific code such as diskutil/cgroup/blktrace/etc
are compiled only on Linux.

This commit uses td->files[0]->du->sysfs_root instead of td->sysfs_root,
but results the same from the way diskutil is currently implemented.
Besides being platform independent, it's also better in terms of data
structure since sysfs_root isn't always per-td attribute as mentioned
below.

For example, when N(>1) files are specified via filename= option
(e.g. filename=/dev/sdb:/dev/sdc for N=2), td:files is 1:N, therefore
td:du and td:du->sysfs_root are also 1:N in case of /dev/sdb:/dev/sdc,
however td:td->sysfs_root is obviously 1:1 which in this case means
td->sysfs_root is sysfs root for /dev/sdb (regardless of other files)
from the way td->sysfs_root is set only if it hasn't yet been set.

In other words, if filename=/dev/sdb:/dev/sdc is given, ioscheduler=
option only works against /dev/sdb, which could be different from what
users would expect, but this commit just removes sysfs_root from
struct thread_data without any functional change.

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 backend.c   | 7 ++++++-
 diskutil.c  | 9 +--------
 filesetup.c | 1 -
 fio.h       | 2 --
 4 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/backend.c b/backend.c
index 27e36bb..1c1f2f9 100644
--- a/backend.c
+++ b/backend.c
@@ -1261,6 +1261,10 @@ static int init_io_u(struct thread_data *td)
 	return 0;
 }
 
+/*
+ * This function is Linux specific.
+ * FIO_HAVE_IOSCHED_SWITCH enabled currently means it's Linux.
+ */
 static int switch_ioscheduler(struct thread_data *td)
 {
 #ifdef FIO_HAVE_IOSCHED_SWITCH
@@ -1271,7 +1275,8 @@ static int switch_ioscheduler(struct thread_data *td)
 	if (td_ioengine_flagged(td, FIO_DISKLESSIO))
 		return 0;
 
-	sprintf(tmp, "%s/queue/scheduler", td->sysfs_root);
+	assert(td->files && td->files[0]);
+	sprintf(tmp, "%s/queue/scheduler", td->files[0]->du->sysfs_root);
 
 	f = fopen(tmp, "r+");
 	if (!f) {
diff --git a/diskutil.c b/diskutil.c
index c34841a..c3bcec9 100644
--- a/diskutil.c
+++ b/diskutil.c
@@ -431,9 +431,6 @@ static struct disk_util *__init_per_file_disk_util(struct thread_data *td,
 		sprintf(path, "%s", tmp);
 	}
 
-	if (td->o.ioscheduler && !td->sysfs_root)
-		td->sysfs_root = strdup(path);
-
 	return disk_util_add(td, majdev, mindev, path);
 }
 
@@ -452,12 +449,8 @@ static struct disk_util *init_per_file_disk_util(struct thread_data *td,
 			mindev);
 
 	du = disk_util_exists(majdev, mindev);
-	if (du) {
-		if (td->o.ioscheduler && !td->sysfs_root)
-			td->sysfs_root = strdup(du->sysfs_root);
-
+	if (du)
 		return du;
-	}
 
 	/*
 	 * for an fs without a device, we will repeatedly stat through
diff --git a/filesetup.c b/filesetup.c
index 4aaa903..eb28826 100644
--- a/filesetup.c
+++ b/filesetup.c
@@ -1208,7 +1208,6 @@ void close_and_free_files(struct thread_data *td)
 	td->o.filename = NULL;
 	free(td->files);
 	free(td->file_locks);
-	free(td->sysfs_root);
 	td->files_index = 0;
 	td->files = NULL;
 	td->file_locks = NULL;
diff --git a/fio.h b/fio.h
index 14950fc..19ac0af 100644
--- a/fio.h
+++ b/fio.h
@@ -205,8 +205,6 @@ struct thread_data {
 	void *iolog_buf;
 	FILE *iolog_f;
 
-	char *sysfs_root;
-
 	unsigned long rand_seeds[FIO_RAND_NR_OFFS];
 
 	struct frand_state bsrange_state;
-- 
2.5.5



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

* Re: [PATCH 1/8] Define pointer alignment macro in fio.h
  2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
                   ` (6 preceding siblings ...)
  2017-01-23 15:13 ` [PATCH 8/8] Remove/Move Linux specific sysfs_root field from thread_data kusumi.tomohiro
@ 2017-01-23 15:26 ` Jens Axboe
  7 siblings, 0 replies; 12+ messages in thread
From: Jens Axboe @ 2017-01-23 15:26 UTC (permalink / raw)
  To: kusumi.tomohiro; +Cc: fio, Tomohiro Kusumi

On Tue, Jan 24 2017, kusumi.tomohiro@gmail.com wrote:
> From: Tomohiro Kusumi <tkusumi@tuxera.com>
> 
> Define PTR_ALIGN() as a common utility within the entire fio,
> but inside FIO_INTERNAL guard since it could be a common name.

Thanks, applied 1-8.

-- 
Jens Axboe



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

* Re: [PATCH 4/8] Remove unused io_u's priv union field
  2017-01-23 15:13 ` [PATCH 4/8] Remove unused io_u's priv union field kusumi.tomohiro
@ 2017-01-23 16:06   ` Andrey Kuzmin
  2017-01-23 18:01     ` Jens Axboe
  0 siblings, 1 reply; 12+ messages in thread
From: Andrey Kuzmin @ 2017-01-23 16:06 UTC (permalink / raw)
  To: kusumi.tomohiro; +Cc: Tomohiro Kusumi, fio, axboe

[-- Attachment #1: Type: text/plain, Size: 699 bytes --]

This may break some I/O engines.


On Jan 23, 2017 18:13, <kusumi.tomohiro@gmail.com> wrote:

From: Tomohiro Kusumi <tkusumi@tuxera.com>

Signed-off-by: Tomohiro Kusumi <tkusumi@tuxera.com>
---
 ioengine.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/ioengine.h b/ioengine.h
index 89873e7..7249df6 100644
--- a/ioengine.h
+++ b/ioengine.h
@@ -123,7 +123,6 @@ struct io_u {
                struct ibv_mr *mr;
 #endif
                void *mmap_data;
-               uint64_t null;
        };
 };

--
2.5.5

--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: Type: text/html, Size: 1425 bytes --]

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

* Re: [PATCH 4/8] Remove unused io_u's priv union field
  2017-01-23 16:06   ` Andrey Kuzmin
@ 2017-01-23 18:01     ` Jens Axboe
  2017-01-23 18:08       ` Andrey Kuzmin
  0 siblings, 1 reply; 12+ messages in thread
From: Jens Axboe @ 2017-01-23 18:01 UTC (permalink / raw)
  To: Andrey Kuzmin, kusumi.tomohiro; +Cc: Tomohiro Kusumi, fio

On 01/23/2017 09:06 AM, Andrey Kuzmin wrote:
> This may break some I/O engines.

Are you using it? I'm happy to revert that change, it's not like
it's gaining us back some memory. It is annoying to have no in-tree
users of a "feature", though.

-- 
Jens Axboe



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

* Re: [PATCH 4/8] Remove unused io_u's priv union field
  2017-01-23 18:01     ` Jens Axboe
@ 2017-01-23 18:08       ` Andrey Kuzmin
  0 siblings, 0 replies; 12+ messages in thread
From: Andrey Kuzmin @ 2017-01-23 18:08 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Tomohiro Kusumi, fio, Tomohiro Kusumi

[-- Attachment #1: Type: text/plain, Size: 552 bytes --]

On Jan 23, 2017 21:01, "Jens Axboe" <axboe@kernel.dk> wrote:

On 01/23/2017 09:06 AM, Andrey Kuzmin wrote:
> This may break some I/O engines.

Are you using it? I'm happy to revert that change, it's not like
it's gaining us back some memory. It is annoying to have no in-tree
users of a "feature", though.



That's likely my bad as, from my (now apparently wrong) recollection, some
in-tree engines were utilizing it. I'm fine with the removal otherwise,
although it's a nice generic place-holder that avoids casting.

Regards,
Andfey


--
Jens Axboe

[-- Attachment #2: Type: text/html, Size: 1347 bytes --]

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

end of thread, other threads:[~2017-01-23 18:08 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-23 15:13 [PATCH 1/8] Define pointer alignment macro in fio.h kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 2/8] Use ARRAY_SIZE() kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 3/8] Fix wrong comment on exit condition of threads/processes kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 4/8] Remove unused io_u's priv union field kusumi.tomohiro
2017-01-23 16:06   ` Andrey Kuzmin
2017-01-23 18:01     ` Jens Axboe
2017-01-23 18:08       ` Andrey Kuzmin
2017-01-23 15:13 ` [PATCH 5/8] Remove unused disk_util's name field kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 6/8] Add missing free(td->sysfs_root); kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 7/8] Fix bad pointer du->sysfs_root kusumi.tomohiro
2017-01-23 15:13 ` [PATCH 8/8] Remove/Move Linux specific sysfs_root field from thread_data kusumi.tomohiro
2017-01-23 15:26 ` [PATCH 1/8] Define pointer alignment macro in fio.h Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.