Jump to content

Damnation

Member
  • Posts

    781
  • Joined

  • Last visited

  • Days Won

    3
  • Donations

    0.00 USD 
  • Country

    Australia

Posts posted by Damnation

  1. @Dietmar@Mov AX, 0xDEAD

    Yes!! :cheerleader::thumbup

    Using grub2 I did a DSDT and SSDT ACPI table modification and I can now confirm with 100% certainty that this ACPI0010 "ACPI Processor Container" Device is the cause of the issue!

    https://imgbb.com/ZLJWbfH

    spacer.png

    I know you're not motivated at all @Mov AX, 0xDEAD but a permanent fix implemented through acpi.sys would still be very much appreciated.

     

  2. missing functions needed for amdppm.sys with ntoskrn8.sys

     

    Quote

    KeEnumerateNextProcessor
    KeInitializeEnumerationContext
    KeCountSetBitsAffinityEx
    KeRemoveProcessorAffinityEx
    KeAddGroupAffinityEx
    NtQuerySystemInformationEx
    KeOrAffinityEx
    KeCopyAffinityEx
    KeCheckProcessorAffinityEx
    KeAddProcessorAffinityEx
    KeQueryActiveProcessorAffinity
    KeInitializeAffinityEx
    KeProcessorGroupAffinity

     

  3. @Mov AX, 0xDEAD

    Could you try making this ACPI0010 device in a QEMU VM and see if it affects CPU power state? (assuming QEMU can do something like that)

    here it is in my CPU SSDT

    ---
     

    Quote

     


     * Intel ACPI Component Architecture
     * AML/ASL+ Disassembler version 20220331 (32-bit version)
     * Copyright (c) 2000 - 2022 Intel Corporation
     *
     * Disassembling to symbolic ASL+ operators
     *
     * Disassembly of ssdt2.dat, Sat Jul 23 03:15:04 2022
     *
     * Original Table Header:
     *     Signature        "SSDT"
     *     Length           0x000003F1 (1009)
     *     Revision         0x02
     *     Checksum         0x65
     *     OEM ID           "ALASKA"
     *     OEM Table ID     "CPUSSDT"
     *     OEM Revision     0x01072009 (17244169)
     *     Compiler ID      "AMI "
     *     Compiler Version 0x01072009 (17244169)
     */
    DefinitionBlock ("", "SSDT", 2, "ALASKA", "CPUSSDT", 0x01072009)
    {
        Scope (\_SB)
        {
            Device (PLTF)
            {
                Name (_HID, "ACPI0010" /* Processor Container Device */)  // _HID: Hardware ID
                Name (_CID, EisaId ("PNP0A05") /* Generic Container Device */)  // _CID: Compatible ID
                Name (_UID, One)  // _UID: Unique ID
                Device (C000)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, Zero)  // _UID: Unique ID
                }

                Device (C001)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, One)  // _UID: Unique ID
                }

                Device (C002)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x02)  // _UID: Unique ID
                }

                Device (C003)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x03)  // _UID: Unique ID
                }

                Device (C004)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x04)  // _UID: Unique ID
                }

                Device (C005)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x05)  // _UID: Unique ID
                }

                Device (C006)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x06)  // _UID: Unique ID
                }

                Device (C007)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x07)  // _UID: Unique ID
                }

                Device (C008)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x08)  // _UID: Unique ID
                }

                Device (C009)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x09)  // _UID: Unique ID
                }

                Device (C00A)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0A)  // _UID: Unique ID
                }

                Device (C00B)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0B)  // _UID: Unique ID
                }

                Device (C00C)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0C)  // _UID: Unique ID
                }

                Device (C00D)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0D)  // _UID: Unique ID
                }

                Device (C00E)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0E)  // _UID: Unique ID
                }

                Device (C00F)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x0F)  // _UID: Unique ID
                }

                Device (C010)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x10)  // _UID: Unique ID
                }

                Device (C011)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x11)  // _UID: Unique ID
                }

                Device (C012)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x12)  // _UID: Unique ID
                }

                Device (C013)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x13)  // _UID: Unique ID
                }

                Device (C014)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x14)  // _UID: Unique ID
                }

                Device (C015)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x15)  // _UID: Unique ID
                }

                Device (C016)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x16)  // _UID: Unique ID
                }

                Device (C017)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x17)  // _UID: Unique ID
                }

                Device (C018)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x18)  // _UID: Unique ID
                }

                Device (C019)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x19)  // _UID: Unique ID
                }

                Device (C01A)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1A)  // _UID: Unique ID
                }

                Device (C01B)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1B)  // _UID: Unique ID
                }

                Device (C01C)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1C)  // _UID: Unique ID
                }

                Device (C01D)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1D)  // _UID: Unique ID
                }

                Device (C01E)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1E)  // _UID: Unique ID
                }

                Device (C01F)
                {
                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
                    Name (_UID, 0x1F)  // _UID: Unique ID
                }
            }
        }
    }

     

     

  4. @Mov AX, 0xDEAD

    Are you sure? I was thinking perhaps the ACPI driver can't control the CPU power state since the processors are now all inside this container device now instead of on their own outside the container like they are with my other machines, including my threadripper which does not have this issue.

    I really think this new ACPI0010 device is the cause as it's the only thing that's different from my other AMD systems.

    ---

    I tried an intelppm.sys that @Dietmar sent me earlier but it did not make any difference, still 140W idle.

    I noticed that windows 7 and later has an amdppm.sys driver - maybe this needs to be ported to XP?

    ---

    But if you're sure intelppm.sys will resolve the issue can you send me a patched version?

    ---

    P.S

    I also tried manually installing processor onto the "ACPI0007" devices in device manager, but I got code 10: cannot start, so I reverted

  5. @Dietmar

    I think my way could potentially work since you have some ability to use internal unexported ntoskrnl code which you can't do with the normal ntoskrnl extender.

    But it could be that this approach will not work as intended.

    @Mov AX, 0xDEAD still knows way more about this than I do.

     

    To build just the ntoskrnl extender you need only to use Windows 7 DDK in a Windows 10 VM

    After installing 7 DDK Open "Free Build Environment" from the start menu and navigate to C:\NTOSKRNL_Emu-master_21jul2022_ndis6

    then type

    bcz

    to build extender.

    ---

    To make ntosxlibs:

    To make ntosxlibs you will need leaked XP/2K3 source code, an XP VM to built it in, and a mass find/replace tool like powergrep to append ntoskrnX onto the end of all exported ntoskrnl functions so you don't run into conflicts later on.

    But this is all very complicated to describe so 1st thing to do would be to get razzle setup and running and building everything in the base folder of the Vanilla Win2k3 source tree.

    Once that is working we can continue from there.

×
×
  • Create New...