[PATCH 5/5] scsi: virtio_scsi: fix IO hang by irq vector automatic affinity

2018-02-02 Thread Ming Lei
Now 84676c1f21e8ff5(genirq/affinity: assign vectors to all possible CPUs) has been merged to V4.16-rc, and it is easy to allocate all offline CPUs for some irq vectors, this can't be avoided even though the allocation is improved. For example, on a 8cores VM, 4~7 are not-present/offline, 4 queues

[PATCH 4/5] scsi: introduce force_blk_mq

2018-02-02 Thread Ming Lei
>From scsi driver view, it is a bit troublesome to support both blk-mq and non-blk-mq at the same time, especially when drivers need to support multi hw-queue. This patch introduces 'force_blk_mq' to scsi_host_template so that drivers can provide blk-mq only support, so driver code can avoid the t

[PATCH 2/5] blk-mq: introduce BLK_MQ_F_GLOBAL_TAGS

2018-02-02 Thread Ming Lei
Quite a few HBAs(such as HPSA, megaraid, mpt3sas, ..) support multiple reply queues, but tags is often HBA wide. These HBAs have switched to use pci_alloc_irq_vectors(PCI_IRQ_AFFINITY) for automatic affinity assignment. Now 84676c1f21e8ff5(genirq/affinity: assign vectors to all possible CPUs) has

[PATCH 3/5] block: null_blk: introduce module parameter of 'g_global_tags'

2018-02-02 Thread Ming Lei
This patch introduces the parameter of 'g_global_tags' so that we can test this feature by null_blk easiy. Not see obvious performance drop with global_tags when the whole hw depth is kept as same: 1) no 'global_tags', each hw queue depth is 1, and 4 hw queues modprobe null_blk queue_mode=2 nr_de

[PATCH 1/5] blk-mq: tags: define several fields of tags as pointer

2018-02-02 Thread Ming Lei
This patch changes tags->breserved_tags, tags->bitmap_tags and tags->active_queues as pointer, and prepares for supporting global tags. No functional change. Cc: Laurence Oberman Cc: Mike Snitzer Cc: Christoph Hellwig Signed-off-by: Ming Lei --- block/bfq-iosched.c| 4 ++-- block/blk-mq

[PATCH 0/5] blk-mq/scsi-mq: support global tags & introduce force_blk_mq

2018-02-02 Thread Ming Lei
Hi All, This patchset supports global tags which was started by Hannes originally: https://marc.info/?l=linux-block&m=149132580511346&w=2 Also inroduce 'force_blk_mq' to 'struct scsi_host_template', so that driver can avoid to support two IO paths(legacy and blk-mq), especially recent di

CONTACT DHL OFFICE IMMEDIATELY FOR DELIVERY OF YOUR ATM MASTERCARD

2018-02-02 Thread Rev:Tony HARRIES
Attention; Beneficiary, This is to official inform you that we have been having meetings for the past three (3) weeks which ended two days ago with MR. JIM YONG KIM the Former world bank president and other seven continent presidents on the congress we treated on solution to scam victim problem

[GIT PULL] SCSI postmerge updates for the 4.15+ merge window

2018-02-02 Thread James Bottomley
This is a set of three patches that depended on mq and zone changes in the block tree (now upstream). The patch is available here: git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git scsi-postmerge The short changelog is: Bart Van Assche (1): scsi: scsi-mq-debugfs: Show more infor

Re: [PATCH 2/3] virtio-scsi: Add FC transport class

2018-02-02 Thread Steffen Maier
On 02/02/2018 05:00 PM, Hannes Reinecke wrote: On 01/26/2018 05:54 PM, Steffen Maier wrote: On 12/18/2017 09:31 AM, Hannes Reinecke wrote: On 12/15/2017 07:08 PM, Steffen Maier wrote: On 12/14/2017 11:11 AM, Hannes Reinecke wrote: To me, this raises the question which properties of the hos

Re: [PATCH v4 02/10] ufs: sysfs: device descriptor

2018-02-02 Thread Bart Van Assche
On Fri, 2018-02-02 at 08:17 +0100, gre...@linuxfoundation.org wrote: > On Fri, Feb 02, 2018 at 12:25:46AM +, Bart Van Assche wrote: > > On Thu, 2018-02-01 at 18:15 +0200, Stanislav Nijnikov wrote: > > > +enum ufs_desc_param_size { > > > + UFS_PARAM_BYTE_SIZE = 1, > > > + UFS_PARAM_WORD_SIZE

Re: [PATCH 2/3] virtio-scsi: Add FC transport class

2018-02-02 Thread Hannes Reinecke
On 01/26/2018 05:54 PM, Steffen Maier wrote: > On 12/18/2017 09:31 AM, Hannes Reinecke wrote: >> On 12/15/2017 07:08 PM, Steffen Maier wrote: >>> On 12/14/2017 11:11 AM, Hannes Reinecke wrote: When a device announces an 'FC' protocol we should be pulling in the FC transport class to have

[PATCH 6/6] scsi: qedf: use correct strncpy() size

2018-02-02 Thread Arnd Bergmann
gcc-8 warns during link-time optimization that the strncpy() call passes the size of the source buffer rather than the destination: drivers/scsi/qedf/qedf_dbg.c: In function 'qedf_uevent_emit': include/linux/string.h:253: error: 'strncpy' specified bound depends on the length of the source argume

[PATCH 3/6] scsi: sym53c416: avoid section mismatch with LTO

2018-02-02 Thread Arnd Bergmann
Building with link time optimizations produces a false-postive section mismatch warning: WARNING: vmlinux.o(.data+0xf8c8): Section mismatch in reference from the variable driver_template.lto_priv.6915 to the function .init.text:sym53c416_detect() The variable driver_template.lto_priv.6915 refere

[PATCH 5/6] scsi: qedi: fix building with LTO

2018-02-02 Thread Arnd Bergmann
When link-time optimizations are enabled, qedi fails to build because of mismatched prototypes: drivers/scsi/qedi/qedi_gbl.h:27:37: error: type of 'qedi_dbg_fops' does not match original declaration [-Werror=lto-type-mismatch] extern const struct file_operations qedi_dbg_fops;

[PATCH 4/6] scsi: qedf: fix LTO-enabled build

2018-02-02 Thread Arnd Bergmann
The prototype for qedf_dbg_fops/qedf_debugfs_ops doesn't match the definition, which causes the final link to fail with link-time optimizations: drivers/scsi/qedf/qedf_main.c:34: error: type of 'qedf_dbg_fops' does not match original declaration [-Werror=lto-type-mismatch] extern struct file_ope

[PATCH 2/6] scsi: NCR53c406a: avoid section mismatch with LTO

2018-02-02 Thread Arnd Bergmann
Building with link time optimizations produces a false-postive section mismatch warning: WARNING: vmlinux.o(.data+0xf7e8): Section mismatch in reference from the variable driver_template.lto_priv.6914 to the function .init.text:NCR53c406a_detect() The variable driver_template.lto_priv.6914 refer

[PATCH 0/6] scsi: fixes for building with LTO

2018-02-02 Thread Arnd Bergmann
I experimented with link time optimization after Nico's article at https://lwn.net/Articles/744507/ Here is a set of patches that came out of it for the scsi subsystem. Arnd Bergmann (6): scsi: fc_encode: work around strncpy size warnings scsi: NCR53c406a: avoid section mismatch with LTO sc

[PATCH 1/6] scsi: fc_encode: work around strncpy size warnings

2018-02-02 Thread Arnd Bergmann
struct fc_fdmi_attr_entry contains a variable-length string at the end, which is encoded as a one-byte array. gcc-8 notices that we copy strings into it that obviously go beyond that one byte: In function 'fc_ct_ms_fill', inlined from 'fc_elsct_send' at include/scsi/fc_encode.h:518:8: include

Re: [RFC 0/2] mpt3sas/megaraid_sas : irq poll and load balancing of reply queue

2018-02-02 Thread Ming Lei
Hi Kashyap, On Fri, Feb 02, 2018 at 05:08:12PM +0530, Kashyap Desai wrote: > > -Original Message- > > From: Ming Lei [mailto:ming@redhat.com] > > Sent: Friday, February 2, 2018 3:44 PM > > To: Kashyap Desai > > Cc: linux-scsi@vger.kernel.org; Peter Rivera > > Subject: Re: [RFC 0/2] mpt

RE: [RFC 0/2] mpt3sas/megaraid_sas : irq poll and load balancing of reply queue

2018-02-02 Thread Kashyap Desai
> -Original Message- > From: Ming Lei [mailto:ming@redhat.com] > Sent: Friday, February 2, 2018 3:44 PM > To: Kashyap Desai > Cc: linux-scsi@vger.kernel.org; Peter Rivera > Subject: Re: [RFC 0/2] mpt3sas/megaraid_sas : irq poll and load balancing of > reply queue > > Hi Kashyap, > > On

Re: [LSF/MM TOPIC] irq affinity handling for high CPU count machines

2018-02-02 Thread Ming Lei
Hi Kashyap, On Fri, Feb 02, 2018 at 02:19:01PM +0530, Kashyap Desai wrote: > > > > > Today I am looking at one megaraid_sas related issue, and found > > > > > pci_alloc_irq_vectors(PCI_IRQ_AFFINITY) is used in the driver, so > > > > > looks each reply queue has been handled by more than one CPU if

Re: [RFC 0/2] mpt3sas/megaraid_sas : irq poll and load balancing of reply queue

2018-02-02 Thread Ming Lei
Hi Kashyap, On Mon, Jan 15, 2018 at 05:42:05PM +0530, Kashyap Desai wrote: > Hi All - > > We have seen cpu lock up issue from fields if system has greater (more > than 96) logical cpu count. > SAS3.0 controller (Invader series) supports at max 96 msix vector and > SAS3.5 product (Ventura) support

RE: [LSF/MM TOPIC] irq affinity handling for high CPU count machines

2018-02-02 Thread Kashyap Desai
> > > > Today I am looking at one megaraid_sas related issue, and found > > > > pci_alloc_irq_vectors(PCI_IRQ_AFFINITY) is used in the driver, so > > > > looks each reply queue has been handled by more than one CPU if > > > > there are more CPUs than MSIx vectors in the system, which is done > > >