Jump to content

Compiling ACPI v2.0 driver for Windows XP SP3 and Windows 2003 SP2 (x32/x64)


Recommended Posts


Posted (edited)

@Mov AX, 0xDEAD

Is there something, that I can test more?

The very last free acpi.sys that you send to me,

is it based on exact the same Source Code as the checked one

Dietmar

PS: I make another test. With the working free acpi.sys on this XP SP3,

I delete all entries in registry about intelppm and also all entries in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI\GenuineIntel_-_x86_Family_6_Model_151

In Device Manager, then all processors are gone.

On next reboot, always 10 cores are shown correct with their friendly name.

The others as Intel Processor (2 for 12600 and 14 for 12900k).

On next reboot, all get their correct friendly name on all boards and for the 12600 and the 12900k cpu.

Edited by Dietmar
Posted
22 minutes ago, Dietmar said:

I delete all entries in registry about intelppm and also all entries in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI\GenuineIntel_-_x86_Family_6_Model_151

In Device Manager, then all processors are gone.

This is OK, after reboot or rescan devices, windows request ACPI for device list and get processors:

setupapi.log:

Quote

#-019 Searching for hardware ID(s): acpi\genuineintel_-_x86_family_6_model_158,*genuineintel_-_x86_family_6_model_158,acpi\genuineintel_-_x86_family_6,*genuineintel_-_x86_family_6,acpi\genuineintel_-_x86,*genuineintel_-_x86,acpi\,*
#-018 Searching for compatible ID(s): acpi\processor
#-198 Command line processed: C:\WINDOWS\system32\services.exe
#I022 Found "ACPI\Processor" in C:\WINDOWS\inf\cpu.inf; Device: "Processor"; Driver: "Processor"; Provider: "Microsoft"; Mfg: "(Standard processor types)"; Section name: "Processor_Inst".
#I023 Actual install section: [Processor_Inst.NT]. Rank: 0x00002000. Effective driver date: 04/01/2004.
#I022 Found "ACPI\GenuineIntel_-_x86" in C:\WINDOWS\inf\cpu.inf; Device: "Intel Processor"; Driver: "Intel Processor"; Provider: "Microsoft"; Mfg: "Intel"; Section name: "IntelPPM_Inst".
#I023 Actual install section: [IntelPPM_Inst.NT]. Rank: 0x00000004. Effective driver date: 04/01/2004.
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#I063 Selected driver installs from section [IntelPPM_Inst] in "c:\windows\inf\cpu.inf".
#I320 Class GUID of device remains: {50127DC3-0F36-415E-A6CC-4CB3BE910B65}.
#I060 Set selected driver.
#I058 Selected best compatible driver.
#-166 Device install function: DIF_INSTALLDEVICEFILES.
#I124 Doing copy-only install of "ACPI\GENUINEINTEL_-_X86_FAMILY_6_MODEL_158\_0".
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [IntelPPM_Inst.NT.Interfaces] from "c:\windows\inf\cpu.inf".
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of "ACPI\GENUINEINTEL_-_X86_FAMILY_6_MODEL_158\_0".
#I121 Device install of "ACPI\GENUINEINTEL_-_X86_FAMILY_6_MODEL_158\_0" finished successfully.

ACPI\GenuineIntel_-_x86 has priority over acpi\processor, so IntelPPM_Inst section selected

22 minutes ago, Dietmar said:

On next reboot, always 10 cores are shown correct with their friendly name.

The others as Intel Processor (2 for 12600 and 14 for 12900k).

On next reboot, all get their correct friendly name on all boards and for the 12600 and the 12900k cpu.

Maybe Windows has bug with installing same driver for multi cpu ?

You can check yourself:

1) backup current setupapi.log

2) delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI\GenuineIntel_-_x86_Family_6_Model_151

3) reboot

4) backup again setupapi.log,

5) compare first and second setupapi.log, look only for new lines, it will be 10 or 12 detections depending on luck :)

Posted (edited)
38 minutes ago, Dietmar said:

@Mov AX, 0xDEAD

Is there something, that I can test more?

The very last free acpi.sys that you send to me,

is it based on exact the same Source Code as the checked one

pre-v6 diff patch is what you already have, no any changes.

There is no more to test, your KDNET log is fine, patcher do anything right, all device definition patched succesfully, all 64 definitions named correctly "intel bla-bla" at ACPI side. Issue happens later outside of processor definition, i have no idea.

Edited by Mov AX, 0xDEAD
Posted

@Dietmar

One more test please ?

in boot.ini create dublicate line with existing config, but add /ONECPU

After loading Windows will have only one core in Task Manager, but all cores in Device Manager

1) Repeat deleting HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI\GenuineIntel_*

2) Reboot

3) Look for changes in Device Manger after first reboot

Posted (edited)

@Mov AX, 0xDEAD

I hope, that I understand your idea correct:

I do all the steps.

in

"3) Look for changes in Device Manger after first reboot"

I do this last reboot with the line in boot.ini with /ONECPU switch as before.

cpu-z shows one core, one thread.

And in Device Manager I can see  for the 12600 cpu

10 times correct with friendly name 12600

and 2 times with "Intel Processor"

Dietmar

EDIT: Exact the same happens, when I take the normal line in boot.ini on second reboot.

And: After next next reboot, all 12 cores are shown in Device Manager again with friendly name 12600,

no matter if I choose 1 core in boot.ini or all.

 

Edited by Dietmar
Posted
24 minutes ago, Dietmar said:

EDIT: Exact the same happens, when I take the normal line in boot.ini on second reboot.

And: After next next reboot, all 12 cores are shown in Device Manager again with friendly name 12600,

no matter if I choose 1 core in boot.ini or all.

OK, seems issue doesn't depend on multicores run. I asked to test because when i played with last acpi.sys in debugger, breakpoint was triggered on same asm opcode from different threads, so i thinked this may be "race condition" problem in patch

Posted (edited)
3 hours ago, Mov AX, 0xDEAD said:

OK, seems issue doesn't depend on multicores run. I asked to test because when i played with last acpi.sys in debugger, breakpoint was triggered on same asm opcode from different threads, so i thinked this may be "race condition" problem in patch

Probablly the same issue I have with XP x64, the difference it's that x86 always runs, while x64 hangs randomly during boot.

It's a long shot, but I think the issue may be related to where Windows stores processor definitions (limited size)?
Vista and later versions are not affected by this too many cores issue.

Edited by daniel_k
Posted
10 hours ago, daniel_k said:

Probablly the same issue I have with XP x64, the difference it's that x86 always runs, while x64 hangs randomly during boot.

It's a long shot, but I think the issue may be related to where Windows stores processor definitions (limited size)?
Vista and later versions are not affected by this too many cores issue.

Hi Daniel,

Just for extreme fun, i will try run QEMU or Bochs with max 32 cores :)

Posted
On 12/11/2022 at 10:56 PM, Mov AX, 0xDEAD said:

Hi Daniel,

Just for extreme fun, i will try run QEMU or Bochs with max 32 cores :)

Yes, please. :worship:

Noticed something interesting that may be related.
CPU name reported by CPUID is longer for 11th gen and later processors when compared to 10th gen:

      Intel(R) Core(TM) i9-10900 CPU @ 2.80GHz
11th Gen Intel(R) Core(TM) i7-11900K @ 3.50GHz

Can you spoof the CPU name?
Maybe longer name and increased number of cores break something?

Would be nice if you could try to load XP x64 Setup to see if it hangs.

Posted

Hi.

Long time reader and XP&WES user.

Maybe is not important but, is worth checking this , search for "SpSaveSKUStuff".

Also, this info, "ReadAndParseProcessorLicenseInfo".

@Dietmar

What XP/2k3 do you use ?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...