[aoe] Use floating FDO strategy
authorShao Miller <Shao.Miller@yrdsb.edu.on.ca>
Fri, 31 Dec 2010 21:10:49 +0000 (16:10 -0500)
committerShao Miller <Shao.Miller@yrdsb.edu.on.ca>
Fri, 31 Dec 2010 21:10:49 +0000 (16:10 -0500)
commit7b8d945daea3738d3a80c9b17fdf5d1f3b609a2a
tree770486f97e5832ac3ea0a9119bede2fff113ced7
parenta0dcd43cdddb4f7de5a87d98ea3e776c82f6c2a3
[aoe] Use floating FDO strategy

The idea is:

The AoE bus and its FDO will be created during
driver startup.  It won't be attached to any PDO.
Having a device should prevent the AoE driver from
being subsequently unloaded.

The AoE thread will be started during driver startup.
The thread will request a PDO from WinVBlock.

When the PDO is associated with the AoE driver, either
through a CriticalDeviceDatabase entry or via .INF and
the setup API, the "floating" FDO for the AoE bus will
then be attached to the device tree. :)

To do: We need to handle removal and unload.  We should
remove the dummy PDO we requested of WinVBlock.
src/aoe/bus.c
src/aoe/driver.c