people/sha0/winvblock.git
9 years ago[httpdisk/bus] Add pre-made devices to the bus
Shao Miller [Sat, 8 Jan 2011 07:34:33 +0000 (02:34 -0500)]
[httpdisk/bus] Add pre-made devices to the bus

9 years ago[httpdisk/bus] Delete bus FDO on PnP removal
Shao Miller [Sat, 8 Jan 2011 07:12:41 +0000 (02:12 -0500)]
[httpdisk/bus] Delete bus FDO on PnP removal

If we delete the FDO before returning from handling an
IRP_MJ_PNP:IRP_MN_REMOVE_DEVICE IRP, then the driver's
unload routine will be called if there aren't any more
devices.  That is, we should be able to be unloaded from
Device Manager.

9 years ago[httpdisk/bus] Actually handle the IRPs in commit 6081ace4
Shao Miller [Sat, 8 Jan 2011 03:02:32 +0000 (22:02 -0500)]
[httpdisk/bus] Actually handle the IRPs in commit 6081ace4

And now the bus device installs in Device Manager.

9 years ago[httpdisk/bus] Establish the bus state as started
Shao Miller [Sat, 8 Jan 2011 02:54:19 +0000 (21:54 -0500)]
[httpdisk/bus] Establish the bus state as started

9 years ago[httpdisk] Revert portion of commit 0d63d646
Shao Miller [Sat, 8 Jan 2011 02:49:18 +0000 (21:49 -0500)]
[httpdisk] Revert portion of commit 0d63d646

Not sure why I was trying to handle IRP_MJ_[CREATE|CLOSE]
for the bus.  The WinVBlock driver is almost as simple as
Bo's handler in his driver.

9 years ago[httpdisk] Send a few IRP majors to the bus
Shao Miller [Sat, 8 Jan 2011 02:43:52 +0000 (21:43 -0500)]
[httpdisk] Send a few IRP majors to the bus

IRP_MJ_PNP
IRP_MJ_POWER
IRP_MJ_SYSTEM_CONTROL

9 years ago[httpdisk] Add success debug message to DriverEntry()
Shao Miller [Sat, 8 Jan 2011 02:32:31 +0000 (21:32 -0500)]
[httpdisk] Add success debug message to DriverEntry()

9 years ago[httpdisk] Change DEVICE_BASE_NAME to \HttpDisks
Shao Miller [Sat, 8 Jan 2011 02:28:03 +0000 (21:28 -0500)]
[httpdisk] Change DEVICE_BASE_NAME to \HttpDisks

To avoid an object namespace conflict with the bus. :)

9 years ago[httpdisk/bus] Report bus IRPs
Shao Miller [Sat, 8 Jan 2011 02:24:46 +0000 (21:24 -0500)]
[httpdisk/bus] Report bus IRPs

Though don't exactly handle any, yet.

9 years ago[httpdisk/bus] Implement HttpdiskBusAttach()
Shao Miller [Sat, 8 Jan 2011 01:52:04 +0000 (20:52 -0500)]
[httpdisk/bus] Implement HttpdiskBusAttach()

9 years ago[aoe/bus] Remove unused declarations
Shao Miller [Sat, 8 Jan 2011 01:45:28 +0000 (20:45 -0500)]
[aoe/bus] Remove unused declarations

9 years ago[httpdisk/bus] Initialize the bus FDO device extension
Shao Miller [Sat, 8 Jan 2011 01:42:04 +0000 (20:42 -0500)]
[httpdisk/bus] Initialize the bus FDO device extension

9 years ago[httpdisk] Send bus IRPs to the bus IRP dispatcher
Shao Miller [Sat, 8 Jan 2011 01:37:07 +0000 (20:37 -0500)]
[httpdisk] Send bus IRPs to the bus IRP dispatcher

9 years ago[httpdisk] Use DRIVER_DISPATCH declarations
Shao Miller [Sat, 8 Jan 2011 01:28:39 +0000 (20:28 -0500)]
[httpdisk] Use DRIVER_DISPATCH declarations

For the IRP handlers.  Also rename them and declare
their internal linkage.

9 years ago[httpdisk] Rename DEVICE_EXTENSION to HTTPDISK_S_DEV
Shao Miller [Sat, 8 Jan 2011 00:59:35 +0000 (19:59 -0500)]
[httpdisk] Rename DEVICE_EXTENSION to HTTPDISK_S_DEV

And move it into the header source file.

9 years ago[httpdisk/bus] Use a WVL_S_BUS_T bus
Shao Miller [Sat, 8 Jan 2011 00:47:31 +0000 (19:47 -0500)]
[httpdisk/bus] Use a WVL_S_BUS_T bus

And use its 'Fdo' member for the bus FDO.

9 years ago[httpdisk/bus] Create and delete the bus FDO
Shao Miller [Sat, 8 Jan 2011 00:33:09 +0000 (19:33 -0500)]
[httpdisk/bus] Create and delete the bus FDO

9 years ago[httpdisk] Store the driver object as HttpdiskDriverObj
Shao Miller [Sat, 8 Jan 2011 00:22:57 +0000 (19:22 -0500)]
[httpdisk] Store the driver object as HttpdiskDriverObj

9 years ago[build] Build HTTPDisk.INF file for HTTPDisk driver
Shao Miller [Sat, 8 Jan 2011 00:10:47 +0000 (19:10 -0500)]
[build] Build HTTPDisk.INF file for HTTPDisk driver

9 years ago[httpdisk] Create PDO on WinVBlock bus
Shao Miller [Sat, 8 Jan 2011 00:00:46 +0000 (19:00 -0500)]
[httpdisk] Create PDO on WinVBlock bus

9 years ago[dummy,aoe] Move dummy creation IOCTL setup from AoE
Shao Miller [Sat, 8 Jan 2011 00:00:25 +0000 (19:00 -0500)]
[dummy,aoe] Move dummy creation IOCTL setup from AoE

It's just fine as a library function in dummy.c.

9 years ago[httpdisk/bus] Add debug messages
Shao Miller [Fri, 7 Jan 2011 22:31:24 +0000 (17:31 -0500)]
[httpdisk/bus] Add debug messages

9 years ago[httpdisk] Link with WinVBlock
Shao Miller [Fri, 7 Jan 2011 22:29:57 +0000 (17:29 -0500)]
[httpdisk] Link with WinVBlock

9 years ago[httpdisk] Add bus.c skeleton
Shao Miller [Fri, 7 Jan 2011 21:35:48 +0000 (16:35 -0500)]
[httpdisk] Add bus.c skeleton

Really "bare bones" at this time.

9 years ago[project,httpdisk] Include in project build
Shao Miller [Fri, 7 Jan 2011 20:48:17 +0000 (15:48 -0500)]
[project,httpdisk] Include in project build

9 years ago[httpdisk] Fix deprecation warnings
Shao Miller [Fri, 7 Jan 2011 20:46:09 +0000 (15:46 -0500)]
[httpdisk] Fix deprecation warnings

Use HttpDisk[M|P]alloc() instead of ExAllocatePool().

If Bo's ksocket and/or ktdi ever come out of HTTPDisk,
their references to allocation functions will have to
be changed.

9 years ago[aoe/bus] Use unit detach logic similar to WvBusDevCtlDetach
Shao Miller [Fri, 7 Jan 2011 18:33:38 +0000 (13:33 -0500)]
[aoe/bus] Use unit detach logic similar to WvBusDevCtlDetach

They were originally the same, anyway.

9 years ago[disk/pnp] Use similar removal logic to the dummy device
Shao Miller [Fri, 7 Jan 2011 18:02:30 +0000 (13:02 -0500)]
[disk/pnp] Use similar removal logic to the dummy device

We remove the node on the first IRP_MN_REMOVE_DEVICE and
invalidate the bus relations.  The PnP manager will see
our missing PDO on the re-enumeration, then will send a
second IRP_MN_REMOVE_DEVICE.  Then we free the disk.

9 years ago[dummy] Return back upper drivers' IRP_MJ_PNP
Shao Miller [Fri, 7 Jan 2011 17:21:22 +0000 (12:21 -0500)]
[dummy] Return back upper drivers' IRP_MJ_PNP

STATUS_NOT_SUPPORTED meant that a device relations query
for a bus FDO attached to us (AoE) was not being returned.

9 years ago[disk] Include driver reference in WV_S_DISK_T
Shao Miller [Fri, 7 Jan 2011 17:07:44 +0000 (12:07 -0500)]
[disk] Include driver reference in WV_S_DISK_T

The PDO creation routine needs to pass the correct driver
to IoCreateDevice().

9 years ago[aoe] Bus detach causes thread stop
Shao Miller [Fri, 7 Jan 2011 16:23:43 +0000 (11:23 -0500)]
[aoe] Bus detach causes thread stop

We must stop the thread before returning from
IRP_MJ_PNP:IRP_MN_REMOVE_DEVICE or the PnP manager will
not initite a driver unload.

At last, we unload properly!

9 years ago[aoe/bus] Set the bus state to started
Shao Miller [Fri, 7 Jan 2011 16:01:40 +0000 (11:01 -0500)]
[aoe/bus] Set the bus state to started

9 years ago[dummy] Sanity-check a PDO in WvDummyRemove()
Shao Miller [Fri, 7 Jan 2011 15:01:47 +0000 (10:01 -0500)]
[dummy] Sanity-check a PDO in WvDummyRemove()

This function should be avoided anyway, if possible.

9 years ago[aoe/bus] Don't use AoeBusPdo global
Shao Miller [Fri, 7 Jan 2011 14:56:51 +0000 (09:56 -0500)]
[aoe/bus] Don't use AoeBusPdo global

Use the WVL_S_BUS_T::Pdo, instead.

We don't demand that we are associated with a PDO on the
WinVBlock bus any more.

9 years ago[libbus,driver,dummy] Don't thread the main bus
Shao Miller [Fri, 7 Jan 2011 06:50:16 +0000 (01:50 -0500)]
[libbus,driver,dummy] Don't thread the main bus

*sigh* There was a major problem with the strategy of
enqueueing all IRPs bound for the bus; one cannot return
STATUS_PENDING for just any IRP.

The symptom that led to this realization was: while
performing a driver update for the WinVBlock bus in
Device Manager, an IRP_MN_QUERY_ID was being sent
immediately after an IRP_MN_REMOVE_DEVICE.  This doesn't
appear to make sense until realizing that the PnP
manager most likely took the STATUS_PENDING for the
removal the wrong way; it assumed that the bus FDO would
still be attached for its next IRP, which was actually
intended to be bound for the PDO.

So we don't enqueue any IRPs for the bus any more.  One
of the original reasons for doing so was so that dummy
PDO child devices could be created by the thread.  So
this commit allows for an IOCTL to produce a dummy PDO,
which was on the to-do list, anyway.  The fun of that
is the potential to add arbitrary PDOs from user-land;
arbitrary in the sense of their reported IDs.  It will
be interesting to test the installation of non-existent
hardware and find out what IRPs their function drivers
send down.

The dummy ID generation macro(s) have been changed for
greater automation and aesthetic.  It creates an object
large enough to hold the dummy ID "header" as well as
the WCHAR string data, and initializes the object.  One
can qualify the object as 'const', even.  Quite nice.

Threading was decoupled from the bus library entirely.
One of the other reasons for their association was in
order to keep the list of children race-free.  So now
we have WvlBusLock() and WvlBusUnlock() functions to
assist with race-free iteration.

9 years ago[debug] Change macros and message layout
Shao Miller [Thu, 6 Jan 2011 13:56:51 +0000 (08:56 -0500)]
[debug] Change macros and message layout

This seems simpler.  We used to have #ifs for verbose IRP
debugging.  That' no longer needed.

DBG() could get pretty messy, so now we can choose to
exclude the file, line number, or thread.  Including the
line number depends on including the file.

Also, we exclude the bulk of debug.c from being compiled
if debugging is disabled.

9 years ago[bus] WvBusDevCtlDetach() using WvBusRemoveDev_()
Shao Miller [Thu, 6 Jan 2011 13:13:27 +0000 (08:13 -0500)]
[bus] WvBusDevCtlDetach() using WvBusRemoveDev_()

Since bus IRPs execute in the bus thread's context, we
should use the internal function for a device detach req.

9 years ago[bus,probe] Change when boot disks are probed
Shao Miller [Thu, 6 Jan 2011 04:43:46 +0000 (23:43 -0500)]
[bus,probe] Change when boot disks are probed

Now they will be probed for at every bus FDO->PDO
attach operation; could be multiple times in one
session.

9 years ago[libbus] Fix uninitilized nodes_changed use
Shao Miller [Thu, 6 Jan 2011 04:42:15 +0000 (23:42 -0500)]
[libbus] Fix uninitilized nodes_changed use

9 years ago[driver,bus] Enqueue all bus IRPs, FDO attach reqs.
Shao Miller [Thu, 6 Jan 2011 00:36:01 +0000 (19:36 -0500)]
[driver,bus] Enqueue all bus IRPs, FDO attach reqs.

To [try] to simplify things a bit, we now enqueue all IRPs
bound for the WinVBlock bus on the bus thread.  Once in
there, we needn't worry about about race conditions over
bus nodes or bus state.  Bus IRPs are not that frequent,
so I don't think that we'll suffer from a major bottle-neck.

Some code has been shuffled around, too.  WvBusEstablish()
and WvBusCleanup() are responsible for the FDO creation
and destruction, respectively.

The bus thread is responsible for attaching/detaching the
FDO to a PDO.  You can disable the bus in Device Manager,
then add a new bus, and it will become the only bus.  The
FDO can "hop," so to speak.

This commit even survived a little stress-testing!

9 years ago[bus,aoe] Make threads responsible for bus FDO removal
Shao Miller [Wed, 5 Jan 2011 21:59:14 +0000 (16:59 -0500)]
[bus,aoe] Make threads responsible for bus FDO removal

The bus library probably shouldn't assume control of FDO
association and destruction at removal-time.

9 years ago[libbus/pnp] Set Linked member for each node on bus removal
Shao Miller [Wed, 5 Jan 2011 21:30:24 +0000 (16:30 -0500)]
[libbus/pnp] Set Linked member for each node on bus removal

9 years ago[util] Add an icon
Shao Miller [Wed, 5 Jan 2011 20:50:42 +0000 (15:50 -0500)]
[util] Add an icon

It'd also be nice to give .SYS files icons.

9 years ago[bus,dummy,libbus] Handle dummy PDO removal
Shao Miller [Wed, 5 Jan 2011 19:51:07 +0000 (14:51 -0500)]
[bus,dummy,libbus] Handle dummy PDO removal

The bus library can unlink a node, but should not be
responsible for deleting the corresponding PDO nor
for freeing associated resources.  A driver can test
for removal by checking the Linked member of the
WVL_S_BUS_NODE that is associated with the device.

This allows for the AoE bus to be uninstalled from
Device Manager without crashing!  What was happening
was that:
- The AoE bus got IRP_MN_REMOVE_DEVICE
  - It passed it on to the PDO
    - The dummy PDO handler unlinked the node and
      deleted the device.
    - It also triggered a re-enumeration of the
      WinVBlock bus.
- AoE shutdown
- The re-enumeration of the WinVBlock bus would find
  the PDO missing and send IRP_MN_REMOVE_DEVICE.
- The device was already deleted!

So now we merely unlink on the first removal IRP,
then delete the PDO on the second IRP, which will be
triggered by bus re-enumeration.

9 years ago[aoe] Shuffle code around in DriverEntry() and AoeUnload()
Shao Miller [Wed, 5 Jan 2011 13:25:35 +0000 (08:25 -0500)]
[aoe] Shuffle code around in DriverEntry() and AoeUnload()

Now we use the new AoeCleanup_() for cleaning up items common
to DriverEntry() and AoeUnload().

Establish the bus before the thread that handles it.  Heh.
Fixed a duplicate AoeBusFree() call.

Changed the thread-stop'n'wait logic to resemble libthread's.

Renamed AoeUnload() to AoeUnload_().

9 years ago[aoe] More cosmetic changes
Shao Miller [Wed, 5 Jan 2011 13:09:05 +0000 (08:09 -0500)]
[aoe] More cosmetic changes

9 years ago[driver] Miscellaneous grouped memory allocation functions
Shao Miller [Wed, 5 Jan 2011 04:47:00 +0000 (23:47 -0500)]
[driver] Miscellaneous grouped memory allocation functions

See their comments for details.  Inspired by the grouped work
item tag allocations and grouped frees in the AoE driver.

A better strategy than RtlCopyMemory() might be to allocate
up to the nearest multiple of 'sizeof WVL_S_MEM_GROUP_ITEM_'
and use simple assignment.

9 years ago[driver,bus] Shuffle FDO attach around, use WvlThread*
Shao Miller [Tue, 4 Jan 2011 23:24:23 +0000 (18:24 -0500)]
[driver,bus] Shuffle FDO attach around, use WvlThread*

- DriverEntry() will now call WvBusEstablish().
  - WvBusEstablish() will create the bus FDO.
  - It will start the bus thread, which is now WvBusThread().
  - It will optionally create the bus PDO and attach it,
    depending on the PdoDone Registry value.
  - With at least the bus FDO and the bus thread established,
    WvBusEstablish() can return success to DriverEntry().

- WvBusThread() will wait on an internal signal as well as
  the old libbus-included signal.  If libbus is ever
  de-coupled from the "heavy" part of its thread logic, we
  can wait on a single signal.

9 years ago[driver] Remove WvTestThreadTest
Shao Miller [Tue, 4 Jan 2011 21:01:04 +0000 (16:01 -0500)]
[driver] Remove WvTestThreadTest

Testing was successful!

9 years ago[driver] Test stopping WvlThreadTest thread
Shao Miller [Tue, 4 Jan 2011 20:59:53 +0000 (15:59 -0500)]
[driver] Test stopping WvlThreadTest thread

In WvUnload(), we add a call to a new WvTestThreadTestStop()
function (which is purely for testing).  This new function:

- Enqueues itself for WvlThreadTest.
  - Since this is the first item, WvlThreadTest is started!
- The queued item then remembers WvlThreadGetCurrent(),
  since the WvlThreadTest thread is "self-contained".
- The queued item returns control to the original call via
  an event.
- The original call now knows the "contained" thread inside
  WvlThreadTest.  Then it calls WvlThreadSendStopAndWait().
- This last call enqueues a stopper for the thread, then
  waits for the stopper signal, then waits for the thread
  to exit.  (And closes the thread handle.)

9 years ago[driver] Remove WvlThreadTestMsg() test calls
Shao Miller [Tue, 4 Jan 2011 19:45:18 +0000 (14:45 -0500)]
[driver] Remove WvlThreadTestMsg() test calls

Testing of the thread library was successful.

9 years ago[libthread] Lots of good stuff
Shao Miller [Tue, 4 Jan 2011 08:34:53 +0000 (03:34 -0500)]
[libthread] Lots of good stuff

New functions for working with WinVBlock thread
library threads.

I really enjoy this code.

Some testing of this library has been added to the
WinVBlock driver.  These should be removed in a
future commit.

9 years ago[libthread] Introduce libthread
Shao Miller [Mon, 3 Jan 2011 14:26:24 +0000 (09:26 -0500)]
[libthread] Introduce libthread

9 years ago[libbus] Add thread ownership functions
Shao Miller [Mon, 3 Jan 2011 13:30:37 +0000 (08:30 -0500)]
[libbus] Add thread ownership functions

WvlBusRegisterOwnerThread() and WvlBusNotOwned().

9 years ago[aoe] Clear AoeBusPdo after IRP_MN_REMOVE_DEVICE on the bus
Shao Miller [Mon, 3 Jan 2011 13:01:17 +0000 (08:01 -0500)]
[aoe] Clear AoeBusPdo after IRP_MN_REMOVE_DEVICE on the bus

9 years ago[libbus/pnp] Increment reference count on dev. relations
Shao Miller [Mon, 3 Jan 2011 12:58:27 +0000 (07:58 -0500)]
[libbus/pnp] Increment reference count on dev. relations

9 years ago[dummy] Try to delete a dummy device on IRP_MN_REMOVE_DEVICE
Shao Miller [Mon, 3 Jan 2011 12:56:15 +0000 (07:56 -0500)]
[dummy] Try to delete a dummy device on IRP_MN_REMOVE_DEVICE

This isn't exactly right, since WvlBusRemoveNode() will
actually schedule the node removal, but the PDO deletion
could happen first.  We need thread synchronization, here.

9 years ago[debug] Rename Debug_IrpStart to WvlDebugIrpStart
Shao Miller [Mon, 3 Jan 2011 11:49:40 +0000 (06:49 -0500)]
[debug] Rename Debug_IrpStart to WvlDebugIrpStart

And make it a library function.

9 years ago[libbus] Discard queued IRPs for a removed bus
Shao Miller [Mon, 3 Jan 2011 10:22:30 +0000 (05:22 -0500)]
[libbus] Discard queued IRPs for a removed bus

Once an FDO association is gone, any remaining IRPs
need to be cancelled because there's no device!

9 years ago[libbus] Add PDO and bus to debug messages for node add/remove
Shao Miller [Mon, 3 Jan 2011 08:57:42 +0000 (03:57 -0500)]
[libbus] Add PDO and bus to debug messages for node add/remove

9 years ago[libbus/pnp] Disassociate a deleted FDO
Shao Miller [Mon, 3 Jan 2011 08:53:36 +0000 (03:53 -0500)]
[libbus/pnp] Disassociate a deleted FDO

9 years ago[debug] Add thread to debug output
Shao Miller [Mon, 3 Jan 2011 08:46:05 +0000 (03:46 -0500)]
[debug] Add thread to debug output

9 years ago[disk/pnp] Cosmetic changes to debug messages
Shao Miller [Mon, 3 Jan 2011 08:16:12 +0000 (03:16 -0500)]
[disk/pnp] Cosmetic changes to debug messages

9 years ago[dummy] Handle PnP device removal
Shao Miller [Mon, 3 Jan 2011 08:13:07 +0000 (03:13 -0500)]
[dummy] Handle PnP device removal

9 years ago[libbus/pnp] Fix debug messages
Shao Miller [Mon, 3 Jan 2011 07:53:13 +0000 (02:53 -0500)]
[libbus/pnp] Fix debug messages

9 years ago[aoe] Fix search'n'replace failure for abft_ptr
Shao Miller [Mon, 3 Jan 2011 07:16:14 +0000 (02:16 -0500)]
[aoe] Fix search'n'replace failure for abft_ptr

To AOE_SP_ABFT.

9 years ago[debug] Rename xDbgPrint to WvDebugPrint
Shao Miller [Mon, 3 Jan 2011 07:13:52 +0000 (02:13 -0500)]
[debug] Rename xDbgPrint to WvDebugPrint

And some minor, cosmetic touch-ups to the header.

9 years ago[aoe/bus] Remove PDO when appropriate
Shao Miller [Mon, 3 Jan 2011 06:52:38 +0000 (01:52 -0500)]
[aoe/bus] Remove PDO when appropriate

9 years ago[dummy] Add WvDummyRemove function
Shao Miller [Mon, 3 Jan 2011 06:48:45 +0000 (01:48 -0500)]
[dummy] Add WvDummyRemove function

Although it might be a better idea to handle
IRP_MJ_PNP IRP_MN_REMOVE_DEVICE to delete a dummy PDO,
for now we support it with this minimal function.

9 years ago[aoe/bus] Only attach FDO to our PDO on the WinVBlock bus
Shao Miller [Mon, 3 Jan 2011 06:38:24 +0000 (01:38 -0500)]
[aoe/bus] Only attach FDO to our PDO on the WinVBlock bus

9 years ago[dummy] Pass back the created PDO
Shao Miller [Mon, 3 Jan 2011 06:21:24 +0000 (01:21 -0500)]
[dummy] Pass back the created PDO

9 years ago[aoe] Create PDO within AoeBusCreate
Shao Miller [Mon, 3 Jan 2011 06:13:14 +0000 (01:13 -0500)]
[aoe] Create PDO within AoeBusCreate

Instead of within the thread.

9 years ago[dummy] Don't try to grant a PDO without the main bus
Shao Miller [Mon, 3 Jan 2011 05:04:53 +0000 (00:04 -0500)]
[dummy] Don't try to grant a PDO without the main bus

9 years ago[build] Build AoE.INF file for AoE driver
Shao Miller [Mon, 3 Jan 2011 04:59:23 +0000 (23:59 -0500)]
[build] Build AoE.INF file for AoE driver

9 years ago[libbus,driver] Move WvProbeDisks call out of bus library
Shao Miller [Mon, 3 Jan 2011 04:39:38 +0000 (23:39 -0500)]
[libbus,driver] Move WvProbeDisks call out of bus library

Other drivers don't want to probe for WinVBlock disks
for an IRP_MJ_PNP IRP_MN_QUERY_DEVICE_RELATIONS IRP.

9 years ago[bus] Remove dev param from WvBusDevCtl
Shao Miller [Mon, 3 Jan 2011 04:25:48 +0000 (23:25 -0500)]
[bus] Remove dev param from WvBusDevCtl

9 years ago[filedisk] Remove dev param from WvFilediskAttach
Shao Miller [Mon, 3 Jan 2011 04:22:07 +0000 (23:22 -0500)]
[filedisk] Remove dev param from WvFilediskAttach

It was unused.

9 years ago[filedisk/grub4dos] Minor, cosmetic changes
Shao Miller [Mon, 3 Jan 2011 04:14:30 +0000 (23:14 -0500)]
[filedisk/grub4dos] Minor, cosmetic changes

9 years ago[filedisk] Rename filedisk__hot_swap_thread to WvFilediskHotSwapThread
Shao Miller [Mon, 3 Jan 2011 03:39:02 +0000 (22:39 -0500)]
[filedisk] Rename filedisk__hot_swap_thread to WvFilediskHotSwapThread

9 years ago[filedisk] Minor, cosmetic touch-ups
Shao Miller [Mon, 3 Jan 2011 03:33:34 +0000 (22:33 -0500)]
[filedisk] Minor, cosmetic touch-ups

9 years ago[filedisk] Rename filedisk__create to WvFilediskCreate
Shao Miller [Mon, 3 Jan 2011 02:57:31 +0000 (21:57 -0500)]
[filedisk] Rename filedisk__create to WvFilediskCreate

9 years ago[filedisk] Rename filedisk__create_threaded to WvFilediskCreateThreaded
Shao Miller [Mon, 3 Jan 2011 02:55:49 +0000 (21:55 -0500)]
[filedisk] Rename filedisk__create_threaded to WvFilediskCreateThreaded

9 years ago[filedisk] Rename filedisk__module_init to WvFilediskModuleInit
Shao Miller [Mon, 3 Jan 2011 02:53:40 +0000 (21:53 -0500)]
[filedisk] Rename filedisk__module_init to WvFilediskModuleInit

9 years ago[filedisk] Rename filedisk__attach to WvFilediskAttach
Shao Miller [Mon, 3 Jan 2011 02:51:58 +0000 (21:51 -0500)]
[filedisk] Rename filedisk__attach to WvFilediskAttach

9 years ago[bus] Don't handle DeviceTextLocationInformation query
Shao Miller [Sun, 2 Jan 2011 23:48:48 +0000 (18:48 -0500)]
[bus] Don't handle DeviceTextLocationInformation query

The previous logic attempts to return the same text as
BusQueryInstanceId, but we didn't set such anywhere.

9 years ago[driver,bus] Remove WvBusPnp
Shao Miller [Sun, 2 Jan 2011 23:24:15 +0000 (18:24 -0500)]
[driver,bus] Remove WvBusPnp

9 years ago[driver] Special-case IRP_MJ_SCSI for bus
Shao Miller [Sun, 2 Jan 2011 23:19:38 +0000 (18:19 -0500)]
[driver] Special-case IRP_MJ_SCSI for bus

It's not supported.

9 years ago[driver] Special-case IRP_MJ_DEVICE_CONTROL for bus
Shao Miller [Sun, 2 Jan 2011 23:16:26 +0000 (18:16 -0500)]
[driver] Special-case IRP_MJ_DEVICE_CONTROL for bus

9 years ago[driver,bus] Remove WvBusSysCtl
Shao Miller [Sun, 2 Jan 2011 23:10:00 +0000 (18:10 -0500)]
[driver,bus] Remove WvBusSysCtl

9 years ago[driver] Special-case IRP_MJ_[CREATE|CLOSE] for bus
Shao Miller [Sun, 2 Jan 2011 23:06:31 +0000 (18:06 -0500)]
[driver] Special-case IRP_MJ_[CREATE|CLOSE] for bus

9 years ago[driver,bus] Remove WvBusPower
Shao Miller [Sun, 2 Jan 2011 23:02:51 +0000 (18:02 -0500)]
[driver,bus] Remove WvBusPower

9 years ago[libbus] Rename bus.c to libbus.c
Shao Miller [Sun, 2 Jan 2011 22:38:27 +0000 (17:38 -0500)]
[libbus] Rename bus.c to libbus.c

To avoid a warning.  Hmm.

9 years ago[driver,bus] Move WvBus* subjects into new bus.c
Shao Miller [Sun, 2 Jan 2011 22:32:27 +0000 (17:32 -0500)]
[driver,bus] Move WvBus* subjects into new bus.c

But unfortunately, a warning is produced about having
src/winvblock/bus.c and src/winvblock/libbus/bus.c.

9 years ago[driver,dummy] Move dummy device feature into dummy.[c,h]
Shao Miller [Sun, 2 Jan 2011 20:57:50 +0000 (15:57 -0500)]
[driver,dummy] Move dummy device feature into dummy.[c,h]

9 years ago[driver] Drop underscore suffix convention
Shao Miller [Sun, 2 Jan 2011 20:11:57 +0000 (15:11 -0500)]
[driver] Drop underscore suffix convention

Except for functions which have an internal support function.

Also rename some stuff to omit "Driver" in "WvDriver*".

9 years ago[bus->libbus] Rename bus library to libbus
Shao Miller [Sun, 2 Jan 2011 19:41:25 +0000 (14:41 -0500)]
[bus->libbus] Rename bus library to libbus

9 years ago[driver] Remove unused driver__dispatch_func typedef
Shao Miller [Sun, 2 Jan 2011 12:16:21 +0000 (07:16 -0500)]
[driver] Remove unused driver__dispatch_func typedef

9 years ago[driver] Rename driver__unload_ to WvUnload
Shao Miller [Sun, 2 Jan 2011 12:13:17 +0000 (07:13 -0500)]
[driver] Rename driver__unload_ to WvUnload

And use DRIVER_UNLOAD prototype.

It also turns out there's a commit message error in commit
e6b1f651125d1671e48625d7c29a93ff498c6c2a.  It should have read:

[aoe] Rename AoeUnload_ to AoeUnload

9 years ago[driver] Rename driver__dispatch_*_ to WvIrp*
Shao Miller [Sun, 2 Jan 2011 12:09:19 +0000 (07:09 -0500)]
[driver] Rename driver__dispatch_*_ to WvIrp*

And use DRIVER_DISPATCH instead of driver__dispatch_func.

9 years ago[driver] Rename driver__dispatch_not_supported_ to WvIrpNotSupported
Shao Miller [Sun, 2 Jan 2011 12:03:38 +0000 (07:03 -0500)]
[driver] Rename driver__dispatch_not_supported_ to WvIrpNotSupported

And use DRIVER_DISPATCH instead of driver__dispatch_func.