Messages in this thread | | | Date | Wed, 13 Sep 2006 17:21:54 -0700 | From | "Darrick J. Wong" <> | Subject | [PATCH] libsas: move ATA bits into a separate module |
| |
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 <djwong@us.ibm.com> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |