[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LNX.2.21.1810150840580.10@nippy.intranet>
Date: Mon, 15 Oct 2018 09:00:57 +1100 (AEDT)
From: Finn Thain <fthain@...egraphics.com.au>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
cc: "James E.J. Bottomley" <jejb@...ux.vnet.ibm.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
Michael Schmitz <schmitzmic@...il.com>,
Hannes Reinecke <hare@...e.de>,
scsi <linux-scsi@...r.kernel.org>,
linux-m68k <linux-m68k@...ts.linux-m68k.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 1/6] zorro_esp: Limit DMA transfers to 65535 bytes
On Sun, 14 Oct 2018, Geert Uytterhoeven wrote:
>
> > Fixes: 3109e5ae0311
>
> Fixes: 3109e5ae0311 ("scsi: zorro_esp: New driver for Amiga Zorro
> NCR53C9x boards")
>
OK.
> $ git help fixes
> 'fixes' is aliased to 'show --format='Fixes: %h ("%s")' -s'
>
> BTW, if you use vim, add
>
> noremap ;gs "zyiw:exe "new \| setlocal buftype=nofile
> bufhidden=hide noswapfile syntax=git \| 0r ! git show ".@z."" \|
> :0<CR><CR>
>
> to .vimrc, and type ";gs" when the cursor is positioned on a commit ID.
>
Thanks.
> > Signed-off-by: Finn Thain <fthain@...egraphics.com.au>
> > Cc: Michael Schmitz <schmitzmic@...il.com>
> > Tested-by: Michael Schmitz <schmitzmic@...il.com>
>
> > --- a/drivers/scsi/zorro_esp.c
> > +++ b/drivers/scsi/zorro_esp.c
> > @@ -245,7 +245,7 @@ static int fastlane_esp_irq_pending(struct esp *esp)
> > static u32 zorro_esp_dma_length_limit(struct esp *esp, u32 dma_addr,
> > u32 dma_len)
> > {
> > - return dma_len > 0xFFFFFF ? 0xFFFFFF : dma_len;
> > + return dma_len > 0xFFFF ? 0xFFFF : dma_len;
> > }
> >
> > static void zorro_esp_reset_dma(struct esp *esp)
> > @@ -484,7 +484,6 @@ static void zorro_esp_send_blz1230_dma_cmd(struct esp *esp, u32 addr,
> > scsi_esp_cmd(esp, ESP_CMD_DMA);
> > zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW);
> > zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED);
> > - zorro_esp_write8(esp, (esp_count >> 16) & 0xff, ESP_TCHI);
>
> Since all these sub-drivers seem to support 24-bit transfers, perhaps this is
> something to be fixed in the esp_scsi core?
>
I don't think there is anything to fix in the esp_scsi core. The fact that
no-one saw the error indicates that large transfers don't occur in
practice.
If you said there is an opportunity for an enhancement, I could agree,
assuming that you also found a way to produce large IO requests. But I
doubt that such an enhancement would make a measurable improvement.
Even if the benefit was measurable, the fix under review would still be
needed for stable kernels.
BTW, Michael and I already discussed all this (it probably should have
happened on the linux-m68k list).
Please see,
$ grep -lr ESP_CONFIG2_FENAB drivers/scsi/
drivers/scsi/am53c974.c
drivers/scsi/esp_scsi.c
drivers/scsi/esp_scsi.h
The authors of am53c974.c obviously decided it wasn't wise to make this
feature mandatory (which suggests that perhaps it shouldn't go into common
code).
The comments in esp_scsi.c say that ESP_CONFIG2_FENAB has undesirable
consequences. There is information in the datasheets on this point but I
didn't follow it up because I don't see a performance issue.
--
Powered by blists - more mailing lists