people/sha0/winvblock.git
9 years ago[project] Development cycle binaries for today master
Shao Miller [Mon, 24 Jan 2011 04:44:14 +0000 (23:44 -0500)]
[project] Development cycle binaries for today

9 years ago[filedisk/grub4dos] Rename filedisk_grub4dos__find()
Shao Miller [Sun, 23 Jan 2011 17:20:40 +0000 (12:20 -0500)]
[filedisk/grub4dos] Rename filedisk_grub4dos__find()

To WvFilediskG4dFind().

9 years ago[debug] Rename Debug_Initialize(), register bug-check...
Shao Miller [Sun, 23 Jan 2011 17:00:27 +0000 (12:00 -0500)]
[debug] Rename Debug_Initialize(), register bug-check...

...call-back routine to display evidence of life.

We also save the last DBG() message (minus variable args)
in a global so that we can observe it from WinDbg.  Why?
QEmu (on Windows)'s serial feature seems to limit us with
WinDbg...  If the Windows kernel doesn't speak to WinDbg
very soon, or apparently if the keyboard has been polled,
QEmu doesn't seem to establish the WinDbg connection until
an actual bug-check.  That means we can't see any DBG()
messages at all, which is highly annoying.  At least we
can now inspect the most recent DBG() message. *sigh*

9 years ago[project] Quick development release #2 (today)
Shao Miller [Sat, 22 Jan 2011 15:40:59 +0000 (10:40 -0500)]
[project] Quick development release #2 (today)

For other people at reboot.pro to test.

9 years ago[filedisk/grub4dos] Add WvFilediskCheckDiskMatchIsoSig_()
Shao Miller [Sat, 22 Jan 2011 15:37:50 +0000 (10:37 -0500)]
[filedisk/grub4dos] Add WvFilediskCheckDiskMatchIsoSig_()

This cheap test for an appropriate backing disk simply
reads where the first ISO9660 volume descriptor would be
and checks for the presence of the "CD001" signature in a
particular field.  Sector-mapped .ISOs from GRUB4DOS
should now be available.

9 years ago[filedisk/grub4dos] Add WvFilediskG4dCheckDiskMatchMbrSig_()
Shao Miller [Sat, 22 Jan 2011 14:14:35 +0000 (09:14 -0500)]
[filedisk/grub4dos] Add WvFilediskG4dCheckDiskMatchMbrSig_()

This cheap test for an appropriate backing disk simply
looks for the presence of the MBR signature at the
sector on the potential backing disk where the disk
image would be expected to start.

9 years ago[filedisk/grub4dos] Split .VHD checking out into...
Shao Miller [Sat, 22 Jan 2011 13:59:07 +0000 (08:59 -0500)]
[filedisk/grub4dos] Split .VHD checking out into...

...its own function.  We can use multiple checks for
finding the right backing disk, based on the media type.

9 years ago[project] Quick development release
Shao Miller [Sat, 22 Jan 2011 12:55:55 +0000 (07:55 -0500)]
[project] Quick development release

For other people at reboot.pro to test.

9 years ago[filedisk/grub4dos] Rename check_disk_match()...
Shao Miller [Sat, 22 Jan 2011 12:49:41 +0000 (07:49 -0500)]
[filedisk/grub4dos] Rename check_disk_match()...

...to WvFilediskG4dCheckDiskMatch_().

9 years ago[filedisk/grub4dos] Pend WvFilediskG4dIo_
Shao Miller [Sat, 22 Jan 2011 12:47:51 +0000 (07:47 -0500)]
[filedisk/grub4dos] Pend WvFilediskG4dIo_

If we attempt to perform ZwReadFile() in a thread
context where there is already a read happening
(such as when Windows' SETUPDD is attempting to
mount our disk), then we will deadlock.  So we
pend the IRP and execute it within our filedisk's
thread's context.  This probably has to do with IRQL.

9 years ago[filedisk/grub4dos] Return STATUS_DEVICE_NOT_READY...
Shao Miller [Sat, 22 Jan 2011 12:38:45 +0000 (07:38 -0500)]
[filedisk/grub4dos] Return STATUS_DEVICE_NOT_READY...

...instead of STATUS_NO_MEDIA_IN_DEVICE when we haven't
yet established a backing disk for a sector-mapped disk.

9 years ago[filedisk/grub4dos] Fix uninitialized array
Shao Miller [Sat, 22 Jan 2011 11:18:50 +0000 (06:18 -0500)]
[filedisk/grub4dos] Fix uninitialized array

The G4D sector-mapped-disk-to-filename association
array was not initialized to all-zero, but code tested
for a non-NULL file-path pointer.  D'oh.

9 years ago[project] Include binaries in git for dev releases
Shao Miller [Thu, 20 Jan 2011 14:06:59 +0000 (09:06 -0500)]
[project] Include binaries in git for dev releases

I might as well offer the checked development builds at
the end of each cycle where I push to the Etherboot
project's hosted WinVBlock repository (courtesy of that
project's leader, Marty Connor) as well as GitHub's
hosted WinVBlock repository (courtesy of... GitHub).

Then the fine booting enthusiasts at reboot.pro
(formerly Boot-Land) can download recent work from a
few more sources than just that forum's downloads.

9 years ago[filedisk] Add impersonation support for network files
Shao Miller [Thu, 20 Jan 2011 04:35:02 +0000 (23:35 -0500)]
[filedisk] Add impersonation support for network files

It should now be possible to attach a file-backed disk to
a file on a network share, assuming the share has been
mapped to a drive letter and assuming permissions allow.

A to-do item would be to allow attaching read-only media
(such as optical discs) without trying for write
permissions on the file.

As a bonus, this commit means that user "User" can't
open files belonging to user "Administrator".  That is
a big security win and something that was pretty bad
before now.

Some re-ordering of functions and function comments for
other filedisk functions were added, too.

9 years ago[libthread] WvlThreadStart() makes WvlThreadStateStarted
Shao Miller [Wed, 19 Jan 2011 04:01:48 +0000 (23:01 -0500)]
[libthread] WvlThreadStart() makes WvlThreadStateStarted

The function probably shouldn't return to the caller until
the started thread is actually ready for work.  It's no
longer a responsibility of a thread routine to set its
state to WvlThreadStateStarted; WvlThreadStart() will now
take care of that.

9 years ago[filedisk] Make all filedisks threaded
Shao Miller [Tue, 18 Jan 2011 13:24:06 +0000 (08:24 -0500)]
[filedisk] Make all filedisks threaded

We don't have any control over how long it will take
for file I/O to complete (network share, for example),
so we will pend all SCSI reads/writes and each filedisk's
thread will complete them.

Hot-swapping a sector-mapped disk to a file-backed disk
for any number of disks is done from a single, special
thread.  Since GRUB4DOS is the only case where such info
is passed, GRUB4DOS is the only caller for the function
which starts up this special thread.  It's really quite
messy right now and needs a major clean-up.

The reason why the hot-swapping thread is its own thread
is to avoid the dead-lock where NTFS is trying to mount
a partition, then if the same thread tries to open a
file (to test for an appropriate file-backing) on an
NTFS volume, NTFS is already "busy".

The unfortunate thing is that the hot-swapping thread
doesn't guarantee a file lock as early as possible.
This can be improved, some day.

9 years ago[filedisk,ramdisk] Set the ParentBus earlier
Shao Miller [Mon, 17 Jan 2011 00:02:54 +0000 (19:02 -0500)]
[filedisk,ramdisk] Set the ParentBus earlier

WvBusAddDev() calls WvlBusAddNode(), which will trigger
a device relations query on the bus before WvBusAddDev()
returns.  We must set the WVL_S_DISK_T::ParentBus
member a bit earlier so that when the disk is queried
for its capabilties, it is able to query the parent bus.

9 years ago[util] Spoof types for #include to succeed
Shao Miller [Sun, 16 Jan 2011 22:25:38 +0000 (17:25 -0500)]
[util] Spoof types for #include to succeed

This is a temporary hack and needs to be fixed.

9 years ago[build] Build httpdisk.exe with makeutils.bat
Shao Miller [Sun, 16 Jan 2011 22:20:14 +0000 (17:20 -0500)]
[build] Build httpdisk.exe with makeutils.bat

9 years ago[httpdisk_util] Work with bus device
Shao Miller [Sun, 16 Jan 2011 22:10:07 +0000 (17:10 -0500)]
[httpdisk_util] Work with bus device

Instead of with a particular HTTPDisk.

9 years ago[httpdisk] Handle IOCTL_HTTP_DISK_DISCONNECT
Shao Miller [Sun, 16 Jan 2011 17:42:26 +0000 (12:42 -0500)]
[httpdisk] Handle IOCTL_HTTP_DISK_DISCONNECT

For disconnecting HTTPDisk PDOs from the bus.

Also added a check during disk thread termination to
disconnect the HTTPDisk.

Also moved HttpDiskCreateDevice() out of INIT-section
code, so it would be available at all times.

9 years ago[httpdisk/bus] Handle IOCTL_HTTP_DISK_CONNECT
Shao Miller [Sat, 15 Jan 2011 05:57:30 +0000 (00:57 -0500)]
[httpdisk/bus] Handle IOCTL_HTTP_DISK_CONNECT

For creation of new HTTPDisks.  It works!

9 years ago[httpdisk] Change 'return' to 'break' in HttpDiskThread()
Shao Miller [Sat, 15 Jan 2011 05:12:33 +0000 (00:12 -0500)]
[httpdisk] Change 'return' to 'break' in HttpDiskThread()

Oops.  We don't wish to terminate the thread after a SCSI IRP.

9 years ago[httpdisk] Use WinVBlock disk library for SCSI IRPs
Shao Miller [Mon, 10 Jan 2011 08:33:00 +0000 (03:33 -0500)]
[httpdisk] Use WinVBlock disk library for SCSI IRPs

And tie the I/O routine to the new HttpdiskIo_().

9 years ago[httpdisk] Use WinVBlock disk library for PnP IRPs
Shao Miller [Mon, 10 Jan 2011 07:07:39 +0000 (02:07 -0500)]
[httpdisk] Use WinVBlock disk library for PnP IRPs

9 years ago[disk] Rename WV_S_DISK_OPS to WVL_S_DISK_OPS
Shao Miller [Mon, 10 Jan 2011 06:39:30 +0000 (01:39 -0500)]
[disk] Rename WV_S_DISK_OPS to WVL_S_DISK_OPS

9 years ago[disk] Rename WV_F_DISK_CLOSE to WVL_F_DISK_CLOSE
Shao Miller [Mon, 10 Jan 2011 06:38:01 +0000 (01:38 -0500)]
[disk] Rename WV_F_DISK_CLOSE to WVL_F_DISK_CLOSE

9 years ago[disk] Rename WV_F_DISK_MAX_XFER_LEN...
Shao Miller [Mon, 10 Jan 2011 06:36:33 +0000 (01:36 -0500)]
[disk] Rename WV_F_DISK_MAX_XFER_LEN...

to WVL_F_DISK_MAX_XFER_LEN.

9 years ago[disk] Rename WV_S_DISK_T to WVL_S_DISK_T
Shao Miller [Mon, 10 Jan 2011 06:32:14 +0000 (01:32 -0500)]
[disk] Rename WV_S_DISK_T to WVL_S_DISK_T

9 years ago[disk,aoe,filedisk,ramdisk] Remove Dev member
Shao Miller [Mon, 10 Jan 2011 06:26:06 +0000 (01:26 -0500)]
[disk,aoe,filedisk,ramdisk] Remove Dev member

At last!  The disk library should no longer depend on
anything else in the WinVBlock driver!

9 years ago[disk,libdisk] Split more non-library out of library
Shao Miller [Mon, 10 Jan 2011 06:11:48 +0000 (01:11 -0500)]
[disk,libdisk] Split more non-library out of library

Although perhaps a bit confusing, driver.h declares
non-library code from both bus.c and disk.c, while
bus.h and disk.h declare libbus and libdisk code.

9 years ago[driver,disk] Move some disk code into disk.c
Shao Miller [Mon, 10 Jan 2011 02:57:23 +0000 (21:57 -0500)]
[driver,disk] Move some disk code into disk.c

A new source file for WinVBlock driver disk code.

9 years ago[disk->libdisk] Continue librarization process
Shao Miller [Mon, 10 Jan 2011 02:48:30 +0000 (21:48 -0500)]
[disk->libdisk] Continue librarization process

9 years ago[filedisk,ramdisk] Remove unused *__get_ptr() macros
Shao Miller [Mon, 10 Jan 2011 02:39:55 +0000 (21:39 -0500)]
[filedisk,ramdisk] Remove unused *__get_ptr() macros

9 years ago[disk/pnp] Independence from WV_S_DISK_T
Shao Miller [Mon, 10 Jan 2011 02:34:05 +0000 (21:34 -0500)]
[disk/pnp] Independence from WV_S_DISK_T

At long last.  This involved tracking state in the disk
structure with WV_E_DISK_STATE, introducing WvDiskPnp()
for the IRP major function handling tables, and renaming
disk_pnp__dispatch() to WvlDiskPnp().

Oh, and an item on a to-do list was simultaneously
addressed: Don't do anything special on IRP_MJ_PNP:
IRP_MN_REMOVE_DEVICE except note the state.  PDOs should
not disappear unless detached by the user-land utility
or possibly other internal functions, but we should just
leave them intact from Device Manager / SetupAPI functions.

9 years ago[disk] Use new PnpQueryDevText member of WV_S_DISK_T
Shao Miller [Mon, 10 Jan 2011 01:59:49 +0000 (20:59 -0500)]
[disk] Use new PnpQueryDevText member of WV_S_DISK_T

To satisfy IRP_MJ_PNP:IRP_MN_QUERY_DEVICE_TEXT.

9 years ago[disk] Use new PnpQueryId member of WV_S_DISK_T
Shao Miller [Mon, 10 Jan 2011 00:17:06 +0000 (19:17 -0500)]
[disk] Use new PnpQueryId member of WV_S_DISK_T

To satisfy IRP_MJ_PNP:IRP_MN_QUERY_ID.

This breaks the IRP_MN_QUERY_DEVICE_TEXT handling in
disk_pnp__query_dev_text_() (for now).

9 years ago[disk] New ParentBus member
Shao Miller [Sun, 9 Jan 2011 22:53:22 +0000 (17:53 -0500)]
[disk] New ParentBus member

Which allows for disk_pnp__query_capabilities_() to
become independent of WV_S_DEV_T and so it is renamed
to WvlDiskPnpQueryCapabilities_().

9 years ago[aoe] Use new Pdo member in AOE_S_DISK
Shao Miller [Sun, 9 Jan 2011 22:37:53 +0000 (17:37 -0500)]
[aoe] Use new Pdo member in AOE_S_DISK

Instead of the Self member of WV_S_DEV_T.

9 years ago[aoe] Use new Boot member of AOE_S_DISK
Shao Miller [Sun, 9 Jan 2011 22:13:04 +0000 (17:13 -0500)]
[aoe] Use new Boot member of AOE_S_DISK

Instead of the one in WV_S_DEV_T.

9 years ago[aoe] Use new BusNode member of AOE_S_DISK
Shao Miller [Sun, 9 Jan 2011 22:10:20 +0000 (17:10 -0500)]
[aoe] Use new BusNode member of AOE_S_DISK

Instead of the one in WV_S_DEV_T.

9 years ago[aoe] AoeBusAddDev() now takes an AOE_SP_DISK
Shao Miller [Sun, 9 Jan 2011 22:02:14 +0000 (17:02 -0500)]
[aoe] AoeBusAddDev() now takes an AOE_SP_DISK

9 years ago[aoe] Move AOE_S_DISK_ into header
Shao Miller [Sun, 9 Jan 2011 21:50:40 +0000 (16:50 -0500)]
[aoe] Move AOE_S_DISK_ into header

And remove the underscore suffix from its type name.

9 years ago[aoe] Move AOE_E_SEARCH_STATE_ into header
Shao Miller [Sun, 9 Jan 2011 21:42:29 +0000 (16:42 -0500)]
[aoe] Move AOE_E_SEARCH_STATE_ into header

And remove the underscore suffix from its type name
and its enumeration values.

9 years ago[aoe] Remove unused 'prev_free' member
Shao Miller [Sun, 9 Jan 2011 21:37:59 +0000 (16:37 -0500)]
[aoe] Remove unused 'prev_free' member

9 years ago[disk,aoe,ramdisk,filedisk] Remove unused 'tracking' member
Shao Miller [Sun, 9 Jan 2011 21:27:32 +0000 (16:27 -0500)]
[disk,aoe,ramdisk,filedisk] Remove unused 'tracking' member

9 years ago[disk,aoe] Move SpinLock and SearchEvent member into AoE
Shao Miller [Sun, 9 Jan 2011 21:25:17 +0000 (16:25 -0500)]
[disk,aoe] Move SpinLock and SearchEvent member into AoE

At long last.

9 years ago[disk,aoe,filedisk,ramdisk] Move Dev back out of WV_S_DISK_T
Shao Miller [Sun, 9 Jan 2011 21:02:05 +0000 (16:02 -0500)]
[disk,aoe,filedisk,ramdisk] Move Dev back out of WV_S_DISK_T

But a pointer place-holder remains (for now).

9 years ago[disk] Remove Init member from WV_S_DISK_T
Shao Miller [Sun, 9 Jan 2011 20:42:23 +0000 (15:42 -0500)]
[disk] Remove Init member from WV_S_DISK_T

Disk providers should be responsible for initialization.

9 years ago[disk/pnp,driver] More independence from WV_S_DEV_T
Shao Miller [Sun, 9 Jan 2011 20:34:29 +0000 (15:34 -0500)]
[disk/pnp,driver] More independence from WV_S_DEV_T

Including WvDiskPnp() for IRP major function handling tables.

9 years ago[disk/scsi] Independence from WV_S_DEV_T
Shao Miller [Sun, 9 Jan 2011 14:15:35 +0000 (09:15 -0500)]
[disk/scsi] Independence from WV_S_DEV_T

For the sake of librarization.

9 years ago[disk/scsi] Remove more WV_S_DEV_T dependence
Shao Miller [Sun, 9 Jan 2011 13:46:29 +0000 (08:46 -0500)]
[disk/scsi] Remove more WV_S_DEV_T dependence

9 years ago[aoe] Remove more WV_S_DEV_T usage
Shao Miller [Sun, 9 Jan 2011 13:32:20 +0000 (08:32 -0500)]
[aoe] Remove more WV_S_DEV_T usage

9 years ago[aoe] Avoid disk__get_ptr and WvDevFromDevObj...
Shao Miller [Sun, 9 Jan 2011 13:02:15 +0000 (08:02 -0500)]
[aoe] Avoid disk__get_ptr and WvDevFromDevObj...

during node iteration for a "show" request.

9 years ago[disk] Use WV_S_DEV_T-independent I/O routine
Shao Miller [Sun, 9 Jan 2011 12:54:23 +0000 (07:54 -0500)]
[disk] Use WV_S_DEV_T-independent I/O routine

9 years ago[disk] Introduce I/O function prototype without...
Shao Miller [Sun, 9 Jan 2011 12:27:04 +0000 (07:27 -0500)]
[disk] Introduce I/O function prototype without...

use of WV_S_DEV_T.

9 years ago[aoe] Wrap an I/O routine taking a disk instead of dev
Shao Miller [Sun, 9 Jan 2011 12:16:08 +0000 (07:16 -0500)]
[aoe] Wrap an I/O routine taking a disk instead of dev

9 years ago[aoe] Use AOE_SP_DISK_ instead of WV_SP_DEV_T for...
Shao Miller [Sun, 9 Jan 2011 12:02:20 +0000 (07:02 -0500)]
[aoe] Use AOE_SP_DISK_ instead of WV_SP_DEV_T for...

work tags and disk searches.

9 years ago[disk] Remove unused disk__create()
Shao Miller [Sun, 9 Jan 2011 11:29:47 +0000 (06:29 -0500)]
[disk] Remove unused disk__create()

9 years ago[disk/dev_ctl,driver] Rename disk_dev_ctl__dispatch()
Shao Miller [Sun, 9 Jan 2011 11:21:51 +0000 (06:21 -0500)]
[disk/dev_ctl,driver] Rename disk_dev_ctl__dispatch()

To WvlDiskDevCtl().  It was also made independent of
WV_S_DEV_T, so that meant adding a WvDiskDevCtl()
function to the WinVBlock driver, in order for its
IRP major function handler tables to have something to
work with.

9 years ago[disk/dev_ctl] Change disk_dev_ctl__scsi_get_address_
Shao Miller [Sun, 9 Jan 2011 10:41:33 +0000 (05:41 -0500)]
[disk/dev_ctl] Change disk_dev_ctl__scsi_get_address_

To WvlDiskDevCtlScsiGetAddr().
Now independent from WV_S_DEV_T.

9 years ago[device] Remove DevNum member
Shao Miller [Sun, 9 Jan 2011 10:38:27 +0000 (05:38 -0500)]
[device] Remove DevNum member

Disks can use WvlDiskUnitNum(), instead.  For other
devices, use WvlBusGetNodeNum().

9 years ago[disk] Introduce UnitNum operation
Shao Miller [Sun, 9 Jan 2011 10:23:27 +0000 (05:23 -0500)]
[disk] Introduce UnitNum operation

To fetch the unit number.  A disk driver should implement it.

9 years ago[disk/dev_ctl] Change disk_dev_ctl__get_geom_()
Shao Miller [Sun, 9 Jan 2011 09:37:42 +0000 (04:37 -0500)]
[disk/dev_ctl] Change disk_dev_ctl__get_geom_()

To WvlDiskDevCtlGetGeom_().
Now independent from WV_S_DEV_T.

9 years ago[disk/dev_ctl] Change disk_dev_ctl__storage_query_prop_()
Shao Miller [Sun, 9 Jan 2011 09:33:16 +0000 (04:33 -0500)]
[disk/dev_ctl] Change disk_dev_ctl__storage_query_prop_()

To WvlDiskDevCtlStorageQueryProp_().
Now independent from WV_S_DEV_T.

9 years ago[disk/dev_ctl] Get the disk pointer in the dispatcher
Shao Miller [Sun, 9 Jan 2011 09:24:57 +0000 (04:24 -0500)]
[disk/dev_ctl] Get the disk pointer in the dispatcher

9 years ago[disk/pnp] Don't call IoDeleteDevice()
Shao Miller [Sun, 9 Jan 2011 08:55:16 +0000 (03:55 -0500)]
[disk/pnp] Don't call IoDeleteDevice()

Now that RAM, file-backed, and AoE disks all store their
data in the device object's extension, we only need to
free that data from one place: The particular disk's
WV_S_DEV_T::Ops.Free() implementation.

9 years ago[aoe] Change AoeDiskCreate_ to AoeDiskCreatePdo_()
Shao Miller [Sun, 9 Jan 2011 08:50:29 +0000 (03:50 -0500)]
[aoe] Change AoeDiskCreate_ to AoeDiskCreatePdo_()

And create the PDO.  The aBFT scanner and the AoE "mount"
IRP handler are responsible for calling it, initializing
the AoE disk, then adding it to the AoE bus.

9 years ago[aoe] Use disk IRP handlers
Shao Miller [Sun, 9 Jan 2011 08:03:06 +0000 (03:03 -0500)]
[aoe] Use disk IRP handlers

9 years ago[disk] Export disk IRP handlers as library functions
Shao Miller [Sun, 9 Jan 2011 07:50:47 +0000 (02:50 -0500)]
[disk] Export disk IRP handlers as library functions

9 years ago[aoe] Don't track AoE disks globally
Shao Miller [Sun, 9 Jan 2011 07:40:37 +0000 (02:40 -0500)]
[aoe] Don't track AoE disks globally

9 years ago[aoe] Put the WV_S_DISK_T inside AOE_S_DISK_
Shao Miller [Sun, 9 Jan 2011 07:38:53 +0000 (02:38 -0500)]
[aoe] Put the WV_S_DISK_T inside AOE_S_DISK_

9 years ago[aoe/bus] Allow the caller to create the PDO
Shao Miller [Sun, 9 Jan 2011 07:30:36 +0000 (02:30 -0500)]
[aoe/bus] Allow the caller to create the PDO

9 years ago[ramdisk] Use RAM disk PDO creation function
Shao Miller [Sun, 9 Jan 2011 03:07:02 +0000 (22:07 -0500)]
[ramdisk] Use RAM disk PDO creation function

ramdisk__create() replaced by WvRamdiskCreatePdo().

9 years ago[ramdisk/memdisk] Note the media type before creation
Shao Miller [Sun, 9 Jan 2011 02:51:25 +0000 (21:51 -0500)]
[ramdisk/memdisk] Note the media type before creation

9 years ago[ramdisk/grub4dos] Note the media type before creation
Shao Miller [Sun, 9 Jan 2011 02:46:40 +0000 (21:46 -0500)]
[ramdisk/grub4dos] Note the media type before creation

9 years ago[ramdisk/grub4dos] Minor, cosmetic changes
Shao Miller [Sun, 9 Jan 2011 00:43:45 +0000 (19:43 -0500)]
[ramdisk/grub4dos] Minor, cosmetic changes

9 years ago[ramdisk] Minor, cosmetic changes
Shao Miller [Sun, 9 Jan 2011 00:25:22 +0000 (19:25 -0500)]
[ramdisk] Minor, cosmetic changes

9 years ago[ramdisk] Don't track RAM disks globally
Shao Miller [Sat, 8 Jan 2011 23:50:57 +0000 (18:50 -0500)]
[ramdisk] Don't track RAM disks globally

9 years ago[bus] Add null operation check for WV_S_DEV_T::Ops.Init()
Shao Miller [Sat, 8 Jan 2011 23:46:14 +0000 (18:46 -0500)]
[bus] Add null operation check for WV_S_DEV_T::Ops.Init()

9 years ago[disk,filedisk] Export IRP handlers, create filedisk PDO
Shao Miller [Sat, 8 Jan 2011 23:44:51 +0000 (18:44 -0500)]
[disk,filedisk] Export IRP handlers, create filedisk PDO

Shuffled things around so that a new filedisk actually is
the device extension of a newly-created PDO.  The same is
intended for RAM disks, soon.

9 years ago[filedisk] Shuffle code around in WvFilediskAttach()
Shao Miller [Sat, 8 Jan 2011 21:34:28 +0000 (16:34 -0500)]
[filedisk] Shuffle code around in WvFilediskAttach()

Moving towards allocating the filedisk with the device
extension when the PDO is created.

9 years ago[bus] Allow a WvBusAddDev() caller to create PDO
Shao Miller [Sat, 8 Jan 2011 20:36:15 +0000 (15:36 -0500)]
[bus] Allow a WvBusAddDev() caller to create PDO

They must set the 'Self' member to notify of this.

9 years ago[disk] Zero out a disk during initialization
Shao Miller [Sat, 8 Jan 2011 20:31:25 +0000 (15:31 -0500)]
[disk] Zero out a disk during initialization

9 years ago[disk] Split WvDiskCreatePdo_() for WV_S_DEV_T independence
Shao Miller [Sat, 8 Jan 2011 20:27:08 +0000 (15:27 -0500)]
[disk] Split WvDiskCreatePdo_() for WV_S_DEV_T independence

The independent portion is now in WvlDiskCreatePdo().

9 years ago[disk] Don't track disks globally
Shao Miller [Sat, 8 Jan 2011 18:44:59 +0000 (13:44 -0500)]
[disk] Don't track disks globally

9 years ago[disk] Split disk initialization out of disk__create()
Shao Miller [Sat, 8 Jan 2011 18:38:33 +0000 (13:38 -0500)]
[disk] Split disk initialization out of disk__create()

And into WvDiskInit(), instead.  Leave device initialization
in disk__create(), since it is specific to WinVBlock devices.

9 years ago[disk] Cosmetic changes and NULL disk operation checks
Shao Miller [Sat, 8 Jan 2011 18:24:20 +0000 (13:24 -0500)]
[disk] Cosmetic changes and NULL disk operation checks

9 years ago[disk] Rename WV_E_DISK_IO_MODE to WVL_E_DISK_IO_MODE
Shao Miller [Sat, 8 Jan 2011 17:49:27 +0000 (12:49 -0500)]
[disk] Rename WV_E_DISK_IO_MODE to WVL_E_DISK_IO_MODE

Along with its enumeration values from WvDiskIoMode* to
WvlDiskIoMode*

9 years ago[disk] Rename WV_A_DISK_BOOT_SECT to WVL_A_DISK_BOOT_SECT
Shao Miller [Sat, 8 Jan 2011 17:41:39 +0000 (12:41 -0500)]
[disk] Rename WV_A_DISK_BOOT_SECT to WVL_A_DISK_BOOT_SECT

9 years ago[httpdisk] Handle IRP_MJ_PNP:IRP_MN_START_DEVICE
Shao Miller [Sat, 8 Jan 2011 17:38:03 +0000 (12:38 -0500)]
[httpdisk] Handle IRP_MJ_PNP:IRP_MN_START_DEVICE

9 years ago[disk] Rename WV_E_DISK_MEDIA_TYPE to WVL_E_DISK_MEDIA_TYPE
Shao Miller [Sat, 8 Jan 2011 17:37:30 +0000 (12:37 -0500)]
[disk] Rename WV_E_DISK_MEDIA_TYPE to WVL_E_DISK_MEDIA_TYPE

Along with its enumeration values from WvDiskMediaType* to
WvlDiskMediaType*

9 years ago[httpdisk] Debug-messages for unsupported IRP major codes
Shao Miller [Sat, 8 Jan 2011 10:00:34 +0000 (05:00 -0500)]
[httpdisk] Debug-messages for unsupported IRP major codes

9 years ago[httpdisk] IRP_MJ_SCSI handling skeleton
Shao Miller [Sat, 8 Jan 2011 09:48:03 +0000 (04:48 -0500)]
[httpdisk] IRP_MJ_SCSI handling skeleton

Just debugging messages, for now.

9 years ago[httpdisk] Debug-messages for a few more PnP IRP types
Shao Miller [Sat, 8 Jan 2011 09:43:59 +0000 (04:43 -0500)]
[httpdisk] Debug-messages for a few more PnP IRP types

9 years ago[httpdisk] Support disk PnP ID queries
Shao Miller [Sat, 8 Jan 2011 09:24:22 +0000 (04:24 -0500)]
[httpdisk] Support disk PnP ID queries

This allows for the disks to be enumerated and
installed in Device Manager.  They won't function, yet.

9 years ago[httpdisk] Add IRP_MJ_PNP handler
Shao Miller [Sat, 8 Jan 2011 07:57:16 +0000 (02:57 -0500)]
[httpdisk] Add IRP_MJ_PNP handler

Though it doesn't exactly handle anything, yet.

9 years ago[libbus/pnp] Add check for NULL QueryDevText member
Shao Miller [Sat, 8 Jan 2011 07:44:01 +0000 (02:44 -0500)]
[libbus/pnp] Add check for NULL QueryDevText member

9 years ago[libbus] Add check for NULL bus FDO
Shao Miller [Sat, 8 Jan 2011 07:35:50 +0000 (02:35 -0500)]
[libbus] Add check for NULL bus FDO

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