]>
xenbits.xensource.com Git - pvdrivers/win/xenvbd.git/log
Owen Smith [Thu, 19 Jun 2014 14:35:34 +0000 (15:35 +0100)]
Add extra state to frontend transition to allow reset to cleanup
requests after CLOSED transition but before disconnecting granter
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Wed, 18 Jun 2014 13:38:37 +0000 (14:38 +0100)]
Cleanup PreparedReqs before closing the ring
To unprepare reqs, the granter is required, which can only operate
when the frontend is connected.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Wed, 18 Jun 2014 13:21:39 +0000 (14:21 +0100)]
Force calling BlockRingPoll as DPC may not run.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Wed, 18 Jun 2014 08:29:12 +0000 (09:29 +0100)]
Merge pull request #33 from OwenSmith/coinstaller-disk-timeout
Coinstaller disk timeout
Owen Smith [Tue, 17 Jun 2014 15:29:17 +0000 (16:29 +0100)]
Fix service key name
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 17 Jun 2014 14:19:45 +0000 (15:19 +0100)]
Increase disk timeout during co-installer to a minimum of 120 seconds
to match timeout in backend(s)
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Thu, 12 Jun 2014 11:33:09 +0000 (12:33 +0100)]
Merge pull request #32 from OwenSmith/pdoreset
Prevent an assertion by triggering the DPC to poll frontend during pause...
Owen Smith [Thu, 12 Jun 2014 11:26:06 +0000 (12:26 +0100)]
Prevent an assertion by triggering the DPC to poll frontend during pause.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Tue, 10 Jun 2014 14:15:13 +0000 (15:15 +0100)]
Merge pull request #31 from OwenSmith/increase-timeout
Increase PdoReset timeout and logging.
Owen Smith [Tue, 10 Jun 2014 13:59:45 +0000 (14:59 +0100)]
Increase PdoReset timeout and logging.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Thu, 5 Jun 2014 14:26:16 +0000 (15:26 +0100)]
Merge pull request #29 from OwenSmith/fix-reset
Check for right flag in granter
Owen Smith [Thu, 5 Jun 2014 14:21:23 +0000 (15:21 +0100)]
Check for right flag in granter
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Wed, 4 Jun 2014 14:07:47 +0000 (15:07 +0100)]
Merge pull request #28 from OwenSmith/fix-reset
Fix PdoReset by attempting to poll ring for up to 5 minutes before bugch...
Owen Smith [Wed, 4 Jun 2014 11:55:17 +0000 (12:55 +0100)]
Fix PdoReset by attempting to poll ring for up to 5 minutes before bugchecking
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Mon, 2 Jun 2014 14:27:54 +0000 (15:27 +0100)]
Merge pull request #27 from OwenSmith/master
SDV is picky about %d/%u printf format specifiers
Owen Smith [Mon, 2 Jun 2014 14:21:32 +0000 (15:21 +0100)]
SDV is picky about %d/%u printf format specifiers
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 2 Jun 2014 13:11:25 +0000 (14:11 +0100)]
Merge pull request #26 from pauldu/gnttab
Use new GNTTAB interface
Paul Durrant [Fri, 30 May 2014 09:39:09 +0000 (10:39 +0100)]
Use new GNTTAB interface
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Wed, 21 May 2014 12:39:08 +0000 (13:39 +0100)]
Merge pull request #25 from OwenSmith/reduce-peak-grants
Reduce peak grants
Owen Smith [Tue, 20 May 2014 13:04:27 +0000 (14:04 +0100)]
Fix checked-only bugcheck (0xD1 due to IsOnList in buffer.c)
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 09:41:24 +0000 (10:41 +0100)]
Submit all prepared requests then attempt to prepare the next SRB
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 09:06:16 +0000 (10:06 +0100)]
Fold BlockRingPush into BlockRingSubmit
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 08:59:57 +0000 (09:59 +0100)]
Move Lookaside functions to same part of pdo.c
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 08:57:17 +0000 (09:57 +0100)]
Always bounce SRBs via FreshSrbs queue
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 08:53:58 +0000 (09:53 +0100)]
Refactor: internalize request preparation functions into a single call
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 20 May 2014 08:45:07 +0000 (09:45 +0100)]
Track current/maximum grant usage
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Mon, 19 May 2014 13:29:53 +0000 (14:29 +0100)]
Merge pull request #24 from OwenSmith/sdv
Fix SDV on xencrsh
Owen Smith [Mon, 19 May 2014 12:51:10 +0000 (13:51 +0100)]
Fix SDV on xencrsh
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Mon, 19 May 2014 11:28:23 +0000 (12:28 +0100)]
Merge pull request #23 from OwenSmith/sdv
Fix build by removing (redefinition) of MmGetPhysicalAddress
Owen Smith [Mon, 19 May 2014 11:21:48 +0000 (12:21 +0100)]
Fix build by removing (redefinition) of MmGetPhysicalAddress
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Mon, 19 May 2014 10:20:50 +0000 (11:20 +0100)]
Merge pull request #22 from OwenSmith/sdv
Add Sdv to build.py
Owen Smith [Mon, 19 May 2014 09:32:16 +0000 (10:32 +0100)]
Fix SDV errors, completes SDV and DVL log run
Notes: Date format must be US (MM/DD/YY) for WHQL tests
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 19 May 2014 08:35:46 +0000 (09:35 +0100)]
Add sdv build to build.py, include nosdv option to not run sdv
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Thu, 8 May 2014 13:09:10 +0000 (14:09 +0100)]
Merge pull request #21 from OwenSmith/master
Log BLKIF_OP_* values when backend fails request
Owen Smith [Thu, 8 May 2014 13:00:21 +0000 (14:00 +0100)]
Log BLKIF_OP_* values when backend fails request
Dont attempt to interpret as SCSIOP_* values
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Thu, 1 May 2014 12:00:23 +0000 (13:00 +0100)]
Merge pull request #20 from OwenSmith/master
[CA-134598] Store the (partial) tag along with the XENVBD_REQUEST.
Owen Smith [Thu, 1 May 2014 11:32:10 +0000 (12:32 +0100)]
[CA-134598] Store the (partial) tag along with the XENVBD_REQUEST.
Migrate and a bus/target reset will re-queue any existing requests, but not
reset the request tagging correctly, and will eventually run out of free tags.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 22 Apr 2014 09:35:37 +0000 (10:35 +0100)]
Merge pull request #19 from pauldu/waitblock
Fix BSOD caused by KeWaitForMultipleObjects()
Paul Durrant [Tue, 22 Apr 2014 09:24:39 +0000 (10:24 +0100)]
Fix BSOD caused by KeWaitForMultipleObjects()
KeWaitForMultipleObjects() should use a wait block array if the
number of objects exceeds THREAD_WAIT_OBJECTS. The number of objects
PdoDestroy() waits on is 4 which exceeds the currently defined value
of that constant (which is 3).
Signed-off-by: Murtaza Ghiya <murtazg@amazon.com>
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Tue, 15 Apr 2014 14:35:19 +0000 (15:35 +0100)]
Merge pull request #18 from OwenSmith/sctx-1718
Prevent certain GPO settings triggering BSOD 0x7B on first reboot
Owen Smith [Tue, 15 Apr 2014 14:17:30 +0000 (15:17 +0100)]
Dont attempt to read values before setting to 0
Always attempt to set DisableCDDB and DontStartRawDevices to 0
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Tue, 15 Apr 2014 11:05:14 +0000 (12:05 +0100)]
[SCTX-1718] Set DisableCDDB and DontStartRawDevices to 0 before rebooting,
if GPO option to disallow device installations is enabled.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 14 Apr 2014 08:37:47 +0000 (09:37 +0100)]
Merge pull request #16 from pauldu/gnttab
Fix a few build warnings
Paul Durrant [Mon, 14 Apr 2014 08:33:55 +0000 (09:33 +0100)]
Fix a few build warnings
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Owen Smith [Mon, 14 Apr 2014 08:29:39 +0000 (09:29 +0100)]
Merge pull request #15 from pauldu/gnttab
Switch to new GNTTAB interface.
Paul Durrant [Fri, 11 Apr 2014 16:42:21 +0000 (17:42 +0100)]
Switch to new GNTTAB interface.
This patch will break indirect but no shipping backend actually uses that
yet.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Tue, 1 Apr 2014 13:37:43 +0000 (14:37 +0100)]
Merge pull request #14 from OwenSmith/indirect
Rename XENVBD_CONTEXT to XENVBD_MAPPING to better describe its use
Owen Smith [Tue, 1 Apr 2014 12:49:28 +0000 (13:49 +0100)]
Rename XENVBD_CONTEXT to XENVBD_MAPPING to better describe its use
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Tue, 1 Apr 2014 09:21:52 +0000 (10:21 +0100)]
Merge pull request #13 from OwenSmith/indirect
Implement Indirect Operation
Owen Smith [Mon, 31 Mar 2014 09:07:04 +0000 (10:07 +0100)]
Tidy up some Verbose and DEBUG output
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 14 Mar 2014 09:30:59 +0000 (09:30 +0000)]
Prepare, submit and cleanup BLKIF_OP_INDIRECT
When a read or write request would not fit into a single
BLKIF_OP_{READ/WRITE}, and the backend supports indirect
operations, prepare and submit a BLKIF_OP_INDIRECT and
handle the response.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 13:38:04 +0000 (13:38 +0000)]
Insert INDIRECT operations onto ring
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 12:57:55 +0000 (12:57 +0000)]
Add missing Verbose parameter
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 12:35:27 +0000 (12:35 +0000)]
Add XENVBD_REQUEST_INDIRECT
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 12:25:29 +0000 (12:25 +0000)]
Split PrepareReadWrite into seperate calls for Segments and Requests
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 12:11:28 +0000 (12:11 +0000)]
Split XENVBD_SEGMENT into segment data and bounce buffer context data
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 12:01:32 +0000 (12:01 +0000)]
Track Lookaside list max allocs and failed allocs better
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 11:44:46 +0000 (11:44 +0000)]
Read additional features/parameters (at appropriate state)
"feature-max-indirect-segments", "feature-persistent", "discard-secure"
"discard-alignment" and "discard-granularity"
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 11:26:02 +0000 (11:26 +0000)]
Track BLKIF_OP_{READ/WRITE} on per request basis, not per SRB
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 13 Mar 2014 11:17:59 +0000 (11:17 +0000)]
Update blkif.h to include INDIRECT definitions
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Thu, 13 Mar 2014 10:40:19 +0000 (10:40 +0000)]
Merge pull request #12 from OwenSmith/tags
Dont pass raw pointers to backend via req.id
Owen Smith [Thu, 13 Mar 2014 09:40:25 +0000 (09:40 +0000)]
Zero ring slot after processing response
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Wed, 12 Mar 2014 10:09:16 +0000 (10:09 +0000)]
Pass a tag to blkif_request_t.id instead of a raw pointer.
Validate blkif_response_t.id is a correctly formatted tag before
retrieving the appropriate PXENVBD_REQUEST pointer.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Fri, 14 Feb 2014 09:38:01 +0000 (09:38 +0000)]
Merge pull request #10 from OwenSmith/use-request-queue
Use request queue
Owen Smith [Wed, 12 Feb 2014 09:40:11 +0000 (09:40 +0000)]
Manage SrbStatus better.
Set to PENDING (once) before any actions occur, and only set to success when
completing the SRB. SrbStatus is set to a fail code if any Requests fail.
The fail code can be overwritten with a different fail code, but not with a
success code.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 10 Feb 2014 12:10:34 +0000 (12:10 +0000)]
Wrap lookaside list access to an inline structure
Allows tight coupling of event, count and lookaside list access
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 7 Feb 2014 15:52:36 +0000 (15:52 +0000)]
Add handler for SCSIOP_UNMAP, translating to BLKIF_OP_DISCARD
Note: Storport will not generate SCSIOP_UNMAPs, a filter will be
required to convert IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES
into SCSIOP_UNMAPs
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 7 Feb 2014 15:45:55 +0000 (15:45 +0000)]
Refactor to improve code clarity
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 7 Feb 2014 15:12:27 +0000 (15:12 +0000)]
Split XENVBD_REQUEST into unioned parts by BLKIF_OP_*
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 7 Feb 2014 11:58:16 +0000 (11:58 +0000)]
Tidy up REQUEST preparation code,
Move scatter gather access to SGList* functions
Move mapping memory to seperate function
Reduce unneccessary local variable usage
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 7 Feb 2014 10:55:00 +0000 (10:55 +0000)]
Reduce calls to BlockRingPush and NotifierSend during PdoSubmitPrepared
Remove ListContains assertions
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Fri, 31 Jan 2014 09:12:41 +0000 (09:12 +0000)]
No need to lock when accessing private front ring.
Move lock to insertion pathway only.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 30 Jan 2014 15:11:15 +0000 (15:11 +0000)]
Tidy up code with Granter/Notifier/BlockRing accessors
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 30 Jan 2014 14:12:22 +0000 (14:12 +0000)]
Remove unneeded include
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Thu, 30 Jan 2014 13:08:09 +0000 (13:08 +0000)]
Enable single requests to be submitted to the ring
When a SRB has been prepared, its constituent requests are appended
to a request queue. Requests are submitted to the ring from this request
queue, allowing a SRB to be partially submitted due to limited free
slots on the ring.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Tue, 7 Jan 2014 10:05:17 +0000 (02:05 -0800)]
Merge pull request #8 from OwenSmith/master
[SCTX-1663] Allow Closed -> Initialized state transition
Owen Smith [Mon, 6 Jan 2014 10:13:49 +0000 (10:13 +0000)]
[SCTX-1663] Make Closed->Initialized a valid transition.
Resuming from suspend, when the suspend occured before the
Initialized->Closed transition is valid, and the state needs to change
to allow subsiquent resumes to close the backend connection.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 6 Jan 2014 09:39:58 +0000 (09:39 +0000)]
[SCTX-1663] Prevent transitions to Initialized causing DEAD BSOD
on resume from suspend, when suspend occurs before transition out
of Initialized.
Also, fix minor typo in xencrsh/pdo.c
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 16 Dec 2013 15:25:07 +0000 (15:25 +0000)]
Add more logging to xencrsh
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Mon, 9 Dec 2013 16:45:18 +0000 (08:45 -0800)]
Merge pull request #7 from OwenSmith/switch-xencrsh-to-grant-v1
Switch xencrsh to grant v1
Owen Smith [Mon, 9 Dec 2013 16:33:34 +0000 (16:33 +0000)]
Fix comments on prev commit
* #define MAXIMUM_GRANT_PAGES 1
* KeMemoryBarrier()
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 9 Dec 2013 09:25:23 +0000 (09:25 +0000)]
Switch XENCRSH to grant v1
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Fri, 1 Nov 2013 10:26:46 +0000 (11:26 +0100)]
Add back missing code to handle VDISK_REMOVABLE
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Ben Chalmers [Wed, 23 Oct 2013 14:34:42 +0000 (07:34 -0700)]
Merge pull request #4 from OwenSmith/upstream
Remove KeFlushQueuedDpcs on disable
Approved-By: Ben Chalmers <ben.chalmers@citrix.com>
Owen Smith [Wed, 23 Oct 2013 14:26:46 +0000 (15:26 +0100)]
Merge branch 'upstream' of github.com:OwenSmith/win-xenvbd into upstream
Owen Smith [Wed, 23 Oct 2013 14:23:07 +0000 (15:23 +0100)]
Remove KeFlushQueuedDpcs on disable
The DPC checks for state before doing anything, allowing
a DPC to run (and exit immidiately) should be safe.
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Owen Smith [Mon, 21 Oct 2013 08:48:18 +0000 (09:48 +0100)]
Merge branch 'upstream' of github.com:OwenSmith/win-xenvbd into upstream
Owen Smith [Fri, 18 Oct 2013 15:07:11 +0000 (08:07 -0700)]
Merge pull request #3 from benchalmers/upstream-ca-118809
[CA-118809] Use 64 bit abi
Approved By : owen.smith@citrix.com
Ben Chalmers [Fri, 18 Oct 2013 15:01:20 +0000 (16:01 +0100)]
[CA-118809] Use 64 bit abi
Signed-off-by: Ben Chalmers <Ben.Chalmers@citrix.com>
Owen Smith [Thu, 10 Oct 2013 08:36:22 +0000 (09:36 +0100)]
Fix typos
Signed-off-by: Owen Smith <owen.smith@citrix.com>
Paul Durrant [Tue, 1 Oct 2013 13:21:17 +0000 (14:21 +0100)]
Fix typo
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Tue, 1 Oct 2013 13:16:26 +0000 (14:16 +0100)]
New README.md and INSTALL.md.
Also fix some python/cygwin issues and imported header line endings.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Mon, 30 Sep 2013 09:57:43 +0000 (10:57 +0100)]
ZwSetValueKey() was being called at DISPATCH_LEVEL from within the
enumeration code.
Change the code structure to only play with the registry from the outer
scan function which runs at PASSIVE_LEVEL.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Fri, 27 Sep 2013 12:58:16 +0000 (13:58 +0100)]
Update build to reflect version
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Fri, 27 Sep 2013 12:48:21 +0000 (13:48 +0100)]
Update to 7.2.0
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Fri, 27 Sep 2013 12:42:55 +0000 (13:42 +0100)]
MSVC apparently 8-byte aligns 8-byte objects even in 32-bit builds
so we need to use the 64-bit ABI to blkback/tap in all cases.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Thu, 26 Sep 2013 14:07:36 +0000 (15:07 +0100)]
Add a DWORD value "NeedReboot" to the service key if a PDO fails
to start because either the EMULATED interface is not available, or
an alias has yet to be unplugged.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Thu, 26 Sep 2013 09:26:38 +0000 (10:26 +0100)]
Advertize the correct ABI to the backend when connecting.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Paul Durrant [Wed, 25 Sep 2013 12:56:26 +0000 (13:56 +0100)]
Merge branch 'upstream' of github.com:pauldu/win-xenvbd into upstream
Paul Durrant [Wed, 25 Sep 2013 12:43:36 +0000 (13:43 +0100)]
Update to new GNTTAB interface
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>