Re: [PATCH] md/raid5: add thread_group worker async_tx_issue_pending_all

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 24, 2017 at 09:17:40AM +0300, oferh@xxxxxxxxxxx wrote:
> From: Ofer Heifetz <oferh@xxxxxxxxxxx>
> 
> Since thread_group worker and raid5d kthread are not in sync, if
> worker writes stripe before raid5d then requests will be waiting
> for issue_pendig.
> 
> Issue observed when building raid5 with ext4, in some build runs
> jbd2 would get hung and requests were waiting in the HW engine
> waiting to be issued.
> 
> Fix this by adding a call to async_tx_issue_pending_all in the
> raid5_do_work.

applied, thanks!
 
> Signed-off-by: Ofer Heifetz <oferh@xxxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> ---
>  drivers/md/raid5.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
> index aeeb8d6..3c0b924 100644
> --- a/drivers/md/raid5.c
> +++ b/drivers/md/raid5.c
> @@ -6237,6 +6237,8 @@ static void raid5_do_work(struct work_struct *work)
>  	pr_debug("%d stripes handled\n", handled);
>  
>  	spin_unlock_irq(&conf->device_lock);
> +
> +	async_tx_issue_pending_all();
>  	blk_finish_plug(&plug);
>  
>  	pr_debug("--- raid5worker inactive\n");
> -- 
> 1.9.1
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux