[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [dm-devel] [PATCH v2 3/5] dm mpath: reduce size of multipath structure
- From: Hannes Reinecke <hare suse de>
- To: Mike Snitzer <snitzer redhat com>
- Cc: dm-devel redhat com, babu moger netapp com, agk redhat com
- Subject: Re: [dm-devel] [PATCH v2 3/5] dm mpath: reduce size of multipath structure
- Date: Wed, 09 May 2012 08:58:53 +0200
On 05/08/2012 11:56 PM, Mike Snitzer wrote:
> Move multipath structure's 'lock' and 'queue_size' members to eliminate
> 2 4-byte holes. Also use a bit within a single unsigned int for each
> existing flag (saves 8-bytes). This allows future flags to be added
> without each consuming an unsigned int.
>
> Signed-off-by: Mike Snitzer <snitzer redhat com>
> ---
> drivers/md/dm-mpath.c | 13 +++++++------
> 1 files changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
> index 754f38f..c351607 100644
> --- a/drivers/md/dm-mpath.c
> +++ b/drivers/md/dm-mpath.c
> @@ -61,11 +61,11 @@ struct multipath {
> struct list_head list;
> struct dm_target *ti;
>
> - spinlock_t lock;
> -
> const char *hw_handler_name;
> char *hw_handler_params;
>
> + spinlock_t lock;
> +
> unsigned nr_priority_groups;
> struct list_head priority_groups;
>
> @@ -81,16 +81,17 @@ struct multipath {
> struct priority_group *next_pg; /* Switch to this PG if set */
> unsigned repeat_count; /* I/Os left before calling PS again */
>
> - unsigned queue_io; /* Must we queue all I/O? */
> - unsigned queue_if_no_path; /* Queue I/O if last path fails? */
> - unsigned saved_queue_if_no_path;/* Saved state during suspension */
> + unsigned queue_io:1; /* Must we queue all I/O? */
> + unsigned queue_if_no_path:1; /* Queue I/O if last path fails? */
> + unsigned saved_queue_if_no_path:1; /* Saved state during suspension */
> +
> unsigned pg_init_retries; /* Number of times to retry pg_init */
> unsigned pg_init_count; /* Number of times pg_init called */
> unsigned pg_init_delay_msecs; /* Number of msecs before pg_init retry */
>
> + unsigned queue_size;
> struct work_struct process_queued_ios;
> struct list_head queued_ios;
> - unsigned queue_size;
>
> struct work_struct trigger_event;
>
Acked-by: Hannes Reinecke <hare suse de>
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare suse de +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]