Hi all,
Per James Bottomley's request, I've moved all the libsas SATA support
code into a separate module, named sas_ata. To satisfy his further
requirement that libsas not require libata (and vice versa), ata_sas
maintains fixed function pointer tables to various required functions
within libsas and libata. Unfortunately, this means that libsas and
libata both require sas_ata, but sas_ata is smaller than libata.
Unloads of libata/libsas at inopportune moments are prevented by
increasing the refcounts on both modules whenever libsas detects a SATA
device (and decreasing it when the device goes away, of course). If the
module is removed from the .config, then all of hooks into libsas/libata
should go away.
This is a rough-cut at separating out the ATA code; please let me know
what I can improve. At the moment, I can load and talk to SATA disks
with the module enabled, as well as watch nothing happen if the module
is not config'd in.
The patch is a bit large, so here's where it lives:
http://sweaglesw.net/~djwong/docs/sas-ata_2.patch
Thanks for any feedback that you can provide!
--D
Signed-off-by: Darrick J. Wong <[email protected]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]