Re: [PATCH V2 0/2] block: fix queue freeze and cleanup

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

 



在 2017/11/29 12:54, Ming Lei 写道:
Hi Chenxiang,

On Wed, Nov 29, 2017 at 10:57:06AM +0800, chenxiang (M) wrote:
在 2017/11/27 20:41, Ming Lei 写道:
On Thu, Nov 23, 2017 at 12:47:58PM +0800, Ming Lei wrote:
Hi Jens,

The 1st patch runs queue in blk_freeze_queue_start() for fixing one
regression by 055f6e18e08f("block: Make q_usage_counter also track legacy
requests").

The 2nd patch drians blkcg part of request_queue for both blk-mq and
legacy, which can be a fix on blk-mq's queue cleanup.

V2:
	- follow Bart's suggestion to use run queue instead of drain queue
	- drians blkcg part of request_queue for blk-mq

Hi Jens,

Without this patchset, IO hang can be triggered in Mauricio's disk
pull test, and this IO hang won't happen any more after this patchset
is applied.

So could you make it in V4.15 if you are fine with the two patches?
Hi Lei Ming,

I applied this v2 patchset to kernel 4.15-rc1, running fio on a SATA disk,
then disable the disk with sysfs interface
I guess it is a SAS disk?

My test is on SATA disk. Our driver is SAS driver, and it supports SATA disk and SAS disk.


(echo 0 > /sys/class/sas_phy/phy-1:0:1/enable), and find system is hung. But
with v1 patch, it doesn't
has this issue. Please have a check.
Thanks for your test!

Then looks even though V2 can fix Mauricio's issue, it still can't fix
yours, which is a regression caused by 055f6e18e08f("block: Make q_usage_counter
also track legacy requests").

Given V1 can fix both your issue and Mauricio's, I will post V3 which falls
back to original V1.


Thanks,
Ming

.






[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux