Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1384505 > unrolled thread
| Started by | Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
|---|---|
| First post | 2016-04-21 20:30 +0200 |
| Last post | 2016-04-24 20:00 +0200 |
| Articles | 9 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-04-21 20:30 +0200
[PATCH v1 05/23] ata: sata_dwc_460ex: DMA is always a flow controller Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-04-21 20:30 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Christian Lamparter <chunkeey@googlemail.com> - 2016-04-21 22:30 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Christian Lamparter <chunkeey@googlemail.com> - 2016-04-22 13:20 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Julian Margetson <runaway@candw.ms> - 2016-04-23 14:10 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Christian Lamparter <chunkeey@googlemail.com> - 2016-04-23 21:50 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Julian Margetson <runaway@candw.ms> - 2016-04-24 15:10 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Christian Lamparter <chunkeey@googlemail.com> - 2016-04-24 17:30 +0200
Re: [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again Julian Margetson <runaway@candw.ms> - 2016-04-24 20:00 +0200
| From | Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
|---|---|
| Date | 2016-04-21 20:30 +0200 |
| Subject | [PATCH v1 00/23] ata: sata_dwc_460ex: make it working again |
| Message-ID | <rqrmN-52G-3@gated-at.bofh.it> |
The last approach in the commit 8b3444852a2b ("sata_dwc_460ex: move to generic
DMA driver") to switch to generic DMA engine API wasn't tested on bare metal.
Besides that we expecting new board support coming with the same SATA IP but
with different DMA.
This series is targetting the following things:
- a few bug fixes to the original driver
- a part to fix the DMA engine usage and in particularly dw_dmac driver
- move driver to use generic PHY and "dmas" property which leads to update in DTS
The driver has been tested myself on Sam460ex and WD MyBookLive (apollo3g)
boards. In any case I ask Christian, Måns, and Julian to independently test and
provide Tested-by tag or error report.
Series depends on previously published but not yet fully applied series [1].
[1] http://www.spinics.net/lists/kernel/msg2239735.html
Andy Shevchenko (11):
ata: sata_dwc_460ex: set dma_boundary to 0x1fff
ata: sata_dwc_460ex: burst size must be in items not bytes
ata: sata_dwc_460ex: DMA is always a flow controller
ata: sata_dwc_460ex: select only core part of DMA driver
ata: sata_dwc_460ex: don't call ata_sff_qc_issue() on DMA commands
ata: sata_dwc_460ex: correct HOSTDEV{P}_FROM_*() macros
ata: sata_dwc_460ex: supply physical address of FIFO to DMA
ata: sata_dwc_460ex: switch to new dmaengine_terminate_* API
ata: sata_dwc_460ex: use devm_ioremap
ata: sata_dwc_460ex: make debug messages neat
powerpc/4xx: Device tree update for the 460ex DWC SATA
Christian Lamparter (1):
ata: sata_dwc_460ex: fix crash on offline links without an attached
drive
Mans Rullgard (11):
ata: sata_dwc_460ex: remove incorrect locking
ata: sata_dwc_460ex: skip dma setup for non-dma commands
ata: sata_dwc_460ex: use "dmas" DT property to find dma channel
ata: sata_dwc_460ex: add phy support
ata: sata_dwc_460ex: get rid of global data
ata: sata_dwc_460ex: remove empty libata callback
ata: sata_dwc_460ex: get rid of some pointless casts
ata: sata_dwc_460ex: get rid of incorrect cast
ata: sata_dwc_460ex: add __iomem to register base pointer
ata: sata_dwc_460ex: use readl/writel_relaxed()
ata: sata_dwc_460ex: tidy up sata_dwc_clear_dmacr()
arch/powerpc/boot/dts/canyonlands.dts | 15 +-
drivers/ata/Kconfig | 12 +-
drivers/ata/sata_dwc_460ex.c | 554 +++++++++++++++++-----------------
3 files changed, 307 insertions(+), 274 deletions(-)
--
2.8.0.rc3
[toc] | [next] | [standalone]
| From | Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
|---|---|
| Date | 2016-04-21 20:30 +0200 |
| Subject | [PATCH v1 05/23] ata: sata_dwc_460ex: DMA is always a flow controller |
| Message-ID | <rqrwv-587-35@gated-at.bofh.it> |
| In reply to | #1384505 |
In the original code the DMA is always a flow controller. Set this accordingly
in updated code.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/ata/sata_dwc_460ex.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/ata/sata_dwc_460ex.c b/drivers/ata/sata_dwc_460ex.c
index 4cac27d..1250e18 100644
--- a/drivers/ata/sata_dwc_460ex.c
+++ b/drivers/ata/sata_dwc_460ex.c
@@ -311,7 +311,7 @@ static struct dma_async_tx_descriptor *dma_dwc_xfer_setup(struct ata_queued_cmd
if (qc->dma_dir == DMA_DEV_TO_MEM) {
sconf.src_addr = addr;
- sconf.device_fc = true;
+ sconf.device_fc = false;
} else { /* DMA_MEM_TO_DEV */
sconf.dst_addr = addr;
sconf.device_fc = false;
--
2.8.0.rc3
[toc] | [prev] | [next] | [standalone]
| From | Christian Lamparter <chunkeey@googlemail.com> |
|---|---|
| Date | 2016-04-21 22:30 +0200 |
| Message-ID | <rqtoB-6Oc-1@gated-at.bofh.it> |
| In reply to | #1384505 |
On Thursday, April 21, 2016 09:15:21 PM Andy Shevchenko wrote:
> The last approach in the commit 8b3444852a2b ("sata_dwc_460ex: move to generic
> DMA driver") to switch to generic DMA engine API wasn't tested on bare metal.
> Besides that we expecting new board support coming with the same SATA IP but
> with different DMA.
>
> This series is targetting the following things:
> - a few bug fixes to the original driver
> - a part to fix the DMA engine usage and in particularly dw_dmac driver
> - move driver to use generic PHY and "dmas" property which leads to update in DTS
>
> The driver has been tested myself on Sam460ex and WD MyBookLive (apollo3g)
> boards. In any case I ask Christian, Måns, and Julian to independently test and
> provide Tested-by tag or error report.
I did a test run on my WD MyBook Live. I applied all the patches in
this series on top of the topic/dw branch of Vinod Koul:
<https://git.kernel.org/cgit/linux/kernel/git/vkoul/slave-dma.git/>
Tested-by: Christian Lamparter <chunkeey@googlemail.com>
---
results for my old ST3808110AS HDD. filesystem is ext4.
# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 204 MB in 3.02 seconds = 67.51 MB/sec
# bonnie++ -u mbl
Using uid:1000, gid:1000.
Writing a byte at a time...done
Writing intelligently...done
Rewriting...done
Reading a byte at a time...done
Reading intelligently...done
start 'em...done...done...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version 1.97 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
mbl 496M 98 99 26011 21 17589 20 538 99 80138 39 208.9 8
Latency 95267us 1409ms 295ms 26947us 9644us 1787ms
Version 1.97 ------Sequential Create------ --------Random Create--------
mbl -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 6959 78 +++++ +++ 5197 40 7250 79 +++++ +++ 4718 37
Latency 149ms 6742us 212ms 177ms 767us 217ms
1.97,1.97,mbl,1,1461269771,496M,,98,99,26011,21,17589,20,538,99,80138,39,208.9,8,16,,,,,6959,78,+++++,+++,5197,40,7250,79,+++++,+++,4718,37,95267us,1409ms,295ms,26947us,9644us,1787ms,149ms,6742us,212ms,177ms,767us,217ms
[toc] | [prev] | [next] | [standalone]
| From | Christian Lamparter <chunkeey@googlemail.com> |
|---|---|
| Date | 2016-04-22 13:20 +0200 |
| Message-ID | <rqHhW-14S-47@gated-at.bofh.it> |
| In reply to | #1384554 |
On Friday, April 22, 2016 06:50:44 AM Julian Margetson wrote:
> On 4/21/2016 4:25 PM, Christian Lamparter wrote:
> > On Thursday, April 21, 2016 09:15:21 PM Andy Shevchenko wrote:
> >> The last approach in the commit 8b3444852a2b ("sata_dwc_460ex: move to generic
> >> DMA driver") to switch to generic DMA engine API wasn't tested on bare metal.
> >> Besides that we expecting new board support coming with the same SATA IP but
> >> with different DMA.
> >>
> >> The driver has been tested myself on Sam460ex and WD MyBookLive (apollo3g)
> >> boards. In any case I ask Christian, Måns, and Julian to independently test and
> >> provide Tested-by tag or error report.
> > I did a test run on my WD MyBook Live. I applied all the patches in
> > this series on top of the topic/dw branch of Vinod Koul:
> > <https://git.kernel.org/cgit/linux/kernel/git/vkoul/slave-dma.git/>
> >
> > Tested-by: Christian Lamparter <chunkeey@googlemail.com>
> > ---
> > results for my old ST3808110AS HDD. filesystem is ext4.
> >
> > # hdparm -t /dev/sda
> >
> > /dev/sda:
> > Timing buffered disk reads: 204 MB in 3.02 seconds = 67.51 MB/sec
> >
> > # bonnie++ -u mbl
> > Using uid:1000, gid:1000.
> > Writing a byte at a time...done
> > Writing intelligently...done
> > Rewriting...done
> > Reading a byte at a time...done
> > Reading intelligently...done
> > start 'em...done...done...done...done...done...
> > Create files in sequential order...done.
> > Stat files in sequential order...done.
> > Delete files in sequential order...done.
> > Create files in random order...done.
> > Stat files in random order...done.
> > Delete files in random order...done.
> > Version 1.97 ------Sequential Output------ --Sequential Input- --Random-
> > Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
> > Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
> > mbl 496M 98 99 26011 21 17589 20 538 99 80138 39 208.9 8
> > Latency 95267us 1409ms 295ms 26947us 9644us 1787ms
> > Version 1.97 ------Sequential Create------ --------Random Create--------
> > mbl -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
> > files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
> > 16 6959 78 +++++ +++ 5197 40 7250 79 +++++ +++ 4718 37
> > Latency 149ms 6742us 212ms 177ms 767us 217ms
> > 1.97,1.97,mbl,1,1461269771,496M,,98,99,26011,21,17589,20,538,99,80138,39,208.9,8,16,,,,,6959,78,+++++,+++,5197,40,7250,79,+++++,+++,4718,37,95267us,1409ms,295ms,26947us,9644us,1787ms,149ms,6742us,212ms,177ms,767us,217ms
> >
> Again on copy partitions .
Ok, here's the copy from my mail off-list.
Well, a unrelated driver "m41t80" caused a crash:
[ 12.912739] Oops: Kernel access of bad area, sig: 11 [#3]
[ 12.912743] PREEMPT Canyonlands
[ 12.912753] CPU: 0 PID: 1413 Comm: irq/45-m41t80 Tainted: G D 4.6.0-rc4-next-20160421-sam460ex-jm #1
[ 12.912757] task: ea9834e0 ti: eea6c000 task.ti: eea6c000
[ 12.912760] NIP: c0224480 LR: c0023494 CTR: c0042508
[ 12.912764] REGS: eea6daf0 TRAP: 0300 Tainted: G D (4.6.0-rc4-next-20160421-sam460ex-jm)
[ 12.912774] MSR: 00029000 <CE,EE,ME> CR: 24008282 XER: 00000000
[ 12.912825] DEAR: 00000008 ESR: 00000000
[...]
[ 12.912927] --- interrupt: 300 at mutex_lock+0x0/0x1c
[ 12.912927] LR = m41t80_handle_irq+0x28/0xac
[ 12.912932] [eea6de40] [00000000] (null) (unreliable)
[ 12.912938] [eea6de60] [c004ffac] irq_thread_fn+0x2c/0x48
[ 12.912944] [eea6de80] [c00501cc] irq_thread+0xc4/0x160
[ 12.912951] [eea6ded0] [c003a3f8] kthread+0xc8/0xcc
[ 12.912957] [eea6df40] [c000aee8] ret_from_kernel_thread+0x5c/0x64
[ 12.912960] Instruction dump:
[ 12.912974] 80010014 7fc3f378 bbc10008 7c0803a6 38210010 4be24ca8 9421ffd0 7c0802a6
[ 12.912987] bf210014 90010034 3b4302d8 812302ec <83890008> 812302d8 7f9a4840 419e011c
[ 12.912995] Fixing recursive fault but reboot is needed!
^^^ "reboot is needed!"
Another thing that came to my mind: Have you checked if your hard drive
and the cables are ok? Are there any pending sectors or suspicious smart
values? Has the drive passed the extended offline test?
Otherwise, I can't reproduce the error with my MyBook system. I've tested
your kernel and it worked on the device without crashing. (I copied/dd'ed
80GB from and back to the hard-drive. It was long and boring, but I didn't
encounter any issues and the crc32 matched).
Sorry, but I can't help you if I can't reproduce it... And short of sending
your box to test, I see no efficient way to debug it. However, what I can
do, if you are interested: I have a few "build your own" My Book Live kits.
It just needs a 3.5" hard-drive and 12v power adapter. If you are interested
PM me off-list, this way you can verify that the kernels you build do work,
just in case this error is due to a hardware issue (zapped controller,
bad ram/drive/cable?) with your sam460ex box.
Regards,
Christian
[toc] | [prev] | [next] | [standalone]
| From | Julian Margetson <runaway@candw.ms> |
|---|---|
| Date | 2016-04-23 14:10 +0200 |
| Message-ID | <rr4xP-2P8-1@gated-at.bofh.it> |
| In reply to | #1385015 |
On 4/22/2016 7:06 AM, Christian Lamparter wrote:
> On Friday, April 22, 2016 06:50:44 AM Julian Margetson wrote:
>> On 4/21/2016 4:25 PM, Christian Lamparter wrote:
>>> On Thursday, April 21, 2016 09:15:21 PM Andy Shevchenko wrote:
>>>> The last approach in the commit 8b3444852a2b ("sata_dwc_460ex: move to generic
>>>> DMA driver") to switch to generic DMA engine API wasn't tested on bare metal.
>>>> Besides that we expecting new board support coming with the same SATA IP but
>>>> with different DMA.
>>>>
>>>> The driver has been tested myself on Sam460ex and WD MyBookLive (apollo3g)
>>>> boards. In any case I ask Christian, Måns, and Julian to independently test and
>>>> provide Tested-by tag or error report.
>>> I did a test run on my WD MyBook Live. I applied all the patches in
>>> this series on top of the topic/dw branch of Vinod Koul:
>>> <https://git.kernel.org/cgit/linux/kernel/git/vkoul/slave-dma.git/>
>>>
>>> Tested-by: Christian Lamparter<chunkeey@googlemail.com>
>>> ---
>>> results for my old ST3808110AS HDD. filesystem is ext4.
>>>
>>> # hdparm -t /dev/sda
>>>
>>> /dev/sda:
>>> Timing buffered disk reads: 204 MB in 3.02 seconds = 67.51 MB/sec
>>>
>>> # bonnie++ -u mbl
>>> Using uid:1000, gid:1000.
>>> Writing a byte at a time...done
>>> Writing intelligently...done
>>> Rewriting...done
>>> Reading a byte at a time...done
>>> Reading intelligently...done
>>> start 'em...done...done...done...done...done...
>>> Create files in sequential order...done.
>>> Stat files in sequential order...done.
>>> Delete files in sequential order...done.
>>> Create files in random order...done.
>>> Stat files in random order...done.
>>> Delete files in random order...done.
>>> Version 1.97 ------Sequential Output------ --Sequential Input- --Random-
>>> Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
>>> Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
>>> mbl 496M 98 99 26011 21 17589 20 538 99 80138 39 208.9 8
>>> Latency 95267us 1409ms 295ms 26947us 9644us 1787ms
>>> Version 1.97 ------Sequential Create------ --------Random Create--------
>>> mbl -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
>>> files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
>>> 16 6959 78 +++++ +++ 5197 40 7250 79 +++++ +++ 4718 37
>>> Latency 149ms 6742us 212ms 177ms 767us 217ms
>>> 1.97,1.97,mbl,1,1461269771,496M,,98,99,26011,21,17589,20,538,99,80138,39,208.9,8,16,,,,,6959,78,+++++,+++,5197,40,7250,79,+++++,+++,4718,37,95267us,1409ms,295ms,26947us,9644us,1787ms,149ms,6742us,212ms,177ms,767us,217ms
>>>
>> Again on copy partitions .
> Ok, here's the copy from my mail off-list.
>
> Well, a unrelated driver "m41t80" caused a crash:
> [ 12.912739] Oops: Kernel access of bad area, sig: 11 [#3]
> [ 12.912743] PREEMPT Canyonlands
> [ 12.912753] CPU: 0 PID: 1413 Comm: irq/45-m41t80 Tainted: G D 4.6.0-rc4-next-20160421-sam460ex-jm #1
> [ 12.912757] task: ea9834e0 ti: eea6c000 task.ti: eea6c000
> [ 12.912760] NIP: c0224480 LR: c0023494 CTR: c0042508
> [ 12.912764] REGS: eea6daf0 TRAP: 0300 Tainted: G D (4.6.0-rc4-next-20160421-sam460ex-jm)
> [ 12.912774] MSR: 00029000 <CE,EE,ME> CR: 24008282 XER: 00000000
> [ 12.912825] DEAR: 00000008 ESR: 00000000
> [...]
> [ 12.912927] --- interrupt: 300 at mutex_lock+0x0/0x1c
> [ 12.912927] LR = m41t80_handle_irq+0x28/0xac
> [ 12.912932] [eea6de40] [00000000] (null) (unreliable)
> [ 12.912938] [eea6de60] [c004ffac] irq_thread_fn+0x2c/0x48
> [ 12.912944] [eea6de80] [c00501cc] irq_thread+0xc4/0x160
> [ 12.912951] [eea6ded0] [c003a3f8] kthread+0xc8/0xcc
> [ 12.912957] [eea6df40] [c000aee8] ret_from_kernel_thread+0x5c/0x64
> [ 12.912960] Instruction dump:
> [ 12.912974] 80010014 7fc3f378 bbc10008 7c0803a6 38210010 4be24ca8 9421ffd0 7c0802a6
> [ 12.912987] bf210014 90010034 3b4302d8 812302ec <83890008> 812302d8 7f9a4840 419e011c
> [ 12.912995] Fixing recursive fault but reboot is needed!
> ^^^ "reboot is needed!"
>
> Another thing that came to my mind: Have you checked if your hard drive
> and the cables are ok? Are there any pending sectors or suspicious smart
> values? Has the drive passed the extended offline test?
>
> Otherwise, I can't reproduce the error with my MyBook system. I've tested
> your kernel and it worked on the device without crashing. (I copied/dd'ed
> 80GB from and back to the hard-drive. It was long and boring, but I didn't
> encounter any issues and the crc32 matched).
>
> Sorry, but I can't help you if I can't reproduce it... And short of sending
> your box to test, I see no efficient way to debug it. However, what I can
> do, if you are interested: I have a few "build your own" My Book Live kits.
> It just needs a 3.5" hard-drive and 12v power adapter. If you are interested
> PM me off-list, this way you can verify that the kernels you build do work,
> just in case this error is due to a hardware issue (zapped controller,
> bad ram/drive/cable?) with your sam460ex box.
>
> Regards,
> Christian
>
>
My Hardware seems ok.
I have swapped cables and drives between the SII3512 pci controller and
the DWC controller.
No issues when connected to the SII3512 pci controller .
The DWC controller works ok under AmigaOS 4.1FE so that does not appear
to be a problem.
Regards
Julian
[toc] | [prev] | [next] | [standalone]
| From | Christian Lamparter <chunkeey@googlemail.com> |
|---|---|
| Date | 2016-04-23 21:50 +0200 |
| Message-ID | <rrbIZ-a3-9@gated-at.bofh.it> |
| In reply to | #1385644 |
On Saturday, April 23, 2016 11:44:09 AM Julian Margetson wrote:
> On 4/23/2016 8:02 AM, Julian Margetson wrote:
> > On 4/22/2016 7:06 AM, Christian Lamparter wrote:
> >> On Friday, April 22, 2016 06:50:44 AM Julian Margetson wrote:
> >>> On 4/21/2016 4:25 PM, Christian Lamparter wrote:
> >>>> On Thursday, April 21, 2016 09:15:21 PM Andy Shevchenko wrote:
> >>>>> The last approach in the commit 8b3444852a2b ("sata_dwc_460ex:
> >>>>> move to generic
> >>>>> DMA driver") to switch to generic DMA engine API wasn't tested on
> >>>>> bare metal.
> >>>>> Besides that we expecting new board support coming with the same
> >>>>> SATA IP but
> >>>>> with different DMA.
> >>>>>
> >>>>> The driver has been tested myself on Sam460ex and WD MyBookLive
> >>>>> (apollo3g)
> >>>>> boards. In any case I ask Christian, Måns, and Julian to
> >>>>> independently test and
> >>>>> provide Tested-by tag or error report.
> >>>> I did a test run on my WD MyBook Live. I applied all the patches in
> >>>> this series on top of the topic/dw branch of Vinod Koul:
> >>>> <https://git.kernel.org/cgit/linux/kernel/git/vkoul/slave-dma.git/>
> >>>>
> >>>> Tested-by: Christian Lamparter<chunkeey@googlemail.com>
> >>>> ---
> >>>> results for my old ST3808110AS HDD. filesystem is ext4.
> >>>>
> >>>> # hdparm -t /dev/sda
> >>>>
> >>>> /dev/sda:
> >>>> Timing buffered disk reads: 204 MB in 3.02 seconds = 67.51 MB/sec
> >>>>
> >>>> # bonnie++ -u mbl
> >>>> Using uid:1000, gid:1000.
> >>>> Writing a byte at a time...done
> >>>> Writing intelligently...done
> >>>> Rewriting...done
> >>>> Reading a byte at a time...done
> >>>> Reading intelligently...done
> >>>> start 'em...done...done...done...done...done...
> >>>> Create files in sequential order...done.
> >>>> Stat files in sequential order...done.
> >>>> Delete files in sequential order...done.
> >>>> Create files in random order...done.
> >>>> Stat files in random order...done.
> >>>> Delete files in random order...done.
> >>>> Version 1.97 ------Sequential Output------ --Sequential
> >>>> Input- --Random-
> >>>> Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr-
> >>>> --Block-- --Seeks--
> >>>> Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec
> >>>> %CP /sec %CP
> >>>> mbl 496M 98 99 26011 21 17589 20 538 99 80138
> >>>> 39 208.9 8
> >>>> Latency 95267us 1409ms 295ms 26947us 9644us
> >>>> 1787ms
> >>>> Version 1.97 ------Sequential Create------ --------Random
> >>>> Create--------
> >>>> mbl -Create-- --Read--- -Delete-- -Create--
> >>>> --Read--- -Delete--
> >>>> files /sec %CP /sec %CP /sec %CP /sec %CP /sec
> >>>> %CP /sec %CP
> >>>> 16 6959 78 +++++ +++ 5197 40 7250 79 +++++
> >>>> +++ 4718 37
> >>>> Latency 149ms 6742us 212ms 177ms 767us
> >>>> 217ms
> >>>> 1.97,1.97,mbl,1,1461269771,496M,,98,99,26011,21,17589,20,538,99,80138,39,208.9,8,16,,,,,6959,78,+++++,+++,5197,40,7250,79,+++++,+++,4718,37,95267us,1409ms,295ms,26947us,9644us,1787ms,149ms,6742us,212ms,177ms,767us,217ms
> >>>>
> >>>>
> >>> Again on copy partitions .
> >> Ok, here's the copy from my mail off-list.
> >>
> >> Well, a unrelated driver "m41t80" caused a crash:
> >> [ 12.912739] Oops: Kernel access of bad area, sig: 11 [#3]
> >> [ 12.912743] PREEMPT Canyonlands
> >> [ 12.912753] CPU: 0 PID: 1413 Comm: irq/45-m41t80 Tainted: G
> >> D 4.6.0-rc4-next-20160421-sam460ex-jm #1
> >> [ 12.912757] task: ea9834e0 ti: eea6c000 task.ti: eea6c000
> >> [ 12.912760] NIP: c0224480 LR: c0023494 CTR: c0042508
> >> [ 12.912764] REGS: eea6daf0 TRAP: 0300 Tainted: G D
> >> (4.6.0-rc4-next-20160421-sam460ex-jm)
> >> [ 12.912774] MSR: 00029000 <CE,EE,ME> CR: 24008282 XER: 00000000
> >> [ 12.912825] DEAR: 00000008 ESR: 00000000
> >> [...]
> >> [ 12.912927] --- interrupt: 300 at mutex_lock+0x0/0x1c
> >> [ 12.912927] LR = m41t80_handle_irq+0x28/0xac
> >> [ 12.912932] [eea6de40] [00000000] (null) (unreliable)
> >> [ 12.912938] [eea6de60] [c004ffac] irq_thread_fn+0x2c/0x48
> >> [ 12.912944] [eea6de80] [c00501cc] irq_thread+0xc4/0x160
> >> [ 12.912951] [eea6ded0] [c003a3f8] kthread+0xc8/0xcc
> >> [ 12.912957] [eea6df40] [c000aee8] ret_from_kernel_thread+0x5c/0x64
> >> [ 12.912960] Instruction dump:
> >> [ 12.912974] 80010014 7fc3f378 bbc10008 7c0803a6 38210010 4be24ca8
> >> 9421ffd0 7c0802a6
> >> [ 12.912987] bf210014 90010034 3b4302d8 812302ec <83890008>
> >> 812302d8 7f9a4840 419e011c
> >> [ 12.912995] Fixing recursive fault but reboot is needed!
> >> ^^^ "reboot is needed!"
> >>
> >> Another thing that came to my mind: Have you checked if your hard drive
> >> and the cables are ok? Are there any pending sectors or suspicious smart
> >> values? Has the drive passed the extended offline test?
> >> Otherwise, I can't reproduce the error with my MyBook system. I've
> >> tested
> >> your kernel and it worked on the device without crashing. (I
> >> copied/dd'ed
> >> 80GB from and back to the hard-drive. It was long and boring, but I
> >> didn't
> >> encounter any issues and the crc32 matched).
> >>
> >> Sorry, but I can't help you if I can't reproduce it... And short of
> >> sending
> >> your box to test, I see no efficient way to debug it. However, what I
> >> can
> >> do, if you are interested: I have a few "build your own" My Book Live
> >> kits.
> >> It just needs a 3.5" hard-drive and 12v power adapter. If you are
> >> interested
> >> PM me off-list, this way you can verify that the kernels you build do
> >> work,
> >> just in case this error is due to a hardware issue (zapped controller,
> >> bad ram/drive/cable?) with your sam460ex box.
> >>
> >> Regards,
> >> Christian
> >>
> >>
> > My Hardware seems ok.
> > I have swapped cables and drives between the SII3512 pci controller
> > and the DWC controller.
> > No issues when connected to the SII3512 pci controller .
> > The DWC controller works ok under AmigaOS 4.1FE so that does not
> > appear to be a problem.
> >
> > Regards
> > Julian
> >
> >
> >
> >
> >
> >
> Test with kernel compiled with no other sata controllers included.
> Freshly formatted harddrive with one ntfs partition. MS-DOs partition
> table.
> Booted from USB thumb drive.
> Keyboard and mouse freeze as soon as gparted is run.
>
Well, then. Have you checked for any errata for the sam460ex?
There's a known errata for the 460EX, with the CPU lockup upon
high AHB traffic:
<http://lists.denx.de/pipermail/u-boot/2008-June/036078.html>
"This patch implements a fix provided by AMCC so that the lockup upon
simultanious traffic on AHB USB OTG, USB 2.0 and SATA doesn't occur
anymore:..."
This should be fixed by u-boot. However, there's no telling if
there's more to this workaround in the dma engine. You could try
to do the testing without anything connected to the USB ports
and disable/remove all usb hcds modules. As for fixing this:
I did a quick search but couldn't find any public information.
There's always support@apm.com (contact them!), or maybe someone
from the Amiga community knows more?
[toc] | [prev] | [next] | [standalone]
| From | Julian Margetson <runaway@candw.ms> |
|---|---|
| Date | 2016-04-24 15:10 +0200 |
| Message-ID | <rrrXr-520-1@gated-at.bofh.it> |
| In reply to | #1385719 |
On 4/23/2016 3:41 PM, Christian Lamparter wrote:
> On Saturday, April 23, 2016 11:44:09 AM Julian Margetson wrote:
>> On 4/23/2016 8:02 AM, Julian Margetson wrote:
>>> On 4/22/2016 7:06 AM, Christian Lamparter wrote:
>>>> On Friday, April 22, 2016 06:50:44 AM Julian Margetson wrote:
>>>>> On 4/21/2016 4:25 PM, Christian Lamparter wrote:
>>>>>> On Thursday, April 21, 2016 09:15:21 PM Andy Shevchenko wrote:
>>>>>>> The last approach in the commit 8b3444852a2b ("sata_dwc_460ex:
>>>>>>> move to generic
>>>>>>> DMA driver") to switch to generic DMA engine API wasn't tested on
>>>>>>> bare metal.
>>>>>>> Besides that we expecting new board support coming with the same
>>>>>>> SATA IP but
>>>>>>> with different DMA.
>>>>>>>
>>>>>>> The driver has been tested myself on Sam460ex and WD MyBookLive
>>>>>>> (apollo3g)
>>>>>>> boards. In any case I ask Christian, Måns, and Julian to
>>>>>>> independently test and
>>>>>>> provide Tested-by tag or error report.
>>>>>> I did a test run on my WD MyBook Live. I applied all the patches in
>>>>>> this series on top of the topic/dw branch of Vinod Koul:
>>>>>> <https://git.kernel.org/cgit/linux/kernel/git/vkoul/slave-dma.git/>
>>>>>>
>>>>>> Tested-by: Christian Lamparter<chunkeey@googlemail.com>
>>>>>> ---
>>>>>> results for my old ST3808110AS HDD. filesystem is ext4.
>>>>>>
>>>>>> # hdparm -t /dev/sda
>>>>>>
>>>>>> /dev/sda:
>>>>>> Timing buffered disk reads: 204 MB in 3.02 seconds = 67.51 MB/sec
>>>>>>
>>>>>> # bonnie++ -u mbl
>>>>>> Using uid:1000, gid:1000.
>>>>>> Writing a byte at a time...done
>>>>>> Writing intelligently...done
>>>>>> Rewriting...done
>>>>>> Reading a byte at a time...done
>>>>>> Reading intelligently...done
>>>>>> start 'em...done...done...done...done...done...
>>>>>> Create files in sequential order...done.
>>>>>> Stat files in sequential order...done.
>>>>>> Delete files in sequential order...done.
>>>>>> Create files in random order...done.
>>>>>> Stat files in random order...done.
>>>>>> Delete files in random order...done.
>>>>>> Version 1.97 ------Sequential Output------ --Sequential
>>>>>> Input- --Random-
>>>>>> Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr-
>>>>>> --Block-- --Seeks--
>>>>>> Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec
>>>>>> %CP /sec %CP
>>>>>> mbl 496M 98 99 26011 21 17589 20 538 99 80138
>>>>>> 39 208.9 8
>>>>>> Latency 95267us 1409ms 295ms 26947us 9644us
>>>>>> 1787ms
>>>>>> Version 1.97 ------Sequential Create------ --------Random
>>>>>> Create--------
>>>>>> mbl -Create-- --Read--- -Delete-- -Create--
>>>>>> --Read--- -Delete--
>>>>>> files /sec %CP /sec %CP /sec %CP /sec %CP /sec
>>>>>> %CP /sec %CP
>>>>>> 16 6959 78 +++++ +++ 5197 40 7250 79 +++++
>>>>>> +++ 4718 37
>>>>>> Latency 149ms 6742us 212ms 177ms 767us
>>>>>> 217ms
>>>>>> 1.97,1.97,mbl,1,1461269771,496M,,98,99,26011,21,17589,20,538,99,80138,39,208.9,8,16,,,,,6959,78,+++++,+++,5197,40,7250,79,+++++,+++,4718,37,95267us,1409ms,295ms,26947us,9644us,1787ms,149ms,6742us,212ms,177ms,767us,217ms
>>>>>>
>>>>>>
>>>>> Again on copy partitions .
>>>> Ok, here's the copy from my mail off-list.
>>>>
>>>> Well, a unrelated driver "m41t80" caused a crash:
>>>> [ 12.912739] Oops: Kernel access of bad area, sig: 11 [#3]
>>>> [ 12.912743] PREEMPT Canyonlands
>>>> [ 12.912753] CPU: 0 PID: 1413 Comm: irq/45-m41t80 Tainted: G
>>>> D 4.6.0-rc4-next-20160421-sam460ex-jm #1
>>>> [ 12.912757] task: ea9834e0 ti: eea6c000 task.ti: eea6c000
>>>> [ 12.912760] NIP: c0224480 LR: c0023494 CTR: c0042508
>>>> [ 12.912764] REGS: eea6daf0 TRAP: 0300 Tainted: G D
>>>> (4.6.0-rc4-next-20160421-sam460ex-jm)
>>>> [ 12.912774] MSR: 00029000 <CE,EE,ME> CR: 24008282 XER: 00000000
>>>> [ 12.912825] DEAR: 00000008 ESR: 00000000
>>>> [...]
>>>> [ 12.912927] --- interrupt: 300 at mutex_lock+0x0/0x1c
>>>> [ 12.912927] LR = m41t80_handle_irq+0x28/0xac
>>>> [ 12.912932] [eea6de40] [00000000] (null) (unreliable)
>>>> [ 12.912938] [eea6de60] [c004ffac] irq_thread_fn+0x2c/0x48
>>>> [ 12.912944] [eea6de80] [c00501cc] irq_thread+0xc4/0x160
>>>> [ 12.912951] [eea6ded0] [c003a3f8] kthread+0xc8/0xcc
>>>> [ 12.912957] [eea6df40] [c000aee8] ret_from_kernel_thread+0x5c/0x64
>>>> [ 12.912960] Instruction dump:
>>>> [ 12.912974] 80010014 7fc3f378 bbc10008 7c0803a6 38210010 4be24ca8
>>>> 9421ffd0 7c0802a6
>>>> [ 12.912987] bf210014 90010034 3b4302d8 812302ec <83890008>
>>>> 812302d8 7f9a4840 419e011c
>>>> [ 12.912995] Fixing recursive fault but reboot is needed!
>>>> ^^^ "reboot is needed!"
>>>>
>>>> Another thing that came to my mind: Have you checked if your hard drive
>>>> and the cables are ok? Are there any pending sectors or suspicious smart
>>>> values? Has the drive passed the extended offline test?
>>>> Otherwise, I can't reproduce the error with my MyBook system. I've
>>>> tested
>>>> your kernel and it worked on the device without crashing. (I
>>>> copied/dd'ed
>>>> 80GB from and back to the hard-drive. It was long and boring, but I
>>>> didn't
>>>> encounter any issues and the crc32 matched).
>>>>
>>>> Sorry, but I can't help you if I can't reproduce it... And short of
>>>> sending
>>>> your box to test, I see no efficient way to debug it. However, what I
>>>> can
>>>> do, if you are interested: I have a few "build your own" My Book Live
>>>> kits.
>>>> It just needs a 3.5" hard-drive and 12v power adapter. If you are
>>>> interested
>>>> PM me off-list, this way you can verify that the kernels you build do
>>>> work,
>>>> just in case this error is due to a hardware issue (zapped controller,
>>>> bad ram/drive/cable?) with your sam460ex box.
>>>>
>>>> Regards,
>>>> Christian
>>>>
>>>>
>>> My Hardware seems ok.
>>> I have swapped cables and drives between the SII3512 pci controller
>>> and the DWC controller.
>>> No issues when connected to the SII3512 pci controller .
>>> The DWC controller works ok under AmigaOS 4.1FE so that does not
>>> appear to be a problem.
>>>
>>> Regards
>>> Julian
>>>
>>>
>>>
>>>
>>>
>>>
>> Test with kernel compiled with no other sata controllers included.
>> Freshly formatted harddrive with one ntfs partition. MS-DOs partition
>> table.
>> Booted from USB thumb drive.
>> Keyboard and mouse freeze as soon as gparted is run.
>>
> Well, then. Have you checked for any errata for the sam460ex?
> There's a known errata for the 460EX, with the CPU lockup upon
> high AHB traffic:
> <http://lists.denx.de/pipermail/u-boot/2008-June/036078.html>
>
> "This patch implements a fix provided by AMCC so that the lockup upon
> simultanious traffic on AHB USB OTG, USB 2.0 and SATA doesn't occur
> anymore:..."
>
> This should be fixed by u-boot. However, there's no telling if
> there's more to this workaround in the dma engine. You could try
> to do the testing without anything connected to the USB ports
> and disable/remove all usb hcds modules. As for fixing this:
> I did a quick search but couldn't find any public information.
> There's always support@apm.com (contact them!), or maybe someone
> from the Amiga community knows more?
>
>
Tested with kernel with all USB disabled.
No sata error messages during the partition copy but the copying is
quite slow .
so this does appear to be the problem .
Regards
Julian
[toc] | [prev] | [next] | [standalone]
| From | Christian Lamparter <chunkeey@googlemail.com> |
|---|---|
| Date | 2016-04-24 17:30 +0200 |
| Message-ID | <rru8V-6L5-1@gated-at.bofh.it> |
| In reply to | #1385812 |
On Sunday, April 24, 2016 09:05:43 AM Julian Margetson wrote: > On 4/23/2016 3:41 PM, Christian Lamparter wrote: > > There's a known errata for the 460EX, with the CPU lockup upon > > high AHB traffic: > > <http://lists.denx.de/pipermail/u-boot/2008-June/036078.html> > > > > "This patch implements a fix provided by AMCC so that the lockup upon > > simultanious traffic on AHB USB OTG, USB 2.0 and SATA doesn't occur > > anymore:..." > > > > This should be fixed by u-boot. However, there's no telling if > > there's more to this workaround in the dma engine. You could try > > to do the testing without anything connected to the USB ports > > and disable/remove all usb hcds modules. As for fixing this: > > I did a quick search but couldn't find any public information. > > There's always support@apm.com (contact them!), or maybe someone > > from the Amiga community knows more? > > > > > > Tested with kernel with all USB disabled. No sata error messages > during the partition copy but the copying is quite slow. Ok. The CONFIG_DMADEVICES_DEBUG and CONFIG_DMADEVICES_VDEBUG option have quite a large overhead, if this fixed the issue for now you could try to disable them and look if the issue comes back or not. (also, you can drop the mdelay patch if it's still applied). If the issue doesn't come back, you could add your "Tested-by" tag too. Another thing, the sata dwc driver doesn't yet support NCQ. Do you know if the driver for the Amiga OS does? > so this does appear to be the problem. So, how to fix this? I know, there's an AHB DMA Arbiter. But I can't get any documentation for it from AMCC/APM. Maybe denx.de or someone from the Amiga community knows how to deal with it. In theory, we could try if limiting the burst length, pending dma request count or add code to retry failed dma transfers and reinit the usb-cores would help. Regards, Christian
[toc] | [prev] | [next] | [standalone]
| From | Julian Margetson <runaway@candw.ms> |
|---|---|
| Date | 2016-04-24 20:00 +0200 |
| Message-ID | <rrwu6-8rG-1@gated-at.bofh.it> |
| In reply to | #1385821 |
On 4/24/2016 11:21 AM, Christian Lamparter wrote: > On Sunday, April 24, 2016 09:05:43 AM Julian Margetson wrote: >> On 4/23/2016 3:41 PM, Christian Lamparter wrote: >>> There's a known errata for the 460EX, with the CPU lockup upon >>> high AHB traffic: >>> <http://lists.denx.de/pipermail/u-boot/2008-June/036078.html> >>> >>> "This patch implements a fix provided by AMCC so that the lockup upon >>> simultanious traffic on AHB USB OTG, USB 2.0 and SATA doesn't occur >>> anymore:..." >>> >>> This should be fixed by u-boot. However, there's no telling if >>> there's more to this workaround in the dma engine. You could try >>> to do the testing without anything connected to the USB ports >>> and disable/remove all usb hcds modules. As for fixing this: >>> I did a quick search but couldn't find any public information. >>> There's always support@apm.com (contact them!), or maybe someone >>> from the Amiga community knows more? >>> >>> >> Tested with kernel with all USB disabled. No sata error messages >> during the partition copy but the copying is quite slow. > Ok. The CONFIG_DMADEVICES_DEBUG and CONFIG_DMADEVICES_VDEBUG option > have quite a large overhead, if this fixed the issue for now you > could try to disable them and look if the issue comes back or not. > (also, you can drop the mdelay patch if it's still applied). If > the issue doesn't come back, you could add your "Tested-by" tag > too. > > Another thing, the sata dwc driver doesn't yet support NCQ. Do you > know if the driver for the Amiga OS does? > >> so this does appear to be the problem. > So, how to fix this? I know, there's an AHB DMA Arbiter. But I can't > get any documentation for it from AMCC/APM. Maybe denx.de or someone > from the Amiga community knows how to deal with it. In theory, we > could try if limiting the burst length, pending dma request count or > add code to retry failed dma transfers and reinit the usb-cores would > help. > > Regards, > Christian > > Disabled CONFIG_DMADEVICES_DEBUG and CONFIG_DMADEVICES_VDEBUG Still see issues with the USB enabled. With USB also disabled I was able to finish the partition copy. But again it is very slow. (parted) mklabel msdos Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost. Do you want to continue? Yes/No? y (parted) p Model: ATA WDC WD5000AAKX-0 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags (parted) q Information: You may need to update /etc/fstab. root@Amigaone:/home/amigaone# dd if=/dev/sdb6 of=/dev/sda 43597824+0 records in 43597824+0 records out 22322085888 bytes (22 GB, 21 GiB) copied, 2825.93 s, 7.9 MB/s Regards Julian
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web