Hi all!
A picture says more than a thousand words:
http://fs5.directupload.net/images/170613/u4d8a59a.png
As promised in the last meeting, I have brought to life a machine for
testing GPU drivers with real GPUs under ReactOS. It combines a QEMU
virtual machine with PCIe GPU Passthrough together with a KVM-over-IP
card for feeding the real video signal back to a window.
What you see in the screenshot is a real NVIDIA GeForce 9300 GPU
attached to a ReactOS VM. We can now test the NVIDIA driver installation
while enjoying the easy debuggability of a VM.
My first report is already out: https://jira.reactos.org/browse/CORE-13423
Every developer interested in working on this can drop me a line and I
will send you credentials for the server.
Soon I will also add an AMD Graphics Card along with another KVM-over-IP
card to let us debug the other big driver package.
Thanks go out to Mr. Kromdijk for the generous server donation,
Christoph for the KVM-over-IP card, and Hervé for the QEMU hints!
Let's all get some flashy 3D acceleration into ReactOS!! :)
Cheers,
Colin
On 2017-06-02 19:52, phater(a)svn.reactos.org wrote:
> + aDstNextStr = (char*)((DWORD)aDstNextStr + (DWORD)bItmLen);
DWORD cannot always fit a pointer. You want DWORD_PTR for this kind of
math (or simply use char *).
On 2017-06-02 02:44, hbelusca(a)svn.reactos.org wrote:
> @@ -341,7 +341,7 @@
> }
>
> InitializeObjectAttributes(&ObjectAttributes, &ServicesU, OBJ_CASE_INSENSITIVE, NULL, NULL);
> - Status = NtCreateKey(&hServices, 0, &ObjectAttributes, 0, NULL, 0, NULL);
> + Status = NtCreateKey(&hServices, KEY_ALL_ACCESS, &ObjectAttributes, 0, NULL, 0, NULL);
> if (!NT_SUCCESS(Status))
> {
> DPRINT1("NtCreateKey('%wZ') failed with status 0x%08lx\n", &ServicesU, Status);
>
>
It doesn't really need full access, does it? Could have gone for
something closer to the original, like READ_CONTROL.
I understand not making the change to how 1st stage deals with the
registry in trunk.
Why not the tool change though? Can't you have the new mkhive do the
exact same thing it does now, and do it in trunk? The smaller your
branch merge commit the easier it will be to avoid/pinpoint/fix
regressions.
On 2017-06-02 02:34, hbelusca(a)svn.reactos.org wrote:
> Author: hbelusca
> Date: Fri Jun 2 00:34:10 2017
> New Revision: 74741
>
> URL: http://svn.reactos.org/svn/reactos?rev=74741&view=rev
> Log:
> [MKHIVE][CMAKE]: Make mkhive a bit more flexible, so that it can generate only specific hives on-demand (and not all of them always at once). I need this for building a single bootcd registry hive.
> I commit these changes in my branch because it's too much über-advanced code for our trunk, yet... (and it will uncover deep "setup" hacks in NTOS' iomgr & pnpmgr as soon as I'll enable 1-st stage setup to have a proper registry present as done on windows).
> CORE-13347 #comment Committed in r74741 but just in the setup_improvements branch for the moment.
On 2017-06-01 20:27, hbelusca(a)svn.reactos.org wrote:
> /* EISA */
> case EisaAdapter:
> -
> + {
> /* Fixup information */
> Interface = Eisa;
> Bus = CmpTypeCount[EisaAdapter]++;
> break;
> + }
This is a completely unnecessary change to somebody else's code that has
no basis in our documented coding style. Uh... don't do that?
On 2017-06-02 02:00, hbelusca(a)svn.reactos.org wrote:
> [MKHIVE]: Formatting changes only + sync back the names of the reg-inf functions with the ones where they are coming from (aka. Wine's setupapi/install.c).
Those two goals clearly conflict with either other. Either keep Wine's
function names AND formatting to keep things comparable/sync-able, or
make the code follow our style.
On 2017-06-01 20:37, hbelusca(a)svn.reactos.org wrote:
> + if (!NT_SUCCESS(Status))
> + {
> + /* We failed, close all the opened handles and return */
> + // NtClose(KeyHandle);
Please don't add commented-out code.
What is that supposed to even mean? "I was too lazy to test this"? "All
the other code depends on this leak"? "I think it would look prettier
here"?
Hello,
I propose to reschedule our monthly meeting to Thursday next week (1st
of June), as tomorrow is a holiday in some countries, and also I have
tight meetings schedule this week.
Regards,
Aleksey Bragin