PCI Sata (VIA VT6421A) on FreeBSD 8.0

Hello all,

I have bought a PCI Sata Controller Card yesterday.

My system:
Cpu: Intel P3, 864 mhz
Ram: 64 MB SDRam
Sata Controller: VIA VT6421A (1 x E-Sata, 2 x Sata; Raid)
Sata Harddisk: 320 GB Seagate (Originally sata-2 but set to sata-1 with jumper)
System: ACPI Disabled FreeBSD 8.0-P2

When I first plugged the card and harddisk, I formatted harddisk on sysinstall (with failures). Then I could transfer some files over network at 10MB/s. After that, i tried to copy this files from one slice to other on the harddisk. It started to give dma errors. I tried both the card and the harddisk on another machine which as FreeBSD 7.2 and still the same problems.

I tried "hw.intr_storm_threshold=20000" on /boot/loader.conf but not worked.

I do not want to do raid. I do only want use 1 sata harddisk without problem. This is an old computer which i use for automatic backups. Waiting for you help. Thank you all.

Code:
backup# dmesg
Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.             
FreeBSD 8.0-RELEASE-p2 #0: Tue Jan  5 16:02:27 UTC 2010                  
    root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC       
Timecounter "i8254" frequency 1193182 Hz quality 0                       
CPU: Intel Pentium III (864.47-MHz 686-class CPU)                        
  Origin = "GenuineIntel"  Id = 0x68a  Stepping = 10                     
  Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  = 67108864 (64 MB)                                                                      
avail memory = 50786304 (48 MB)                                                                      
kbd1 at kbdmux0                                                                                      
pcib0: <Host to PCI bridge> pcibus 0 on motherboard                                                  
pir0: <PCI Interrupt Routing Table: 6 Entries> on motherboard                                        
pci0: <PCI bus> on pcib0                                                                             
agp0: <VIA 82C691 (Apollo Pro) host to PCI bridge> on hostb0                                         
agp0: aperture size is 256M                                                                          
pcib1: <PCI-PCI bridge> at device 1.0 on pci0                                                        
pci1: <PCI bus> on pcib1                                                                             
vgapci0: <VGA-compatible display> mem 0xdfe80000-0xdfefffff,0xd0000000-0xd7ffffff irq 11 at device 0.0 on pci1
isab0: <PCI-ISA bridge> at device 7.0 on pci0                                                                 
isa0: <ISA bus> on isab0                                                                                      
atapci0: <VIA 82C686B UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xffa0-0xffaf at device 7.1 on pci0
ata0: <ATA channel 0> on atapci0                                                                                      
ata0: [ITHREAD]                                                                                                       
ata1: <ATA channel 1> on atapci0                                                                                      
ata1: [ITHREAD]                                                                                                       
uhci0: <VIA 83C572 USB controller> port 0xc000-0xc01f irq 12 at device 7.2 on pci0                                    
uhci0: [ITHREAD]                                                                                                      
uhci0: LegSup = 0xa000                                                                                                
usbus0: <VIA 83C572 USB controller> on uhci0                                                                          
uhci1: <VIA 83C572 USB controller> port 0xc400-0xc41f irq 12 at device 7.3 on pci0                                    
uhci1: [ITHREAD]                                                                                                      
uhci1: LegSup = 0xa000                                                                                                
usbus1: <VIA 83C572 USB controller> on uhci1                                                                          
pci0: <serial bus, SMBus> at device 7.4 (no driver attached)                                                          
sis0: <NatSemi DP8381[56] 10/100BaseTX> port 0xbc00-0xbcff mem 0xdffef000-0xdffeffff irq 9 at device 9.0 on pci0      
sis0: Silicon Revision: DP83815D                                                                                      
miibus0: <MII bus> on sis0                                                                                            
nsphyter0: <DP83815 10/100 media interface> PHY 0 on miibus0                                                          
nsphyter0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
sis0: Ethernet address: 00:40:f4:6b:fc:bc
sis0: [ITHREAD]
atapci1: <VIA 6421 SATA150 controller> port 0xdc00-0xdc0f,0xd800-0xd80f,0xd400-0xd40f,0xd000-0xd00f,0xcc00-0xcc1f,0xc800-0xc8ff irq 10 at device 10.0 on pci0
atapci1: [ITHREAD]
ata2: <ATA channel 0> on atapci1
ata2: [ITHREAD]
ata3: <ATA channel 1> on atapci1
ata3: [ITHREAD]
ata4: <ATA channel 2> on atapci1
ata4: [ITHREAD]
pci0: <multimedia, audio> at device 12.0 (no driver attached)
cpu0 on motherboard
pmtimer0 on isa0
unknown: <PNP0c01> can't assign resources (memory)
atrtc0: <AT realtime clock> at port 0x70-0x71 irq 8 pnpid PNP0b00 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 irq 1 pnpid PNP0303 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
orm0: <ISA Option ROM> at iomem 0xc0000-0xc7fff pnpid ORM0000 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
fdc0: Faking up FDCTL
 
Code:
ppc0: parallel port not found.                                                                                                                 
unknown: <PNP0c01> can't assign resources (memory)                                                                                             
driver bug: Unable to set devclass (devname: (null))                                                                                           
Timecounter "TSC" frequency 864466472 Hz quality 800                                                                                           
Timecounters tick every 1.000 msec                                                                                                             
usbus0: 12Mbps Full Speed USB v1.0                                                                                                             
usbus1: 12Mbps Full Speed USB v1.0                                                                                                             
ad0: 3079MB <QUANTUM FIREBALL EX3.2A A0A.0400> at ata0-master UDMA33                                                                           
ugen0.1: <VIA> at usbus0                                                                                                                       
uhub0: <VIA UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0                                                                         
ugen1.1: <VIA> at usbus1                                                                                                                       
uhub1: <VIA UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1                                                                         
ad6: 305245MB <Seagate ST3320620AS 3.AAK> at ata3-master SATA150                                                                               
uhub0: 2 ports with 2 removable, self powered                                                                                                  
uhub1: 2 ports with 2 removable, self powered
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: TIMEOUT - READ_DMA48 retrying (1 retry left) LBA=312729488
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: TIMEOUT - READ_DMA48 retrying (0 retries left) LBA=312729488
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: FAILURE - READ_DMA48 timed out LBA=312729488
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: TIMEOUT - READ_DMA48 retrying (1 retry left) LBA=312729488
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: TIMEOUT - READ_DMA48 retrying (0 retries left) LBA=312729488
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
interrupt storm detected on "irq10:"; throttling interrupt source
ad6: FAILURE - READ_DMA48 timed out LBA=312729488
ad6: FAILURE - device detached
Trying to mount root from ufs:/dev/ad0s1a
sis0: Applying short cable fix (reg=ef)
ipfw2 (+ipv6) initialized, divert loadable, nat loadable, rule-based forwarding disabled, default to deny, logging disabled


Code:
backup# vmstat -i
interrupt                          total       rate
irq0: clk                        1026705        999
irq8: rtc                         131410        127
irq9: sis0                           811          0
irq10: atapci1                     20367         19
irq14: ata0                         1446          1
Total                            1180739       1149

Code:
backup# pciconf -lv
hostb0@pci0:0:0:0:      class=0x060000 card=0x00000000 chip=0x06911106 rev=0xc4 hdr=0x00
    vendor     = 'VIA Technologies Inc'                                                 
    device     = 'VT82C691/693A/694X Apollo Pro/133/133A System Controller'             
    class      = bridge                                                                 
    subclass   = HOST-PCI                                                               
pcib1@pci0:0:1:0:       class=0x060400 card=0x00000000 chip=0x85981106 rev=0x00 hdr=0x01
    vendor     = 'VIA Technologies Inc'                                                 
    device     = 'VT82C598MVP/694x Apollo MVP3/Pro133x PCI to AGP Bridge'               
    class      = bridge                                                                 
    subclass   = PCI-PCI                                                                
isab0@pci0:0:7:0:       class=0x060100 card=0x06861106 chip=0x06861106 rev=0x40 hdr=0x00
    vendor     = 'VIA Technologies Inc'                                                 
    device     = 'VT82C686/A/B "Super South" PCI to ISA Bridge'                         
    class      = bridge                                                                 
    subclass   = PCI-ISA
atapci0@pci0:0:7:1:     class=0x01018a card=0x00000000 chip=0x05711106 rev=0x06 hdr=0x00
    vendor     = 'VIA Technologies Inc'
    device     = 'Bus Master IDE Controller (VT82C686B/VT823x/A/C)'
    class      = mass storage
    subclass   = ATA
uhci0@pci0:0:7:2:       class=0x0c0300 card=0x12340925 chip=0x30381106 rev=0x16 hdr=0x00
    vendor     = 'VIA Technologies Inc'
    device     = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)'
    class      = serial bus
    subclass   = USB
uhci1@pci0:0:7:3:       class=0x0c0300 card=0x12340925 chip=0x30381106 rev=0x16 hdr=0x00
    vendor     = 'VIA Technologies Inc'
    device     = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)'
    class      = serial bus
    subclass   = USB
none0@pci0:0:7:4:       class=0x0c0500 card=0x00000000 chip=0x30571106 rev=0x40 hdr=0x00
    vendor     = 'VIA Technologies Inc'
    device     = 'ACPI Power Management Controller (VT82C686A/B)'
    class      = serial bus
    subclass   = SMBus
sis0@pci0:0:9:0:        class=0x020000 card=0xf3311385 chip=0x0020100b rev=0x00 hdr=0x00
    vendor     = 'National Semiconductors'
    device     = 'DP83815/16 Fast Ethernet Adapter (MacPhyter/MacPhyter-II)'
    class      = network
    subclass   = ethernet
atapci1@pci0:0:10:0:    class=0x010400 card=0x32491106 chip=0x32491106 rev=0x50 hdr=0x00
    vendor     = 'VIA Technologies Inc'
    device     = 'VIA VT6421 RAID Controller - Windows XP 32.bit (VT6421)'
    class      = mass storage
    subclass   = RAID
none1@pci0:0:12:0:      class=0x040100 card=0x20601458 chip=0x58801274 rev=0x02 hdr=0x00
    vendor     = 'Creative (Was: Ensoniq)'
    device     = 'Soundblaster (5880x)'
    class      = multimedia
    subclass   = audio
vgapci0@pci0:1:0:0:     class=0x030000 card=0x8a225333 chip=0x8a225333 rev=0x02 hdr=0x00
    vendor     = 'S3 Graphics Co., Ltd'
    device     = '86C394/5/6/7/8 Savage4 LT/GT/Pro-M/Pro/Xtreme'
    class      = display
    subclass   = VGA

Code:
backup# ls -al /dev/ad*
crw-r-----  1 root  operator    0,  63 Jan 21 16:23 /dev/ad0
crw-r-----  1 root  operator    0,  64 Jan 21 16:23 /dev/ad0s1
crw-r-----  1 root  operator    0,  65 Jan 21 16:23 /dev/ad0s1a
crw-r-----  1 root  operator    0,  66 Jan 21 16:23 /dev/ad0s1b
crw-r-----  1 root  operator    0,  67 Jan 21 16:23 /dev/ad0s1d
crw-r-----  1 root  operator    0,  68 Jan 21 16:23 /dev/ad0s1e
crw-r-----  1 root  operator    0,  69 Jan 21 16:23 /dev/ad0s1f
crw-r-----  1 root  operator    0,  75 Jan 21 16:23 /dev/ad6
crw-r-----  1 root  operator    0,  76 Jan 21 16:23 /dev/ad6s1
crw-r-----  1 root  operator    0,  79 Jan 21 16:23 /dev/ad6s1d
crw-r-----  1 root  operator    0,  77 Jan 21 16:23 /dev/ad6s2
crw-r-----  1 root  operator    0,  81 Jan 21 16:23 /dev/ad6s2d
 
I forgot to say,

I also tried a 16 GB Sata SSD and it's the same. The solid state drive is:
Code:
ad4: 15272MB <SAMSUNG MMBRE16GSMPP-MVA VAM1101Q> at ata2-master SATA150

Also, when system fault because of this errors; when i try "fsck -y", i think it's working on all the inodes and after that the drive detached.
 
DMA timeouts together with interrupt storms could be result of the bug, already fixed in 7/8-STABLE after 8.0 release. That bug was in error handling code, so these errors are probably hiding other real errors. If drives replacement didn't help your, try also to replace cables.
 
mav,

Thank you for you reply. I tried with 5 different data cable and 3 power cable. I also tried to connect the PCI card to different slots. It's the same. Thank you.
 
The Via VT6421 chipset is well known for a variety of problems. The interupt problems often reported can sometimes be fixed by freeing up interupts by disabling motherboard hardware for example serials ports. The other option which MAY help is moving the card to a different PCI slot.

Hope this is of some use. Let us know how you get on.
 
Hello,

Thank you for your interest mav and michaelrmgreen.

I fetched the recent src tree of 8.0 and compiled kernel. I think it's the stable right? uname -r still shows 8.0-RELEASE-p2 but it's compiled kernel. If it's not mean stable please refer me about this.

I downloaded the last 8-STABLE snapshot iso cd but it didn't boot. So i updated the source and compiled it. If the 8.0 source is not stable please tell me about this.

After i compiled from updated source code, it didn't help me. It's the same.

I tried all the pci slots. I disabled serial & parallel ports. I tried with so many sata cables. I tried with 3 different power supplies to be sure about stable voltage. It's all the same.

I limited the bandwidth on network; tried to transfer files at about 128kb/s. Still got errors.

Thank you for your helps.
 
mav@ said:
Releases are just a way points of STABLE branches. 8.0-RELEASE is 8-STABLE of 4 moth ago.

Yes. I was already using 8.0-RELEASE-p2. It's patched with freebsd-update utility. After that, you asked me to upgrade to 8-STABLE. So, i updated the source tree (/usr/src) with csup (configured as release tag RELENG_8_0)
Code:
*default release=cvs tag=RELENG_8_0

After I updated the source, i compiled and installed kernel and world. I thought that it means stable. Am I wrong?

If I'm wrong about fetching the source and compiling the kernel means current stable, please tell me about how to update my system to stable?

Thanks.
 
I have compiled 8-STABLE successfully. Now, interrupt storms had gone. But i still see READ and WRITE DMA errors. How can i fix this? After this errors, device detached and system automatically reboots.
 
After fsck -y
Code:
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=376639
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=376639
ad4: TIMEOUT - READ_DMA retrying (1 retry left) LBA=1129343
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=3763775
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=12043551
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=12043551
ad4: FAILURE - READ_DMA status=51<READY,DSC,ERROR> error=84<ICRC,ABORTED> LBA=12043551
ad4: FAILURE - device detached

After mount
Code:
WARNING: /backup/a1 was not properly dismounted
/backup/a1: mount pending error: blocks 28992 files 0

Then i do fsck -y on another machine and connected the clean drive again. Mounter with this error:
Code:
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=63
ad4: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=191
 
Then try to "rm -rf" the files in the slice and get:

Code:
ad4: 305245MB <Seagate ST3320620AS 3.AAK> at ata2-master UDMA100 SATA 1.5Gb/s
ad4: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=63
ad4: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=191
ad4: FAILURE - device detached
g_vfs_done():ad4s1d[READ(offset=103668416512, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104606269440, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104607531008, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103257636864, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103283081216, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103757627392, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103841775616, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104606056448, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103757266944, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103251116032, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104606040064, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=106115186688, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103251148800, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103757250560, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104606236672, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=104607678464, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=118891118592, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=118891200512, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=103668482048, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=120818040832, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105209970688, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105023619072, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=107714969600, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=107715051520, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057468416, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=109641891840, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=109641973760, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057402880, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=112724967424, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=112725049344, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057419264, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=114651889664, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=114651971584, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057435648, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=117734965248, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=117735047168, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057452032, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
g_vfs_done():ad4s1d[READ(offset=119661887488, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=119661969408, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105057484800, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105210052608, length=16384)]error = 6
g_vfs_done():ad4s1d[READ(offset=105017360384, length=16384)]error = 6
handle_workitem_freefile: got error 6 while accessing filesystem
Device ad4s1d went missing before all of the data could be written to it; expect data loss.
 
Drive screams about data corruptions during transfer. Try to put SATA150 limit jumper onto the drive. If it doesn't help and if you have already tried several data cables - I don't see what else we can do about it.
 
Thank you mav@,

I have already put SATA150 jumper onto the drive and tried with over 5 different absolutely brand new data cables.

I'm limiting network transfer speed on firewall to about 100kb/s but it's the same. After some time, errors arrive.

Is it possible to limit the speed etc. on kernel level?

Thank you for your all help.
 
Make the card/disk usable...

Code:
rsync -vaH --delete-delay --partial --stats --numeric-ids --inplace --archive --compress --hard-links --one-file-system  --bwlimit=1000 . /[target] && yell
That command all on one line.
Run once per filesystem.
for instance, if /usr is a seperate
filesystem, and you run the command
from /usr,
and you have installed /yell/ first,
You *may* have a perfect backup going
while you browse, email etc merrily
along in another tty...
The command (rsync with bwlimit) fixed
a similar issue here. The sending disk
sends at "9000" but the sata disk
receives at "1000" throttled by rsync.

Code:
#/usr# rsync  [...]  . /backupdisk/usr && yell

You have to be VERY_VERY careful to
complete the [target] part of the
command to match the source from which
you run it...

BTW that all assumes one machine. You may
have to preprocess data *to* the machine
(some other, ide disk? )
before the to-sata rsync...
the rsync
 
As last resort, try to add line
ch->dma.max_iosize = 32768;
into ata_via_ch_attach() function of ata-via.c, just after line
ata_pci_dmainit(dev);
 
Thank you for your help.

I think the solution is not with transfer speed. Yes rsync set transfer speed limit but, i'm already limiting it on network level. I set the bandwidth of the backup machine even to 512Kbit/s ~ 64 KB/s max. and it's the same. It transfers about 200 mb, and then suddenly device detached and system reboots in 15 seconds.

Thank you all for your help. I think it's not possible to solve my problem on this situation. There's no need to steal your time more.

Thank you,
have a good day.
 
mav@ said:
As last resort, try to add line
ch->dma.max_iosize = 32768;
into ata_via_ch_attach() function of ata-via.c, just after line
ata_pci_dmainit(dev);

Sorry, i have just seen your message.

I edited /usr/src/sys/ata/chipsets/ata-via.c
and added this line as you said. Is there a fast solution to compile this module without compiling all the kernel?

And, 32768 the size is in bytes?

Thank you again.
 
GENERIC kernel includes this driver linked statically. So you have to rebuild kernel.

Yes, it is in bytes. Some controllers have issues with large transfers, so you may try to limit it. On my tests this controller was working fine without it.
 
mav@,

I tried your last suggest. But it didn't help.

I thank you very much for spending time for my issue.

I think I bought the worst controller ever :)

Thank you again.

Sincerely yours.
 
We couldn't solve this problem, but I want to add something.

As I said in my first message, this card has 1 eSata, 2 Sata and 1 IDE ports.

I discovered something.

I updated system to 8-STABLE. Interrupt errors had gone. It's ok.

My sata hdd still have read & write dma errors.

About 2 days ago, i want to try an IDE hdd with the card. When my system was still 8.0-RELEASE system gave the same interrupt and read & write dma errors with both this IDE and other SATA hdds.

But after updated to stable, this ide works well. The IDE is 40 GB. I could transfer even about 10 GB to the disk, which was impossible with the SATA.

This ide hdd has some bad sectors. It's very old hdd. I only get some read & write errors about this bad sectors. Except this natural errors, I didn't get any error related to controller.

To summarize, now some IDE disks I connect to this sata controller card works well after updated to STABLE. They are 20GB - 40 GB in size. I did fdisk and formatting without any problem. I can format this hdds, fsck them without any problem.

However, I got still errors with my SATA hdd.

I have 2 SATA drive.

One is 320 GB Seagate HDD. Other is 16 GB Samsung SSD (solid state drive)

This card saw my SSD but don't see the slices. I can't mount them. System only detects the solid state drive but mounting or fdisk, formatting is not possible.

It see my SATA hdd but I can't format or fsck it.

I'm formatting the hdd in another machine (onboard sata controller and FreeBSD 7.2-p6)

After I formatted the disk under FreeBSD 7.2 machine, i connect it to this sata controller. I can mount it. Transfer some files (about 200-300mb) and after that errors came.

I know that there is no update about ufs from 7.2 to 8.0 as I read the release notes.

The last thing, I compiled the kernel as mav@ said (32kb/s iosize) But I still transfer over this speed limit.
 
Back
Top