Re: DIF/DIX issue related to config CONFIG_SCSI_MQ_DEFAULT

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

 



+

On 30/11/2018 01:19, Ming Lei wrote:
On Wed, Nov 28, 2018 at 10:50:11AM +0800, chenxiang (M) wrote:
Hi  Lei Ming,

在 2018/11/27 21:08, Ming Lei 写道:
On Tue, Nov 27, 2018 at 05:55:45PM +0800, chenxiang (M) wrote:
Hi all,

There is a issue which may be related to CONFIG_SCSI_MQ_DEFAULT: before we
developed DIF/DIX feature on kernel 4.18 (disable CONFIG_SCSI_MQ_DEFAULT
default), and
it works well.
I guess you are testing hisi_sas_v3_hw, does 4.18 work with
'scsi_mod.use_blk_mq=Y'? If yes, you may run 'git bisect' to figure out
which commit is the 1st bad one.

Yes, i am testing hisi_sas_v3_hw, if 4.18 with 'scsi_mod.use_blk_mq=Y' ,
there is still a issue, and
the log is as attached ;


But when we switch to kernel 4.19-rc1 and 4.20-rc1, Call
trace as follow occurs when running fio and if disable config
CONFIG_SCSI_MQ_DEFAULT,
then it works well. Also if switch ioengine=libaio to ioengine=psync, it
seems also work well. Do you have any idea or encounter similar issue?
I tested scsi-debug via 'dix=1 dif=1', looks everything is fine, are you
using direct io or not?
Yes, i use direct io.
I also test scsi-debug on kernel 4.19, and there seems be some other issue,
and i am not sure
whethere there is something wrong my operation:

root@(none)$ insmod scsi_debug.ko dif=1 dix=1 virtual_gb=120

Hi chenxiang,

For DIX/DIF test, I think you need to pass 'dev_size_mb=XXX' instead of
'virtual_gb'.

I just run FIO over 'scsi_debug dev_size_mb=896 max_luns=1 dif=1 dix=1'
on one apm-mustang-ev3 board, and looks everything is fine. You may run
the same test on your D06 and see if it is fine.

Please check if you may reproduce the list corruption issue on v4.18 with
hisi_sas_v3_hw.


Hi Ming,

Thanks for your support.

We have also noticed that if we just enable DIF in hisi_sas (with MQ), and not DIX, then no issue.

I did also noticed mail "[PATCH v2 01/23] zfcp: make DIX experimental, disabled, and independent of DIF", where DIX is made experimental.

For now we may not support DIX. It seems to have issues. We wanted to try 3008 card on our system, but it does not seem to support DIX 0-3.

BTW, chen xiang said your commnand works ok on our HW. He can confirm.

Thanks again,
John

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