[dm-devel] [RFC][PATCH] Fix BIO reordering when resuming devices

Joe Thornber thornber at sistina.com
Fri Jan 2 05:54:01 UTC 2004


On Thu, Jan 01, 2004 at 10:14:30PM +0100, Christophe Saout wrote:
> @@ -891,12 +902,14 @@
>  
>  	dm_table_resume_targets(md->map);
>  	clear_bit(DMF_SUSPENDED, &md->flags);
> +	def = md->deferred_head;
> +	md->deferred_head = md->deferred_tail = NULL;
> +
> +	flush_deferred_io(md, def);
> +
>  	clear_bit(DMF_BLOCK_IO, &md->flags);
> -	def = md->deferred;
> -	md->deferred = NULL;
>  	up_write(&md->lock);
>  
> -	flush_deferred_io(def);
>  	blk_run_queues();

Is there any reason why you have moved the flush_deferred_io() in
between the 2 clear_bit() calls, rather than after the second ?  After
all it is the md->lock that is blocking dm_request().

- Joe




More information about the dm-devel mailing list