cvs commit: src/sys/dev/ata ata-chipset.c ata-pci.c ata-pci.h

Fabian Keil freebsd-listen at fabiankeil.de
Sun Apr 13 14:53:00 UTC 2008


Marius Strobl <marius at alchemy.franken.de> wrote:

> On Sat, Apr 12, 2008 at 05:21:23PM +0000, Sren Schmidt wrote:
> > sos         2008-04-12 17:21:23 UTC
> > 
> >   FreeBSD src repository
> > 
> >   Modified files:
> >     sys/dev/ata          ata-chipset.c ata-pci.c ata-pci.h 
> >   Log:
> >   Dont call hw.status recursively.
> >   
> >   Spotted by: Marcel Moolenaar

> Even with these fixes in place your latest round of ata(4)
> changes causes acd0 to disappear on a sparc64 machine for
> me. Reverting to ata(4) sources of April 9th fixes these.
> Verbose before and after dmesg output is at:
> http://people.freebsd.org/~marius/v100_1.txt
> http://people.freebsd.org/~marius/v100_2.txt

On one of my i386 systems, ad1 (the disk with
the root partition) is no longer detected.

As acd0 in the dmesg output above, it's configured
as slave and the master on the same controller is
still detected.

With a kernel build a month ago the detection looks like this:

atapci0: <HighPoint HPT372 UDMA133 controller> port 0xa000-0xa007,0xa400-0xa403,0xa800-0xa807,0xac00-0xac03,0xb000-0xb0ff irq 10 at device 14.0 on pci0
atapci0: Reserved 0x100 bytes for rid 0x20 type 4 at 0xb000
atapci0: [MPSAFE]
atapci0: [ITHREAD]
ata2: <ATA channel 0> on atapci0
atapci0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xa000
atapci0: Reserved 0x4 bytes for rid 0x14 type 4 at 0xa400
ata2: reset tp1 mask=03 ostat0=50 ostat1=00
ata2: stat0=0x50 err=0x01 lsb=0x00 msb=0x00
ata2: stat1=0x00 err=0x01 lsb=0x00 msb=0x00
ata2: reset tp2 stat0=50 stat1=00 devices=0x1<ATA_MASTER>
ata2: [MPSAFE]
ata2: [ITHREAD]
ata3: <ATA channel 1> on atapci0
atapci0: Reserved 0x8 bytes for rid 0x18 type 4 at 0xa800
atapci0: Reserved 0x4 bytes for rid 0x1c type 4 at 0xac00
ata3: reset tp1 mask=03 ostat0=60 ostat1=70
ata3: stat0=0x20 err=0x20 lsb=0x20 msb=0x20
ata3: stat1=0x30 err=0x30 lsb=0x30 msb=0x30
ata3: reset tp2 stat0=20 stat1=30 devices=0x0
ata3: [MPSAFE]
ata3: [ITHREAD]
isab0: <PCI-ISA bridge> at device 17.0 on pci0
isa0: <ISA bus> on isab0
atapci1: <VIA 8233A UDMA133 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xb400-0xb40f at device 17.1 on pci0
atapci1: Reserved 0x10 bytes for rid 0x20 type 4 at 0xb400
ata0: <ATA channel 0> on atapci1
atapci1: Reserved 0x8 bytes for rid 0x10 type 4 at 0x1f0
atapci1: Reserved 0x1 bytes for rid 0x14 type 4 at 0x3f6
ata0: reset tp1 mask=03 ostat0=50 ostat1=50
ata0: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb
ata0: stat1=0x50 err=0x01 lsb=0x00 msb=0x00
ata0: reset tp2 stat0=00 stat1=50 devices=0x6<ATAPI_MASTER,ATA_SLAVE>
ata0: [MPSAFE]
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci1
atapci1: Reserved 0x8 bytes for rid 0x18 type 4 at 0x170
atapci1: Reserved 0x1 bytes for rid 0x1c type 4 at 0x376
ata1: reset tp1 mask=03 ostat0=50 ostat1=50
ata1: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb
ata1: stat1=0x00 err=0x01 lsb=0x14 msb=0xeb
ata1: reset tp2 stat0=00 stat1=00 devices=0xc<ATAPI_SLAVE,ATAPI_MASTER>
ata1: [MPSAFE]
ata1: [ITHREAD]
[...]
ata0-slave: pio=PIO4 wdma=WDMA2 udma=UDMA100 cable=80 wire
ata0-master: pio=PIO4 wdma=WDMA2 udma=UDMA66 cable=40 wire
acd0: setting PIO4 on 8233A chip
acd0: DMA limited to UDMA33, device found non-ATA66 cable
acd0: setting UDMA33 on 8233A chip
acd0: <LITE-ON DVDRW SOHW-1693S/KC4B> DVDR drive at ata0 as master
acd0: read 8268KB/s (8268KB/s) write 8268KB/s (8268KB/s), 2048KB buffer, UDMA33
acd0: Reads: CDR, CDRW, CDDA stream, DVDROM, DVDR, packet
acd0: Writes: CDR, CDRW, DVDR, test write, burnproof
acd0: Audio: play, 256 volume levels
acd0: Mechanism: ejectable tray, unlocked
acd0: Medium: no/blank disc
ad1: setting PIO4 on 8233A chip
ad1: setting UDMA100 on 8233A chip
ad1: 381554MB <SAMSUNG HD400LD WQ100-14> at ata0-slave UDMA100
ad1: 781422768 sectors [12403536C/1H/63S] 16 sectors/interrupt 1 depth queue
ad1: VIA check1 failed
ad1: Adaptec check1 failed
ad1: LSI (v3) check1 failed
ad1: LSI (v2) check1 failed
ad1: FreeBSD check1 failed
ata1-slave: pio=PIO4 wdma=WDMA2 udma=UDMA33 cable=40 wire
ata1-master: pio=PIO4 wdma=WDMA2 udma=UDMA33 cable=40 wire
GEOM: new disk ad1
acd1: setting PIO4 on 8233A chip
acd1: setting UDMA33 on 8233A chip
acd1: <LITE-ON DVDRW LDW-811S/HS0R> CDRW drive at ata1 as master
acd1: read 10820KB/s (10820KB/s) write 10820KB/s (10820KB/s), 2048KB buffer, UDMA33
acd1: Reads: CDR, CDRW, CDDA stream, DVDROM, DVDR, packet
acd1: Writes: CDR, CDRW, test write, burnproof
acd1: Audio: play, 256 volume levels
acd1: Mechanism: ejectable tray, unlocked
acd1: Medium: DVD 120mm data disc
acd2: setting PIO4 on 8233A chip
acd2: setting UDMA33 on 8233A chip
acd2: <PLEXTOR CD-R PREMIUM/1.06> CDRW drive at ata1 as slave
acd2: read 8958KB/s (6890KB/s) write 8958KB/s (8958KB/s), 8192KB buffer, UDMA33
acd2: Reads: CDR, CDRW, CDDA stream, packet
acd2: Writes: CDR, CDRW, test write, burnproof
acd2: Audio: play, 256 volume levels
acd2: Mechanism: ejectable tray, unlocked
acd2: Medium: CD-ROM unknown
ata2-master: pio=PIO4 wdma=WDMA2 udma=UDMA100 cable=80 wire
ad4: setting PIO4 on HighPoint chip
ad4: setting UDMA100 on HighPoint chip
ad4: 381554MB <SAMSUNG HD400LD WQ100-14> at ata2-master UDMA100
ad4: 781422768 sectors [775221C/16H/63S] 16 sectors/interrupt 1 depth queue
GEOM: new disk ad4
GEOM_LABEL: Label for provider ad1s1 is ext2fs//12.
ad4: HighPoint (v3) check1 failed
ad4: HighPoint (v2) check1 failed
ad4: Adaptec check1 failed
ad4: LSI (v3) check1 failed
ad4: LSI (v2) check1 failed
ad4: FreeBSD check1 failed
ATA PseudoRAID loaded

With a kernel from today the line:

ata0: reset tp2 stat0=00 stat1=50 devices=0x6<ATAPI_MASTER,ATA_SLAVE>

changes to:

ata0: reset tp2 stat0=00 stat1=50 devices=0x10002<ATA_SLAVE>

Note that the slave (ad1) is the missing drive
while the master (acd0) is detected later on.

Fabian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-src/attachments/20080413/67e3abb6/signature.pgp


More information about the cvs-src mailing list