ATA mkIII first official patches - please test!

Jon Noack noackjr at alumni.rice.edu
Fri Feb 4 01:44:37 PST 2005


On 02/03/05 14:52, Søren Schmidt wrote:
> ATA-mkIII first official snapshot.
> 
> This is the much rumoured ATA update that I've been working on for some 
> time.
> 
> It contains a number of new things, and lacks a few features of the old 
> code.
> 
> New items include:
> 
> o       ATA is now fully newbus'd and split into modules.
>         This means that on a modern system you just load "atapci and ata"
>         to get the base support, and then one or more of the device
>         subdrivers "atadisk atapicd atapifd atapist ataraid".
>         All can be loaded/unloaded anytime, but for obvious reasons you
>         dont want to unload atadisk when you have mounted filesystems.
> 
> o       The device identify part of the probe has been rewritten to fix
>         the problems with odd devices the old had, and to try to remove
>         so of the long delays some HW could provoke.
> 
> o       SATA devices can be hot inserted/removed and devices will be 
> created/
>         removed in /dev accordingly. NOTE only supported on controllers 
> that
>         has this feature: Promise and Silicon Image for now.
> 
> o       ATA RAID support has been rewritten and and now supports these
>         metadata formats:
>                 "Adaptec HostRAID"
>                 "Highpoint V2 RocketRAID"
>                 "Highpoint V3 RocketRAID"
>                 "Intel MatrixRAID"
>                 "Integrated Technology Express"
>                 "LSILogic V2 MegaRAID"
>                 "LSILogic V3 MegaRAID"
>                 "Promise FastTrak"
>                 "Silicon Image Medley"
> 
> o       The reinit code has been worked over to be much more robust.
> 
> o       The timeout code has been overhauled for races.
> 
> o       Lots of fixes for bugs found while doing the modulerization and
>         reviewing the old code.
> 
> 
> Missing features form current ATA:
> 
> o       atapi-cd no longer has support for ATAPI changers. Todays its
>         much cheaper and alot faster to copy those CD images to disk
>         and serve them from there. Besides they dont seem to be made
>         anymore, maybe for that exact reason.
> 
> o       ATA RAID can only read metadata not write them. This means that
>         arrays can be picked up from the BIOS, but they cannot be created
>         from FreeBSD. This is being worked on for the final release as is
>         RAID5 support for Promise/Highpoing/SiI controllers.
> 
> o       The atapi-cam author has been informed and has had early access
>         to this work but so far atapicam is not supported with these
>         changes. However I do have my own atacam that puts both ATA and 
> ATAPI
>         devices under CAM, but its really just academic at this point.
> 
> And then there all the things that I've happily forgotten about :)
> 
> The snapshot is available as a patch for RELENG_5 and for CURRENT, and
> a common tarfile of the new ATA code.
> 
> http://people.freebsd.org/~sos/ata-mk3j.diff-releng5.gz
> http://people.freebsd.org/~sos/ata-mk3j.diff-current.gz
> http://people.freebsd.org/~sos/ata-mk3j.tar.gz
> 
> Both patches and the tarfile is relative to /usr/src.
> You might want to remove the contents of sys/dev/ata/ before unpacking
> the tarfile.
> 
> No changes are needed to your config file, unless you want ATA as modules.
> 
> As usual, even if it works on all the HW I have here in the lab, thats by
> far not the same as it works on YOUR system. So use glowes and safety shoes
> and if it breaks I dont want the pieces, but would like to hear the nifty
> details on how exactly it got that way :)
> 
> Enjoy!

Running RELENG_5 on a dual P3 machine (Abit VP6).  I am using the 
onboard HighPoint HPT370 and had both channels of the onboard VIA 
82C686B disabled in the BIOS.  It hung solidly during boot attempting to 
probe the VIA controller (detected a GENERIC IDE controller on isa0 or 
something like that).  When I enabled the primary channel on the VIA in 
the BIOS, it zipped right through the boot like normal.  Other than that 
hang, I have not noticed any problems during the course of normal 
(albeit limited) usage.  Some quick dd runs with bs=2048 indicated 
53MB/s read and 45MB/s write with a single Hitachi 7K250 drive.

It's not a big deal to leave the VIA controller enabled (it doesn't 
share interrupts even without APIC), but ideally it should be ignored 
when disabled (ACPI issue?).  If you'd like me to do more, let me know.

Jon


More information about the freebsd-stable mailing list