Date: Sun, 13 Apr 2008 16:55:35 +0200 From: =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@FreeBSD.ORG> To: Fabian Keil <freebsd-listen@fabiankeil.de> Cc: cvs-src@FreeBSD.ORG, src-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: cvs commit: src/sys/dev/ata ata-chipset.c ata-pci.c ata-pci.h Message-ID: <100600C8-451A-4ECA-8586-1C98FFB3F6D2@FreeBSD.ORG> In-Reply-To: <20080413164141.63091ef5@fabiankeil.de> References: <200804121721.m3CHLNqu095189@repoman.freebsd.org> <20080412230157.GC44768@alchemy.franken.de> <20080413164141.63091ef5@fabiankeil.de>
next in thread | previous in thread | raw e-mail | index | archive | help
I'm aware of an issue with master/slave comboes, I'll lok into it as =20 soon as I have time. -S=F8ren On 13Apr, 2008, at 16:41 , Fabian Keil wrote: > Marius Strobl <marius@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 =20 > 0xa000=20 > -0xa007,0xa400-0xa403,0xa800-0xa807,0xac00-0xac03,0xb000-0xb0ff irq =20= > 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=3D03 ostat0=3D50 ostat1=3D00 > ata2: stat0=3D0x50 err=3D0x01 lsb=3D0x00 msb=3D0x00 > ata2: stat1=3D0x00 err=3D0x01 lsb=3D0x00 msb=3D0x00 > ata2: reset tp2 stat0=3D50 stat1=3D00 devices=3D0x1<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=3D03 ostat0=3D60 ostat1=3D70 > ata3: stat0=3D0x20 err=3D0x20 lsb=3D0x20 msb=3D0x20 > ata3: stat1=3D0x30 err=3D0x30 lsb=3D0x30 msb=3D0x30 > ata3: reset tp2 stat0=3D20 stat1=3D30 devices=3D0x0 > 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 =20 > 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xb400-0xb40f at device 17.1 on =20= > 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=3D03 ostat0=3D50 ostat1=3D50 > ata0: stat0=3D0x00 err=3D0x01 lsb=3D0x14 msb=3D0xeb > ata0: stat1=3D0x50 err=3D0x01 lsb=3D0x00 msb=3D0x00 > ata0: reset tp2 stat0=3D00 stat1=3D50 = devices=3D0x6<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=3D03 ostat0=3D50 ostat1=3D50 > ata1: stat0=3D0x00 err=3D0x01 lsb=3D0x14 msb=3D0xeb > ata1: stat1=3D0x00 err=3D0x01 lsb=3D0x14 msb=3D0xeb > ata1: reset tp2 stat0=3D00 stat1=3D00 =20 > devices=3D0xc<ATAPI_SLAVE,ATAPI_MASTER> > ata1: [MPSAFE] > ata1: [ITHREAD] > [...] > ata0-slave: pio=3DPIO4 wdma=3DWDMA2 udma=3DUDMA100 cable=3D80 wire > ata0-master: pio=3DPIO4 wdma=3DWDMA2 udma=3DUDMA66 cable=3D40 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 =20 > 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 =20 > 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=3DPIO4 wdma=3DWDMA2 udma=3DUDMA33 cable=3D40 wire > ata1-master: pio=3DPIO4 wdma=3DWDMA2 udma=3DUDMA33 cable=3D40 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 =20= > 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 =20 > 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=3DPIO4 wdma=3DWDMA2 udma=3DUDMA100 cable=3D80 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 =20 > 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=3D00 stat1=3D50 = devices=3D0x6<ATAPI_MASTER,ATA_SLAVE> > > changes to: > > ata0: reset tp2 stat0=3D00 stat1=3D50 devices=3D0x10002<ATA_SLAVE> > > Note that the slave (ad1) is the missing drive > while the master (acd0) is detected later on. > > Fabian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?100600C8-451A-4ECA-8586-1C98FFB3F6D2>