On 10/18/18 9:47 PM, Bart Van Assche wrote:
On 10/18/18 6:03 AM, Christoph Hellwig wrote:
@@ -1790,8 +1783,8 @@ qla1280_load_firmware_dma(struct scsi_qla_host *ha)
mb[4] = cnt;
mb[3] = ha->request_dma & 0x;
mb[2] = (ha->request_dma >> 16) & 0x;
-
On 10/18/18 6:03 AM, Christoph Hellwig wrote:
@@ -1790,8 +1783,8 @@ qla1280_load_firmware_dma(struct scsi_qla_host *ha)
mb[4] = cnt;
mb[3] = ha->request_dma & 0x;
mb[2] = (ha->request_dma >> 16) & 0x;
- mb[7] =
On 10/18/18 6:03 AM, Christoph Hellwig wrote:
This also moves the optimization for builds with 32-bit dma_addr_t to
the compiler (where it belongs) instead of opencoding it based on
incorrect assumptions.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/qla2xxx/qla_target.c | 8
Hello Bart,
> On Oct 18, 2018, at 3:45 PM, Bart Van Assche wrote:
>
> External Email
>
> Hi Martin,
>
> This is a series with mostly trivial patches for the qla2xxx driver. These
> patches address warnings reported by gcc and by the smatch and sparse static
> analyzers. Please consider these
Hello All,
> On Sep 28, 2018, at 3:46 PM, Himanshu Madhani
> wrote:
>
> Hi Martin,
>
> This series adds support for FC-NVMe Target.
>
> Patch #1 adds infrastructure to support FC-NVMeT Link Service processing.
> Patch #2 adds addes new qla_nvmet.[ch] files for FC-NVMe Target support.
>
For 32 bit versions we have to be careful about divisions of 64 bit
quantities so use do_div() instead of a direct division. This fixes a
warning about _uldivmod being undefined in certain configurations
Fixes: 77266186397c ("scsi: myrs: Add Mylex RAID controller")
Reported-by: kbuild test robot
On Thu, 2018-10-18 at 10:28 -0700, James Bottomley wrote:
> On Fri, 2018-10-19 at 01:18 +0800, kbuild test robot wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.g
> > it
> > misc
> > head: 4d5b4ac1eae471bcd0fa381ab4099cc33e94e15d
> > commit:
This patch does not change any functionality.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_os.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index
Only one of the two code paths in qlafx00_ioctl_iosb_entry() initializes
the variable 'res'. Make sure that 'res' is initialized before
sp->done(sp, res) is called.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_mr.c | 2 +-
1 file changed, 1 insertion(+), 1
Modify the unlock statement such that it becomes easier for static
analyzers to analyze it. This patch does not change any functionality.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_attr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
Move a debug statement from qlafx00_error_entry() into its caller. Remove
one unused argument from that function. This patch does not change the
behavior of the qla2xxx driver.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_mr.c | 13 +
1 file
This patch avoids that the compiler complains about missing fall-through
annotations when building with W=1.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_init.c | 2 +-
drivers/scsi/qla2xxx/qla_target.c | 2 +-
2 files changed, 2 insertions(+), 2
This patch avoids that the compiler complains about missing declarations
when building with W=1.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_init.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_init.c
This patch avoids that complaints about kernel-doc headers are reported
when building with W=1.
Cc: Himanshu Madhani
Signed-off-by: Bart Van Assche
---
drivers/scsi/qla2xxx/qla_iocb.c | 4 ++--
drivers/scsi/qla2xxx/qla_isr.c| 6 +++---
drivers/scsi/qla2xxx/qla_mbx.c| 6 +++---
Hi Martin,
This is a series with mostly trivial patches for the qla2xxx driver. These
patches address warnings reported by gcc and by the smatch and sparse static
analyzers. Please consider these patches for kernel v4.20.
Thanks,
Bart.
Bart Van Assche (7):
qla2xxx: Modify fall-through
On Thu, 18 Oct 2018, Christoph Hellwig wrote:
> +
> +static int ioc_general(void __user *arg, char *cmnd)
> +{
> + gdth_ioctl_general gen;
> + gdth_ha_str *ha;
> + char *buf = NULL;
> + u64 paddr;
> + int rval;
> +
> + if (copy_from_user(, arg, sizeof(gdth_ioctl_general)))
On Thu, 18 Oct 2018, Christoph Hellwig wrote:
> Switch from the legacy PCI DMA API to the generic DMA API. Also switch
> to dma_map_single from pci_map_page in one case where this makes the code
> simpler.
>
> Signed-off-by: Christoph Hellwig
> ---
> drivers/scsi/gdth.c | 111
On Thu, 18 Oct 2018, Christoph Hellwig wrote:
> gdth_show_info currently allocs and frees a dma buffer four times,
> which isn't very efficient. Reuse a single allocation instead.
>
> Signed-off-by: Christoph Hellwig
> ---
> drivers/scsi/gdth_proc.c | 18 +-
> 1 file changed, 5
Martin, Bill,
> On Oct 17, 2018, at 5:51 PM, Martin K. Petersen
> wrote:
>
> External Email
>
> Himanshu,
>
>> When doing a surprise removal of an adapter, some in flight I/Os can get
>> stuck and take a while to complete (they actually timeout and are
>> retried). We are not handling an
On Wed, 2018-10-17 at 16:42 -0400, Laurence Oberman wrote:
> On Mon, 2018-10-15 at 08:51 -0400, Laurence Oberman wrote:
> > On Sat, 2018-10-13 at 10:42 -0400, Laurence Oberman wrote:
> > > On Fri, 2018-10-12 at 17:51 -0700, Bart Van Assche wrote:
> > > > On 10/12/18 1:36 PM, Laurence Oberman
On Thursday 18 October 2018 15:01:14 Christoph Hellwig wrote:
> Hi Ondrej,
>
> can you look over this series, which cleans up a few dma-related
> bits in the wd719x driver?
>
Looks nice but does not work. The first patch works, but the 2nd one causes
hang on modprobe:
[ 408.350359] wd719x
On Fri, 2018-10-19 at 01:18 +0800, kbuild test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git
> misc
> head: 4d5b4ac1eae471bcd0fa381ab4099cc33e94e15d
> commit: 77266186397c6c782a3f670d32808a9671806ec5 [194/233] scsi:
> myrs: Add Mylex RAID controller (SCSI
On 10/18/2018 10:15 AM, Greg KH wrote:
On Thu, Oct 18, 2018 at 09:51:03AM -0700, Alexander Duyck wrote:
On 10/18/2018 9:46 AM, Bart Van Assche wrote:
On Thu, 2018-10-18 at 08:25 -0700, Alexander Duyck wrote:
On 10/17/2018 5:54 PM, Dan Williams wrote:
On Wed, Oct 17, 2018 at 4:41 PM Bart
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git misc
head: 4d5b4ac1eae471bcd0fa381ab4099cc33e94e15d
commit: 77266186397c6c782a3f670d32808a9671806ec5 [194/233] scsi: myrs: Add
Mylex RAID controller (SCSI interface)
config: arm-allmodconfig (attached as .config)
compiler:
On Thu, Oct 18, 2018 at 09:51:03AM -0700, Alexander Duyck wrote:
> On 10/18/2018 9:46 AM, Bart Van Assche wrote:
> > On Thu, 2018-10-18 at 08:25 -0700, Alexander Duyck wrote:
> > > On 10/17/2018 5:54 PM, Dan Williams wrote:
> > > > On Wed, Oct 17, 2018 at 4:41 PM Bart Van Assche
> > > > wrote:
>
On 10/18/2018 9:46 AM, Bart Van Assche wrote:
On Thu, 2018-10-18 at 08:25 -0700, Alexander Duyck wrote:
On 10/17/2018 5:54 PM, Dan Williams wrote:
On Wed, Oct 17, 2018 at 4:41 PM Bart Van Assche wrote:
Instead of probing devices sequentially in the PROBE_PREFER_ASYNCHRONOUS
mode, scan
On Thu, 2018-10-18 at 07:10 +0200, Greg Kroah-Hartman wrote:
> > diff --git a/drivers/base/dd.c b/drivers/base/dd.c
> > index edfc9f0b1180..b4212154a94b 100644
> > --- a/drivers/base/dd.c
> > +++ b/drivers/base/dd.c
> > @@ -645,6 +645,14 @@ int driver_probe_device(struct device_driver *drv,
> >
On Thu, 2018-10-18 at 08:25 -0700, Alexander Duyck wrote:
> On 10/17/2018 5:54 PM, Dan Williams wrote:
> > On Wed, Oct 17, 2018 at 4:41 PM Bart Van Assche wrote:
> > >
> > > Instead of probing devices sequentially in the PROBE_PREFER_ASYNCHRONOUS
> > > mode, scan devices concurrently. This helps
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git misc
head: 4d5b4ac1eae471bcd0fa381ab4099cc33e94e15d
commit: 77266186397c6c782a3f670d32808a9671806ec5 [194/233] scsi: myrs: Add
Mylex RAID controller (SCSI interface)
config: i386-allmodconfig (attached as .config)
compiler:
On Thu, 2018-10-18 at 07:11 +0200, Greg Kroah-Hartman wrote:
> On Wed, Oct 17, 2018 at 04:40:01PM -0700, Bart Van Assche wrote:
> > Make sure that a complaint appears in the kernel log if the driver core
> > locking assumptions are violated.
> >
> > Cc: Lee Duncan
> > Cc: Hannes Reinecke
> >
On 10/17/2018 5:54 PM, Dan Williams wrote:
On Wed, Oct 17, 2018 at 4:41 PM Bart Van Assche wrote:
Instead of probing devices sequentially in the PROBE_PREFER_ASYNCHRONOUS
mode, scan devices concurrently. This helps when the wall clock time for
a single probe is significantly above the CPU
On 18/10/2018 14:10, Christoph Hellwig wrote:
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 13 +
1 file changed,
Various SCSI drivers that otherwise use the generic DMA API
still use pci_set_dma_mask, so switch them over to dma_set_mask
and dma_set_mask_and_coherent.
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Also move the dma_get_required_mask check
before actually setting the dma mask, so that we don't end up with
inconsistent settings in corner cases.
Signed-off-by: Christoph Hellwig
---
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/sym53c8xx_2/sym_glue.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/arcmsr/arcmsr_hba.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API
helper and also ensure we set the coherent mask as well in the resume
path.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/bfa/bfad.c | 18 +++---
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/stex.c | 17 +++--
1 file changed, 3 insertions(+), 14 deletions(-)
diff --git
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/mvumi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/mvumi.c b/drivers/scsi/mvumi.c
index 2458974d1af6..3d2d026d1ccf
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 13 +
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/isci/init.c | 19 ---
1 file changed, 4 insertions(+), 15 deletions(-)
diff --git
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/hptiop.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c
index
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Also move the dma_get_required_mask check
before actually setting the dma mask, so that we don't end up with
inconsistent settings in corner cases.
Signed-off-by: Christoph Hellwig
---
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API. Switch it over to the better generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/lpfc/lpfc_init.c | 34 ++
1 file changed, 10 insertions(+), 24 deletions(-)
The driver currently uses pci_set_dma_mask despite otherwise using
the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/initio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c
index 7a91cf3ff173..0a8d786c84ed
Out of the three callers once insists on the scratch buffer, and the
others are fine with a new allocation. Switch those two to juse use
pci_alloc_consistent directly, and open code the scratch buffer
allocation in the remaining one. This avoids a case where we might
be doing a memory allocation
Switch from the legacy PCI DMA API to the generic DMA API. Also switch
to dma_map_single from pci_map_page in one case where this makes the code
simpler.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/gdth.c | 111 +++
drivers/scsi/gdth_proc.c | 4
This function is a huge mess with duplicated error handling. Split out
a few useful helpers and use goto labels to untangle the error handling
and no-data ioctl handling.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/gdth.c | 247 +++-
1 file
Cleans up various oddities found during a code audit.
gdth_show_info currently allocs and frees a dma buffer four times,
which isn't very efficient. Reuse a single allocation instead.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/gdth_proc.c | 18 +-
1 file changed, 5 insertions(+), 13 deletions(-)
diff --git
Cleans up various oddities found during a code audit.
Switch from the legacy PCI DMA API to the generic DMA API.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/pmcraid.c | 79 +++---
1 file changed, 36 insertions(+), 43 deletions(-)
diff --git a/drivers/scsi/pmcraid.c b/drivers/scsi/pmcraid.c
index
No need for a local cmd_done variable, and pass boolean values as bool
type instead of u32.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/pmcraid.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/drivers/scsi/pmcraid.c b/drivers/scsi/pmcraid.c
index
We can just dma map the sense buffer passed with the scsi command,
and that gets us out of the nasty business of doing dma coherent
allocations from irq context.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/pmcraid.c | 24
1 file changed, 8 insertions(+), 16
This also moves the optimization for builds with 32-bit dma_addr_t to
the compiler (where it belongs) instead of opencoding it based on
incorrect assumptions.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/qla2xxx/qla_target.c | 8
drivers/scsi/qla2xxx/qla_target.h | 8
2
CONFIG_HIGHMEM is not in fact an indicator for > 32-bit dma addressing
Given that the driver is a bit weird and wants a compile time selection
switch to checking CONFIG_ARCH_DMA_ADDR_T_64BIT instead.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/qla1280.c | 5 +
1 file changed, 1
Some drivers make very odd decisions on when to use support for
64-bit addressing. Fix this up a bit.
CONFIG_HIGHMEM64 is only one (and these days unusual) way to indicate
that > 32-bit dma address are possible. Replace it with a check of the
dma_addr_t size.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/ips.c | 2 +-
drivers/scsi/ips.h | 6 --
2 files changed, 1 insertion(+), 7
Signed-off-by: Christoph Hellwig
---
drivers/scsi/ips.c | 6 +++---
drivers/scsi/ips.h | 3 ---
2 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/drivers/scsi/ips.c b/drivers/scsi/ips.c
index ee8a1ecd58fd..679321e96a86 100644
--- a/drivers/scsi/ips.c
+++ b/drivers/scsi/ips.c
@@
This also moves the optimization for builds with 32-bit dma_addr_t to
the compiler (where it belongs) instead of opencoding it.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/qla1280.c | 47 ++
1 file changed, 20 insertions(+), 27 deletions(-)
diff
Add the SCB onto the scsi command allocation and use dma streaming
mappings for it only when in use. This avoid possibly calling
dma_alloc_coherent under a lock or even in irq context, while also
making the code simpler.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/wd719x.c | 95
The wd719x driver currently uses a mix of the legacy PCI DMA and
the generic DMA APIs. Switch it over to the generic DMA API entirely.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/wd719x.c | 32 +---
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git
So warn on that case instead of trying to free them, which would be fatal
in case we actuall had active ones.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/wd719x.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/wd719x.c b/drivers/scsi/wd719x.c
index
Hi Ondrej,
can you look over this series, which cleans up a few dma-related
bits in the wd719x driver?
On 18/10/2018 04:58, Wei Yongjun wrote:
Add the missing unlock before return from function hisi_sas_phy_read32()
in the error handling case.
Fixes: 784b46b7cba0 ("scsi: hisi_sas: Use block layer tag instead for IPTT")
Signed-off-by: Wei Yongjun
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 4
65 matches
Mail list logo