--- - branch: MAIN date: Sat Oct 7 16:05:33 UTC 2017 files: - new: '1.15' old: '1.14' path: src/sys/arch/acorn32/eb7500atx/rside.c pathrev: src/sys/arch/acorn32/eb7500atx/rside.c@1.15 type: modified - new: '1.29' old: '1.28' path: src/sys/arch/acorn32/mainbus/wdc_pioc.c pathrev: src/sys/arch/acorn32/mainbus/wdc_pioc.c@1.29 type: modified - new: '1.33' old: '1.32' path: src/sys/arch/acorn32/podulebus/icside.c pathrev: src/sys/arch/acorn32/podulebus/icside.c@1.33 type: modified - new: '1.31' old: '1.30' path: src/sys/arch/acorn32/podulebus/rapide.c pathrev: src/sys/arch/acorn32/podulebus/rapide.c@1.31 type: modified - new: '1.30' old: '1.29' path: src/sys/arch/acorn32/podulebus/simide.c pathrev: src/sys/arch/acorn32/podulebus/simide.c@1.30 type: modified - new: '1.14' old: '1.13' path: src/sys/arch/amiga/dev/efa.c pathrev: src/sys/arch/amiga/dev/efa.c@1.14 type: modified - new: '1.3' old: '1.2' path: src/sys/arch/amiga/dev/efavar.h pathrev: src/sys/arch/amiga/dev/efavar.h@1.3 type: modified - new: '1.5' old: '1.4' path: src/sys/arch/amiga/dev/wdc_acafh.c pathrev: src/sys/arch/amiga/dev/wdc_acafh.c@1.5 type: modified - new: '1.5' old: '1.4' path: src/sys/arch/amiga/dev/wdc_xsurf.c pathrev: src/sys/arch/amiga/dev/wdc_xsurf.c@1.5 type: modified - new: '1.39' old: '1.38' path: src/sys/arch/amiga/dev/wdc_amiga.c pathrev: src/sys/arch/amiga/dev/wdc_amiga.c@1.39 type: modified - new: '1.9' old: '1.8' path: src/sys/arch/amiga/dev/wdc_buddha.c pathrev: src/sys/arch/amiga/dev/wdc_buddha.c@1.9 type: modified - new: '1.3' old: '1.2' path: src/sys/arch/arm/allwinner/awin_wdc.c pathrev: src/sys/arch/arm/allwinner/awin_wdc.c@1.3 type: modified - new: '1.63' old: '1.62' path: src/sys/arch/atari/dev/atari5380.c pathrev: src/sys/arch/atari/dev/atari5380.c@1.63 type: modified - new: '1.28' old: '1.27' path: src/sys/arch/atari/dev/dma.c pathrev: src/sys/arch/atari/dev/dma.c@1.28 type: modified - new: '1.85' old: '1.84' path: src/sys/arch/atari/dev/fd.c pathrev: src/sys/arch/atari/dev/fd.c@1.85 type: modified - new: '1.39' old: '1.38' path: src/sys/arch/atari/dev/wdc_mb.c pathrev: src/sys/arch/atari/dev/wdc_mb.c@1.39 type: modified - new: '1.12' old: '1.11' path: src/sys/arch/atari/include/dma.h pathrev: src/sys/arch/atari/include/dma.h@1.12 type: modified - new: '1.32' old: '1.31' path: src/sys/arch/i386/pnpbios/pciide_pnpbios.c pathrev: src/sys/arch/i386/pnpbios/pciide_pnpbios.c@1.32 type: modified - new: '1.9' old: '1.8' path: src/sys/arch/landisk/dev/wdc_obio.c pathrev: src/sys/arch/landisk/dev/wdc_obio.c@1.9 type: modified - new: '1.28' old: '1.27' path: src/sys/arch/mac68k/obio/wdc_obio.c pathrev: src/sys/arch/mac68k/obio/wdc_obio.c@1.28 type: modified - new: '1.37' old: '1.36' path: src/sys/arch/macppc/dev/kauai.c pathrev: src/sys/arch/macppc/dev/kauai.c@1.37 type: modified - new: '1.60' old: '1.59' path: src/sys/arch/macppc/dev/wdc_obio.c pathrev: src/sys/arch/macppc/dev/wdc_obio.c@1.60 type: modified - new: '1.9' old: '1.8' path: src/sys/arch/mips/adm5120/dev/wdc_extio.c pathrev: src/sys/arch/mips/adm5120/dev/wdc_extio.c@1.9 type: modified - new: '1.28' old: '1.27' path: src/sys/arch/playstation2/dev/wdc_spd.c pathrev: src/sys/arch/playstation2/dev/wdc_spd.c@1.28 type: modified - new: '1.14' old: '1.13' path: src/sys/arch/prep/pnpbus/wdc_pnpbus.c pathrev: src/sys/arch/prep/pnpbus/wdc_pnpbus.c@1.14 type: modified - new: '1.2' old: '0' path: src/sys/dev/ata/TODO.ncq pathrev: src/sys/dev/ata/TODO.ncq@1.2 type: added - new: '1.133' old: '1.132' path: src/sys/dev/ata/ata.c pathrev: src/sys/dev/ata/ata.c@1.133 type: modified - new: '1.106' old: '1.105' path: src/sys/dev/ata/ata_wdc.c pathrev: src/sys/dev/ata/ata_wdc.c@1.106 type: modified - new: '1.44' old: '1.43' path: src/sys/dev/ata/atareg.h pathrev: src/sys/dev/ata/atareg.h@1.44 type: modified - new: '1.44' old: '1.43' path: src/sys/dev/ata/wdvar.h pathrev: src/sys/dev/ata/wdvar.h@1.44 type: modified - new: '1.93' old: '1.92' path: src/sys/dev/ata/atavar.h pathrev: src/sys/dev/ata/atavar.h@1.93 type: modified - new: '1.25' old: '1.24' path: src/sys/dev/ata/files.ata pathrev: src/sys/dev/ata/files.ata@1.25 type: modified - new: '1.23' old: '1.22' path: src/sys/dev/ata/sata_subr.c pathrev: src/sys/dev/ata/sata_subr.c@1.23 type: modified - new: '1.8' old: '1.7' path: src/sys/dev/ata/satafis_subr.c pathrev: src/sys/dev/ata/satafis_subr.c@1.8 type: modified - new: '1.4' old: '1.3' path: src/sys/dev/ata/satafisvar.h pathrev: src/sys/dev/ata/satafisvar.h@1.4 type: modified - new: '1.4' old: '1.3' path: src/sys/dev/ata/satapmpvar.h pathrev: src/sys/dev/ata/satapmpvar.h@1.4 type: modified - new: '1.13' old: '1.12' path: src/sys/dev/ata/satapmp_subr.c pathrev: src/sys/dev/ata/satapmp_subr.c@1.13 type: modified - new: '1.430' old: '1.429' path: src/sys/dev/ata/wd.c pathrev: src/sys/dev/ata/wd.c@1.430 type: modified - new: '1.58' old: '1.57' path: src/sys/dev/ic/ahcisata_core.c pathrev: src/sys/dev/ic/ahcisata_core.c@1.58 type: modified - new: '1.13' old: '1.12' path: src/sys/dev/ic/ahcisatareg.h pathrev: src/sys/dev/ic/ahcisatareg.h@1.13 type: modified - new: '1.18' old: '1.17' path: src/sys/dev/ic/ahcisatavar.h pathrev: src/sys/dev/ic/ahcisatavar.h@1.18 type: modified - new: '1.36' old: '1.35' path: src/sys/dev/ic/mvsata.c pathrev: src/sys/dev/ic/mvsata.c@1.36 type: modified - new: '1.4' old: '1.3' path: src/sys/dev/ic/mvsatareg.h pathrev: src/sys/dev/ic/mvsatareg.h@1.4 type: modified - new: '1.3' old: '1.2' path: src/sys/dev/ic/mvsatavar.h pathrev: src/sys/dev/ic/mvsatavar.h@1.3 type: modified - new: '1.19' old: '1.18' path: src/sys/dev/ic/ninjaata32.c pathrev: src/sys/dev/ic/ninjaata32.c@1.19 type: modified - new: '1.6' old: '1.5' path: src/sys/dev/ic/ninjaata32var.h pathrev: src/sys/dev/ic/ninjaata32var.h@1.6 type: modified - new: '1.34' old: '1.33' path: src/sys/dev/ic/siisata.c pathrev: src/sys/dev/ic/siisata.c@1.34 type: modified - new: '1.10' old: '1.9' path: src/sys/dev/ic/siisatareg.h pathrev: src/sys/dev/ic/siisatareg.h@1.10 type: modified - new: '1.7' old: '1.6' path: src/sys/dev/ic/siisatavar.h pathrev: src/sys/dev/ic/siisatavar.h@1.7 type: modified - new: '1.284' old: '1.283' path: src/sys/dev/ic/wdc.c pathrev: src/sys/dev/ic/wdc.c@1.284 type: modified - new: '1.98' old: '1.97' path: src/sys/dev/ic/wdcvar.h pathrev: src/sys/dev/ic/wdcvar.h@1.98 type: modified - new: '1.60' old: '1.59' path: src/sys/dev/isa/wdc_isa.c pathrev: src/sys/dev/isa/wdc_isa.c@1.60 type: modified - new: '1.32' old: '1.31' path: src/sys/dev/pci/acardide.c pathrev: src/sys/dev/pci/acardide.c@1.32 type: modified - new: '1.27' old: '1.26' path: src/sys/dev/pci/artsata.c pathrev: src/sys/dev/pci/artsata.c@1.27 type: modified - new: '1.39' old: '1.38' path: src/sys/dev/pci/cmdide.c pathrev: src/sys/dev/pci/cmdide.c@1.39 type: modified - new: '1.31' old: '1.30' path: src/sys/dev/pci/cypide.c pathrev: src/sys/dev/pci/cypide.c@1.31 type: modified - new: '1.63' old: '1.62' path: src/sys/dev/pci/pciide_common.c pathrev: src/sys/dev/pci/pciide_common.c@1.63 type: modified - new: '1.28' old: '1.27' path: src/sys/dev/pci/pdcsata.c pathrev: src/sys/dev/pci/pdcsata.c@1.28 type: modified - new: '1.54' old: '1.53' path: src/sys/dev/pci/satalink.c pathrev: src/sys/dev/pci/satalink.c@1.54 type: modified - new: '1.20' old: '1.19' path: src/sys/dev/pci/svwsata.c pathrev: src/sys/dev/pci/svwsata.c@1.20 type: modified - new: '1.85' old: '1.84' path: src/sys/dev/pci/viaide.c pathrev: src/sys/dev/pci/viaide.c@1.85 type: modified - new: '1.125' old: '1.124' path: src/sys/dev/pcmcia/wdc_pcmcia.c pathrev: src/sys/dev/pcmcia/wdc_pcmcia.c@1.125 type: modified - new: '1.124' old: '1.123' path: src/sys/dev/scsipi/atapi_wdc.c pathrev: src/sys/dev/scsipi/atapi_wdc.c@1.124 type: modified - new: '1.159' old: '1.158' path: src/sys/dev/usb/umass.c pathrev: src/sys/dev/usb/umass.c@1.159 type: modified - new: '1.34' old: '1.33' path: src/sys/dev/usb/umass_isdata.c pathrev: src/sys/dev/usb/umass_isdata.c@1.34 type: modified - new: '1.4' old: '1.3' path: src/sys/dev/usb/umass_isdata.h pathrev: src/sys/dev/usb/umass_isdata.h@1.4 type: modified id: 20171007T160533Z.5857491cc51021d5542e71eb64fa9b3385b004d0 log: | Merge support for SATA NCQ (Native Command Queueing) from jdolecek-ncq branch ATA subsystem was changed to support several outstanding commands, and use NCQ xfers if supported by both the controller and the disk, including NCQ error recovery. Set NCQ high priority for BPRIO_TIMECRITICAL xfers if supported. Added FUA support. Done some work towards MP-safe, all ATA code tsleep()/wakeup() replaced by condvars, and switched most code from spl* to mutexes (separate wd(4) and ata channel lock). Introduced new option WD_CHAOS_MONKEY to facilitate testing of error handling, fixed several uncovered issues. Also fixed several problems with kernel dump to wd(4) disk. Tested with ahcisata(4), mvsata(4), siisata(4), piixide(4) on amd64, with and without port multiplier, both disk and ATAPI devices; other drivers and archs mechanically adjusted and compile-tested. NCQ is supported for ahcisata(4) and siisata(4) for any controller, for mvsata(4) only Gen IIe ones for now. Also enabled ATAPI support in mvsata(4). Thanks to Matt Thomas for initial ATA infrastructure patch, and Jonathan A.Kollasch for siisata(4) NCQ changes and general testing. Also fixes PR kern/43169 (wd(4)); and PR kern/11811, PR kern/47041, PR kern/51979 (kernel dump) module: src subject: 'CVS commit: src/sys' unixtime: '1507392333' user: jdolecek