diff options
author | Christoph Hellwig <hch@infradead.org> | 2011-10-12 11:07:07 -0400 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-24 03:21:10 +0000 |
commit | 3189b067eeae4646f3c7fa0ed0d14659a682baa8 (patch) | |
tree | b6e69465e1d79775e4afc2422e4067eea94dea3e /include/target | |
parent | 04629b7bde553e3703577779f53cb0ba1eddd2c0 (diff) | |
download | lwn-3189b067eeae4646f3c7fa0ed0d14659a682baa8.tar.gz lwn-3189b067eeae4646f3c7fa0ed0d14659a682baa8.zip |
target: pack struct se_task more tightly
Rearrange the fields in se_task to avoid holes. Also increase the
flags field to 16 bits as we have the space for it, and this makes
adding new flags safer.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'include/target')
-rw-r--r-- | include/target/target_core_base.h | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h index 45291b23bc03..a6c23485068e 100644 --- a/include/target/target_core_base.h +++ b/include/target/target_core_base.h @@ -402,24 +402,24 @@ struct se_queue_obj { } ____cacheline_aligned; struct se_task { - unsigned char task_sense; - struct scatterlist *task_sg; - u32 task_sg_nents; - struct scatterlist *task_sg_bidi; - u8 task_scsi_status; - u8 task_flags; - int task_error_status; unsigned long long task_lba; - u32 task_sectors; - u32 task_size; + u32 task_sectors; + u32 task_size; + struct se_cmd *task_se_cmd; + struct scatterlist *task_sg; + struct scatterlist *task_sg_bidi; + u32 task_sg_nents; + u16 task_flags; + u8 task_sense; + u8 task_scsi_status; + int task_error_status; enum dma_data_direction task_data_direction; - struct se_cmd *task_se_cmd; - struct completion task_stop_comp; - atomic_t task_state_active; + atomic_t task_state_active; struct timer_list task_timer; - struct list_head t_list; - struct list_head t_execute_list; - struct list_head t_state_list; + struct list_head t_list; + struct list_head t_execute_list; + struct list_head t_state_list; + struct completion task_stop_comp; } ____cacheline_aligned; struct se_cmd { |