Custom Query (45 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (16 - 18 of 45)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Ticket Resolution Summary Owner Reporter
#40 fixed Todo: implement the keyboard capture code for Qt frontend Valery V. Sedletski
Description

The old VBox port from year 2008 contains the code for capturing the keyboard via a keyboard hook DLL. It intercept all keyboard input including special keys and modifiers, hotkeys etc. Here I attached the patch for a Makefile to build a VBoxHlp.dll -- a helper DLL which contains a keyboard hook. The work remained is to refactor the keyboard code to different source files and classes. This is needed because the source code structure is changed in the upstream. Without this code, the Qt frontend may block PM on waiting the input events. It can be used though, if start the frontend like this:

VirtualBox.exe --startvm winxp

Then the selector window will be not running and no communication between them and the VM window. Also, the user experience is even better if you install the VBox additions and use mouse integration (see #29).

#38 fixed supdrvSessionRetain/supdrvSessionRelease problem Valery V. Sedletski Valery V. Sedletski
Description

The supdrvSessionRetain / supdrvSessionRelease increment / decrement a reference counter for vboxdr.sys open sessions. And the release count is greater than retain count, so we got

!!Assertion Failed!!
Expression: cRefs < _1M
Location  : N:/src/vbox/src/VBox/HostDrivers/Support/SUPDrv.cpp(1364) uint32_t
supdrvSessionRelease(PSUPDRVSESSION)
0xffffffff fd3e4308

on boot. So, there will be trap 0003 on boot with current vboxdrv.sys from repo. There is a preliminary fix, which I attach to this ticket, but it is not perfect.

So, implement a proper fix.

#37 fixed Kernel logging implementation Valery V. Sedletski
Description

Implement kernel logging. We need a logging function for all ring0 components.

1) Probably, we'll need a ring buffer like in DaniS506 (we could look in DaniS sources to use Daniela's implementation). Then we can copy it to a file with

copy vboxdrv$ vbox.log

2) OS/4 kernel has KernPrintf? KEE call, so we can use it too, as an option. Then use:

copy kernlog$ kernlog.txt

Note that it should not be limited in vboxdrv.sys, but use the single API for all Ring0 components, like *.r0, *.rc, VboxGuest?.sys from guest OS's, TAP driver etc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Note: See TracQuery for help on using queries.