Re: Quick sanity test for sili(4)/ahci(4) diff
On 05/06/11 13:52, Matthew Dempsky wrote: > If you have a sili(4) or ahci(4), I'd appreciate a quick test of the > diff below. As long as you can still mount your disks without > panicking, then it worked. :) > > One test for each is sufficient, so please reply to the list to save > others from redundant effort. > Works for me on my Gateway NV53 OpenBSD 4.9-current (GENERIC.MP) #0: Fri May 6 17:41:44 EDT 2011 ja...@stan.hcpnet.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP real mem = 4225499136 (4029MB) avail mem = 4098973696 (3909MB) mainbus0 at root bios0 at mainbus0: SMBIOS rev. 2.6 @ 0xdbeda000 (35 entries) bios0: vendor Phoenix Technologies LTD version "V1.04" date 10/22/2009 bios0: Gateway NV53 acpi0 at bios0: rev 2 acpi0: sleep states S0 S3 S4 S5 acpi0: tables DSDT FACP SLIC SSDT APIC MCFG HPET acpi0: wakeup devices LID0(S3) SLPB(S3) PB2_(S4) PB3_(S4) PB4_(S4) PB5_(S4) PB6_(S4) PB7_(S4) PB9_(S4) PB10(S4) OHC0(S3) OHC1(S3) OHC2(S3) OHC3(S3) OHC4(S3) EHC0(S3) EHC1(S3) P2P_(S5) AZLA(S3) acpitimer0 at acpi0: 3579545 Hz, 32 bits acpimadt0 at acpi0 addr 0xfee0: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: AMD Athlon(tm) II Dual-Core M300, 2001.00 MHz cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,MWAIT,CX16,POPCNT,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 64b/line 16-way L2 cache cpu0: ITLB 32 4KB entries fully associative, 16 4MB entries fully associative cpu0: DTLB 48 4KB entries fully associative, 48 4MB entries fully associative cpu0: apic clock running at 200MHz cpu1 at mainbus0: apid 1 (application processor) cpu1: AMD Athlon(tm) II Dual-Core M300, 2000.04 MHz cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,MWAIT,CX16,POPCNT,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW cpu1: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 64b/line 16-way L2 cache cpu1: ITLB 32 4KB entries fully associative, 16 4MB entries fully associative cpu1: DTLB 48 4KB entries fully associative, 48 4MB entries fully associative ioapic0 at mainbus0: apid 2 pa 0xfec0, version 21, 24 pins acpimcfg0 at acpi0 addr 0xe000, bus 0-9 acpihpet0 at acpi0: 14318180 Hz acpi0: unable to load \\_SB_.PCI0._INI.EXH2 acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus -1 (PB2_) acpiprt2 at acpi0: bus -1 (PB3_) acpiprt3 at acpi0: bus 3 (PB4_) acpiprt4 at acpi0: bus -1 (PB5_) acpiprt5 at acpi0: bus 9 (PB6_) acpiprt6 at acpi0: bus -1 (PB7_) acpiprt7 at acpi0: bus -1 (PB9_) acpiprt8 at acpi0: bus -1 (PB10) acpiprt9 at acpi0: bus 10 (P2P_) acpiprt10 at acpi0: bus 1 (AGP_) acpiec0 at acpi0 acpicpu0 at acpi0: PSS acpicpu1 at acpi0: PSS acpitz0 at acpi0: critical temperature 95 degC acpitz1 at acpi0: critical temperature 95 degC acpibtn0 at acpi0: PWRB acpibtn1 at acpi0: LID0 acpibtn2 at acpi0: SLPB acpibat0 at acpi0: BAT0 model "AS09A61" serial 4548 type LION oem "494453" acpiac0 at acpi0: AC unit offline acpivideo0 at acpi0: VGA_ acpivideo1 at acpi0: VGA_ acpivout0 at acpivideo1: LCD_ pci0 at mainbus0 bus 0 pchb0 at pci0 dev 0 function 0 "AMD RS780 Host" rev 0x00 ppb0 at pci0 dev 1 function 0 vendor "Acer", unknown product 0x9602 rev 0x00 pci1 at ppb0 bus 1 vga1 at pci1 dev 5 function 0 "ATI Mobility Radeon HD 4200" rev 0x00 wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation) wsdisplay0: screen 1-5 added (80x25, vt100 emulation) radeondrm0 at vga1: apic 2 int 18 drm0 at radeondrm0 azalia0 at pci1 dev 5 function 1 "ATI Radeon HD 4200 HD Audio" rev 0x00: apic 2 int 19 azalia0: no supported codecs ppb1 at pci0 dev 4 function 0 "AMD RS780 PCIE" rev 0x00: apic 2 int 16 pci2 at ppb1 bus 3 bge0 at pci2 dev 0 function 0 "Broadcom BCM5784" rev 0x10, BCM5784 A1 (0x5784100): apic 2 int 16, address 00:26:2d:6f:6b:e2 brgphy0 at bge0 phy 1: BCM5784 10/100/1000baseT PHY, rev. 4 ppb2 at pci0 dev 6 function 0 "AMD RS780 PCIE" rev 0x00: apic 2 int 18 pci3 at ppb2 bus 9 athn0 at pci3 dev 0 function 0 "Atheros AR9281" rev 0x01: apic 2 int 18 athn0: AR9280 rev 2 (2T2R), ROM rev 22, address 70:1a:04:80:80:93 ahci0 at pci0 dev 17 function 0 "ATI SBx00 SATA" rev 0x00: apic 2 int 22, AHCI 1.1 scsibus0 at ahci0: 32 targets sd0 at scsibus0 targ 0 lun 0: SCSI3 0/direct fixed naa.5000cca59ec6ae72 sd0: 476940MB, 512 bytes/sec, 976773168 sec total cd0 at scsibus0 targ 1 lun 0: ATAPI 5/cdrom removable ohci0 at pci0 dev 18 function 0 "ATI SB700 USB" rev 0x00: apic 2 int 16, version 1.0, legacy support ohci1 at pci0 dev 18 function 1 "ATI SB700 USB" rev 0x00: apic 2 int 16, version 1.0, legacy support ehci0 at pci0 dev 18 function 2 "ATI SB700 USB2" rev 0x00: apic 2 int 17 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 "ATI EHCI root hub" rev 2.00/1.00 addr 1 ohci2 at pci0 dev 19 function 0 "ATI SB700 USB" rev 0x00: apic 2 int 18, version 1.0, legacy support ohci3 at pci0 dev 19 function 1 "ATI SB700 USB" rev 0x00: apic 2 int 18, version 1.0, le
Re: Quick sanity test for sili(4)/ahci(4) diff
On Fri, May 06, 2011 at 10:52:19AM -0700, Matthew Dempsky wrote: > If you have a sili(4) or ahci(4), I'd appreciate a quick test of the > diff below. As long as you can still mount your disks without > panicking, then it worked. :) > > One test for each is sufficient, so please reply to the list to save > others from redundant effort. Works fine with this on amd64: ahci1 at pci0 dev 17 function 0 "ATI SBx00 SATA" rev 0x00: apic 4 int 22, AHCI 1.1 Cheers, Jasper > Index: ata/atascsi.c > === > RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.c,v > retrieving revision 1.104 > diff -u -p -r1.104 atascsi.c > --- ata/atascsi.c 5 May 2011 19:23:05 - 1.104 > +++ ata/atascsi.c 6 May 2011 17:41:20 - > @@ -1590,10 +1590,12 @@ atascsi_io_get(void *cookie) > void > atascsi_io_put(void *cookie, void *io) > { > - struct ata_xfer *xa = io; > + struct atascsi_host_port*ahp = cookie; > + struct atascsi *as = ahp->ahp_as; > + struct ata_xfer *xa = io; > > xa->state = ATA_S_COMPLETE; /* XXX this state machine is dumb */ > - xa->ata_put_xfer(xa); > + as->as_methods->ata_put_xfer(xa); > } > > void > Index: ata/atascsi.h > === > RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.h,v > retrieving revision 1.45 > diff -u -p -r1.45 atascsi.h > --- ata/atascsi.h 26 Jan 2011 21:41:00 - 1.45 > +++ ata/atascsi.h 5 May 2011 19:33:35 - > @@ -18,6 +18,9 @@ > * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > */ > > +#ifndef _DEV_ATA_ATASCSI_H_ > +#define _DEV_ATA_ATASCSI_H_ > + > struct atascsi; > struct scsi_link; > > @@ -327,8 +330,6 @@ struct ata_xfer { > void*atascsi_private; > > int pmp_port; > - > - void(*ata_put_xfer)(struct ata_xfer *); > }; > > /* > @@ -339,6 +340,7 @@ struct atascsi_methods { > int (*probe)(void *, int, int); > void(*free)(void *, int, int); > struct ata_xfer * (*ata_get_xfer)(void *, int); > + void(*ata_put_xfer)(struct ata_xfer *); > void(*ata_cmd)(struct ata_xfer *); > }; > > @@ -368,3 +370,5 @@ int atascsi_probe_dev(struct atascsi *, > int atascsi_detach_dev(struct atascsi *, int, int, int); > > void ata_complete(struct ata_xfer *); > + > +#endif /* _DEV_ATA_ATASCSI_H_ */ > Index: ic/sili.c > === > RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ic/sili.c,v > retrieving revision 1.47 > diff -u -p -r1.47 sili.c > --- ic/sili.c 26 Jan 2011 21:41:00 - 1.47 > +++ ic/sili.c 5 May 2011 19:34:11 - > @@ -211,6 +211,7 @@ struct atascsi_methods sili_atascsi_meth > sili_ata_probe, > sili_ata_free, > sili_ata_get_xfer, > + sili_ata_put_xfer, > sili_ata_cmd > }; > > @@ -833,7 +834,6 @@ sili_ccb_alloc(struct sili_port *sp) > ccb->ccb_xa.fis = (struct ata_fis_h2d *)&prb->fis; > ccb->ccb_xa.packetcmd = ((struct sili_prb_packet *)prb)->cdb; > ccb->ccb_xa.tag = i; > - ccb->ccb_xa.ata_put_xfer = sili_ata_put_xfer; > ccb->ccb_xa.state = ATA_S_COMPLETE; > > sili_put_ccb(ccb); > Index: pci/ahci.c > === > RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/pci/ahci.c,v > retrieving revision 1.177 > diff -u -p -r1.177 ahci.c > --- pci/ahci.c24 Apr 2011 11:09:48 - 1.177 > +++ pci/ahci.c5 May 2011 19:33:58 - > @@ -622,6 +622,7 @@ struct atascsi_methods ahci_atascsi_meth > ahci_ata_probe, > ahci_ata_free, > ahci_ata_get_xfer, > + ahci_ata_put_xfer, > ahci_ata_cmd > }; > > @@ -1227,8 +1228,6 @@ nomem: > (struct ata_fis_h2d *)ccb->ccb_cmd_table->cfis; > ccb->ccb_xa.packetcmd = ccb->ccb_cmd_table->acmd; > ccb->ccb_xa.tag = i; > - > - ccb->ccb_xa.ata_put_xfer = ahci_ata_put_xfer; > > ccb->ccb_xa.state = ATA_S_COMPLETE; > ahci_put_ccb(ccb); > -- Cheers, Jasper "Capable, generous men do not create victims, they nurture them."
Re: Quick sanity test for sili(4)/ahci(4) diff
On Fri, May 6, 2011 at 7:52 PM, Matthew Dempsky wrote: > If you have a sili(4) or ahci(4), I'd appreciate a quick test of the > diff below. As long as you can still mount your disks without > panicking, then it worked. :) > > One test for each is sufficient, so please reply to the list to save > others from redundant effort. It works on ahci(4): OpenBSD 4.9-current (GENERIC.MP) #79: Fri May 6 21:38:57 CEST 2011 r...@kronenbourg.panam.brimbelle.org:/usr/src/sys/arch/amd64/compile/GENE RIC.MP real mem = 4292280320 (4093MB) avail mem = 4163969024 (3971MB) mainbus0 at root bios0 at mainbus0: SMBIOS rev. 2.6 @ 0xf0710 (68 entries) bios0: vendor American Megatrends Inc. version "2003" date 12/14/2010 bios0: ASUSTeK Computer INC. P7P55D acpi0 at bios0: rev 2 acpi0: sleep states S0 S1 S3 S4 S5 acpi0: tables DSDT FACP APIC MCFG OEMB HPET DMAR ASPT OSFR acpi0: wakeup devices P0P4(S4) BR1E(S4) UAR1(S4) PS2K(S4) PS2M(S4) EUSB(S4) USB0(S4) USB1(S4) USB2(S4) USB3(S4) USBE(S4) USB4(S4) USB5(S4) USB6(S4) BR21(S4) BR22(S4) BR23(S4) P0P1(S4) P0P3(S4) P0P5(S4) P0P6(S4) USB8(S4) BR20(S4) BR24(S4) BR25(S4) BR26(S4) BR27(S4) acpitimer0 at acpi0: 3579545 Hz, 24 bits acpimadt0 at acpi0 addr 0xfee0: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4017.02 MHz cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG cpu0: 256KB 64b/line 8-way L2 cache cpu0: apic clock running at 160MHz cpu1 at mainbus0: apid 4 (application processor) cpu1: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG cpu1: 256KB 64b/line 8-way L2 cache cpu2 at mainbus0: apid 1 (application processor) cpu2: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz cpu2: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG cpu2: 256KB 64b/line 8-way L2 cache cpu3 at mainbus0: apid 5 (application processor) cpu3: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz cpu3: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG cpu3: 256KB 64b/line 8-way L2 cache ioapic0 at mainbus0: apid 6 pa 0xfec0, version 20, 24 pins ioapic0: misconfigured as apic 1, remapped to apid 6 acpimcfg0 at acpi0 addr 0xf800, bus 0-63 acpihpet0 at acpi0: 14318179 Hz acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus 7 (BR1E) acpiprt2 at acpi0: bus -1 (BR21) acpiprt3 at acpi0: bus -1 (BR22) acpiprt4 at acpi0: bus -1 (BR23) acpiprt5 at acpi0: bus 1 (P0P1) acpiprt6 at acpi0: bus -1 (P0P3) acpiprt7 at acpi0: bus -1 (P0P5) acpiprt8 at acpi0: bus -1 (P0P6) acpiprt9 at acpi0: bus 6 (BR20) acpiprt10 at acpi0: bus 5 (BR24) acpiprt11 at acpi0: bus 4 (BR25) acpiprt12 at acpi0: bus 3 (BR26) acpiprt13 at acpi0: bus 2 (BR27) acpiec0 at acpi0 acpicpu0 at acpi0 acpicpu1 at acpi0 acpicpu2 at acpi0 acpicpu3 at acpi0 aibs0 at acpi0: GGRP GITM SITM acpibtn0 at acpi0: PWRB pci0 at mainbus0 bus 0 pchb0 at pci0 dev 0 function 0 "Intel Core Host" rev 0x12 ppb0 at pci0 dev 1 function 0 "Intel Core PCIE" rev 0x12: apic 6 int 16 pci1 at ppb0 bus 1 vga1 at pci1 dev 0 function 0 "ATI Radeon HD 4670" rev 0x00 wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation) wsdisplay0: screen 1-5 added (80x25, vt100 emulation) radeondrm0 at vga1: apic 6 int 16 drm0 at radeondrm0 azalia0 at pci1 dev 0 function 1 "ATI Radeon HD 4000 HD Audio" rev 0x00: apic 6 int 17 azalia0: no supported codecs ehci0 at pci0 dev 26 function 0 "Intel 3400 USB" rev 0x06: apic 6 int 16 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1 azalia1 at pci0 dev 27 function 0 "Intel 3400 HD Audio" rev 0x06: apic 6 int 22 azalia1: codecs: VIA/0x4441 audio0 at azalia1 ppb1 at pci0 dev 28 function 0 "Intel 3400 PCIE" rev 0x06: apic 6 int 17 pci2 at ppb1 bus 6 ppb2 at pci0 dev 28 function 4 "Intel 3400 PCIE" rev 0x06: apic 6 int 17 pci3 at ppb2 bus 5 ppb3 at pci0 dev 28 function 5 "Intel 3400 PCIE" rev 0x06: apic 6 int 16 pci4 at ppb3 bus 4 ppb4 at pci0 dev 28 function 6 "Intel 3400 PCIE" rev 0x06: apic 6 int 18 pci5 at ppb4 bus 3 jmb0 at pci5 dev 0 function 0 "JMicron JMB363 IDE/SATA" rev 0x03 ahci0 at jmb0: apic 6 int 18, AHCI 1.0 scsibus0 at ahci0: 32 targets sd0 at scsibus0 targ 1 lun 0: SCSI3 0/direct fixed naa.5f00070c0776 sd0: 953869MB, 512 bytes/sec, 1953525168 sec total jmb1 at pci5 dev 0 function 1 "JMicron JMB363 IDE/SATA" rev 0x03