Re: [PATCH 01/10] ext4: ext4_inode_info diet
From: Jan Kara <jack@suse.cz>
Date: 2012-09-26 12:28:35
On Mon 24-09-12 15:44:11, Dmitry Monakhov wrote:
quoted hunk ↗ jump to hunk
Generic inode has unused i_private pointer which may be used as cur_aio_dio storage. TODO: If cur_aio_dio will be passed as an argument to get_block_t this allow to have concurent AIO_DIO requests. Reviewed-by: Zheng Liu <redacted> Signed-off-by: Dmitry Monakhov <redacted> --- fs/ext4/ext4.h | 5 +++-- fs/ext4/extents.c | 4 ++-- fs/ext4/inode.c | 6 +++--- fs/ext4/super.c | 1 - 4 files changed, 8 insertions(+), 8 deletions(-)diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 8b6902c..e59fbc5 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h@@ -912,8 +912,6 @@ struct ext4_inode_info { struct list_head i_completed_io_list; spinlock_t i_completed_io_lock; atomic_t i_ioend_count; /* Number of outstanding io_end structs */ - /* current io_end structure for async DIO write*/ - ext4_io_end_t *cur_aio_dio; atomic_t i_aiodio_unwritten; /* Nr. of inflight conversions pending */ spinlock_t i_block_reservation_lock;@@ -929,6 +927,9 @@ struct ext4_inode_info { __u32 i_csum_seed; }; +/* current io_end structure for async DIO write */ +#define EXT4_CUR_AIO_DIO(inode) (inode)->i_private
Inline functions are prefered over macros (due to type checks they provide etc.). Also that will allow you to get rid of those type casts when using EXT4_CUR_AIO_DIO(). So please make a pair of get/set inline functions out of this macro. Honza -- Jan Kara [off-list ref] SUSE Labs, CR