Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Oct 2004 10:44:34 -0600
From:      <soralx@cydem.org>
To:        freebsd-hackers@freebsd.org
Subject:   Re: ad0: FAILURE - WRITE_DMA
Message-ID:  <200410291044.34973.soralx@cydem.org>
In-Reply-To: <Pine.GSO.4.58.0410291146060.29645@saros.physiol>
References:  <200410081937.15068.miha@ghuug.org> <4168F9E7.9040408@DeepCore.dk> <Pine.GSO.4.58.0410291146060.29645@saros.physiol>

next in thread | previous in thread | raw e-mail | index | archive | help

> This sounds very possible to me. I have been experiencing the same
> error, on a system that I've been trying to set up using 5.3-RC1 and
> a new 160Gbyte SATA drives My hardware is:
>
> atapci0: <SiI 3112 SATA150 controller> port
> 0xb000-0xb00f,0xac00-0xac03,0xa800-0xa807,0xa400-0xa403,0xa000-0xa007 mem
> 0xdf081000-0xdf0811ff irq 18 at device 11.0 on pci1 ad4: 152627MB
> <ST3160023AS/3.18> [310101/16/63] at ata2-master SATA150
>
> (I notice that Michail and I both have Seagate drives ...).
>
> I had problems with a filesystem on a partition which crossed the
> LBA=268435455 threshold. After googling and reading this thread and
> Søren's posting, I tried removing the filesystem and making a little
> 1000 sector partition which straddled the lba48 transition sector - I was
> able to get read and write failure messages of the above form
> reproducibly, by dd-ing between the test partition and /dev/zero.

The same problem with similar IDE Seagate HDD: 

ad0: <ST3160023A/3.06> ATA-6 disk at ata0-master
ad0: 152627MB (312581808 sectors), 310101 C, 16 H, 63 S, 512 B
[...]
ad0: FAILURE - READ_DMA status=51<READY,DSC,ERROR> error=10<NID_NOT_FOUND> 
LBA=268435455

It had 312581808 sectors, but failed at >= 268435455 :

bash-2.05b# dd if=/dev/ad0 of=/dev/null bs=512 skip=268435453
dd: /dev/ad0: Input/output error
2+0 records in
2+0 records out
1024 bytes transferred in 0.163827 secs (6250 bytes/sec)

bash-2.05b# dd if=/dev/ad0 of=/dev/null bs=512 skip=268435454
dd: /dev/ad0: Input/output error
1+0 records in
1+0 records out
512 bytes transferred in 0.156888 secs (3263 bytes/sec)

bash-2.05b# dd if=/dev/ad0 of=/dev/null bs=512 skip=268435455
dd: /dev/ad0: Input/output error
0+0 records in
0+0 records out
0 bytes transferred in 0.149888 secs (0 bytes/sec)


Decreasing the 48-bit LBA threshold by 1 really helped:

bash-2.05b# dd if=/dev/ad0 bs=512 skip=312581808
0+0 records in
0+0 records out
0 bytes transferred in 0.000088 secs (0 bytes/sec)

bash-2.05b# dd if=/dev/ad0 bs=512 skip=312581807
1+0 records in
1+0 records out
512 bytes transferred in 0.019809 secs (25847 bytes/sec)

Timestamp: 0x41826DE9
[SorAlx]  http://cydem.org.ua/
ridin' VN1500-B2



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200410291044.34973.soralx>