Jump to content

NDIS6 support for XP?


Damnation

Recommended Posts


@mockingbird  @Damnation

X540-T2 works with 10Gb under XP SP3.

Green LED means 2x10Gb working, ultrafast, my router cant compare with,

Intel 82599 is X520 also driver for XP SP3 and also 10Gb

Dietmar

PS: Blackwingcat make them also work under win2000.

 

20220725-220500.jpg

 

20220725-224032.jpg

Edited by Dietmar
Link to comment
Share on other sites

@Damnation

I see an endless running bar.

Windbg tells this for the checked ntoskrn8.sys version for ndis 6

*** Fatal System Error: 0x000000d1
                       (0x02030005,0x00000002,0x00000000,0xB9A6E9F7)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Thu Jul 28 10:39:19.687 2022 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
..................................
Loading User Symbols

*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck D1, {2030005, 2, 0, b9a6e9f7}

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for e1d6232.sys -
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
Probably caused by : NETIO.SYS ( NETIO!NmrpIsEqualNpiId+8 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b724 cc              int     3
1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 02030005, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000000, value 0 = read operation, 1 = write operation
Arg4: b9a6e9f7, address which referenced memory

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

READ_ADDRESS:  02030005

CURRENT_IRQL:  2

FAULTING_IP:
NETIO!NmrpIsEqualNpiId+8
b9a6e9f7 8b10            mov     edx,dword ptr [eax]

DEFAULT_BUCKET_ID:  DRIVER_FAULT

BUGCHECK_STR:  0xD1

PROCESS_NAME:  System

ANALYSIS_VERSION: 6.3.9600.17237 (debuggers(dbg).140716-0327) x86fre

TRAP_FRAME:  ba5535f8 -- (.trap 0xffffffffba5535f8)
ErrCode = 00000000
eax=02030005 ebx=02030001 ecx=b9b2d6f0 edx=49577050 esi=b9b2d6f0 edi=00000000
eip=b9a6e9f7 esp=ba55366c ebp=ba55366c iopl=0         nv up ei pl nz na po nc
cs=0008  ss=0010  ds=0023  es=0023  fs=0030  gs=0000             efl=00010202
NETIO!NmrpIsEqualNpiId+0x8:
b9a6e9f7 8b10            mov     edx,dword ptr [eax]  ds:0023:02030005=????????
Resetting default scope

LOCK_ADDRESS:  8055b560 -- (!locks 8055b560)

Resource @ nt!IopDeviceTreeLock (0x8055b560)    Shared 1 owning threads
     Threads: 8bbaf620-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
    Lock address  : 0x8055b560
    Thread Count  : 1
    Thread address: 0x8bbaf620
    Thread wait   : 0x152

LAST_CONTROL_TRANSFER:  from 804f8e95 to 8052b724

STACK_TEXT:  
ba5531ac 804f8e95 00000003 ba553508 00000000 nt!RtlpBreakWithStatusInstruction
ba5531f8 804f9a80 00000003 02030005 b9a6e9f7 nt!KiBugCheckDebugBreak+0x19
ba5535d8 8054483c 0000000a 02030005 00000002 nt!KeBugCheck2+0x574
ba5535d8 b9a6e9f7 0000000a 02030005 00000002 nt!KiTrap0E+0x180
ba55366c b9a6ee81 02030005 b9b2d6f0 89b39f30 NETIO!NmrpIsEqualNpiId+0x8
ba553684 b9a6ed5d 8bb8e730 00000001 b9b2f008 NETIO!NmrpFindOrAddRegisteredNpiId+0x22
ba5536f0 b9a6ec91 89b39f30 ba553728 ba553724 NETIO!NmrpRegisterModuleAndGetBindableCandidates+0x33
ba553718 b9a6ef72 00000002 b9b2e018 00000000 NETIO!NmrpRegisterModule+0x3c
ba553740 b9b0bf2f b9b0c6db 00000000 b9b2f008 NETIO!NmrRegisterProvider+0x4b
ba553764 b9b0c6db 00060000 8052e8fc ba55378c NDIS!ndisStartNsiProvider+0x4b
ba553780 b9b08db9 b9861000 89b3ac80 00060014 NDIS!ndisInitializeNsi+0x50
ba553798 b98102a3 89b3ac80 89b36000 00000000 NDIS!NdisMRegisterMiniportDriver+0x51
WARNING: Stack unwind information not available. Following frames may be wrong.
ba553814 805813af 89b3ac80 89b36000 00000000 e1d6232!DriverEntry+0x20f
ba5538e4 8058f557 8000042c 00000000 ba553900 nt!IopLoadDriver+0x66d
ba553928 805e7b7f e10141f0 00000001 8000042c nt!PipCallDriverAddDeviceQueryRoutine+0x235
ba553974 805e7f76 e10141d4 00000001 ba5539f0 nt!RtlpCallQueryRegistryRoutine+0x37d
ba5539fc 80590ddf 00000001 00000084 ba553a24 nt!RtlQueryRegistryValues+0x368
ba553ad0 8059229c 00000000 00000001 ba553d5c nt!PipCallDriverAddDevice+0x261
ba553d2c 805927a6 8bb8e990 00000001 00000000 nt!PipProcessDevNodeTree+0x1a4
ba553d54 804f6a32 00000003 8055b5c0 8056485c nt!PiProcessStartSystemDevices+0x3a
ba553d7c 80538921 00000000 00000000 8bbaf620 nt!PipDeviceActionWorker+0x170
ba553dac 805cffee 00000000 00000000 00000000 nt!ExpWorkerThread+0xef
ba553ddc 8054623e 80538832 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND:  kb

FOLLOWUP_IP:
NETIO!NmrpIsEqualNpiId+8
b9a6e9f7 8b10            mov     edx,dword ptr [eax]

SYMBOL_STACK_INDEX:  4

SYMBOL_NAME:  NETIO!NmrpIsEqualNpiId+8

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: NETIO

IMAGE_NAME:  NETIO.SYS

DEBUG_FLR_IMAGE_TIMESTAMP:  5b48ef86

IMAGE_VERSION:  6.1.7601.24208

FAILURE_BUCKET_ID:  0xD1_NETIO!NmrpIsEqualNpiId+8

BUCKET_ID:  0xD1_NETIO!NmrpIsEqualNpiId+8

ANALYSIS_SOURCE:  KM

FAILURE_ID_HASH_STRING:  km:0xd1_netio!nmrpisequalnpiid+8

FAILURE_ID_HASH:  {1d7ea187-17c8-1608-8471-24546162eb85}

Followup: MachineOwner
---------

 

Link to comment
Share on other sites

@Damnation

And this (I think the same) for the new builded free version for ntoskrn8.sys

Dietmar

*** Fatal System Error: 0x000000d1
                       (0x0A050007,0x00000002,0x00000000,0xB9A6E9F7)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

Connected to Windows XP 2600 x86 compatible target at (Thu Jul 28 10:53:14.796 2022 (UTC + 2:00)), ptr64 FALSE
Loading Kernel Symbols
..................................
Loading User Symbols

*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck D1, {a050007, 2, 0, b9a6e9f7}

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for e1d6232.sys -
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
Probably caused by : NETIO.SYS ( NETIO!NmrpIsEqualNpiId+8 )

Followup: MachineOwner
---------

nt!RtlpBreakWithStatusInstruction:
8052b724 cc              int     3
1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 0a050007, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000000, value 0 = read operation, 1 = write operation
Arg4: b9a6e9f7, address which referenced memory

Debugging Details:
------------------

*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0
*** No owner thread found for resource 8055b4e0

READ_ADDRESS:  0a050007

CURRENT_IRQL:  2

FAULTING_IP:
NETIO!NmrpIsEqualNpiId+8
b9a6e9f7 8b10            mov     edx,dword ptr [eax]

DEFAULT_BUCKET_ID:  DRIVER_FAULT

BUGCHECK_STR:  0xD1

PROCESS_NAME:  System

ANALYSIS_VERSION: 6.3.9600.17237 (debuggers(dbg).140716-0327) x86fre

TRAP_FRAME:  ba5535f8 -- (.trap 0xffffffffba5535f8)
ErrCode = 00000000
eax=0a050007 ebx=0a050003 ecx=b9b2d6f0 edx=6d665346 esi=b9b2d6f0 edi=00000000
eip=b9a6e9f7 esp=ba55366c ebp=ba55366c iopl=0         nv up ei pl nz na pe nc
cs=0008  ss=0010  ds=0023  es=0023  fs=0030  gs=0000             efl=00010206
NETIO!NmrpIsEqualNpiId+0x8:
b9a6e9f7 8b10            mov     edx,dword ptr [eax]  ds:0023:0a050007=????????
Resetting default scope

LOCK_ADDRESS:  8055b560 -- (!locks 8055b560)

Resource @ nt!IopDeviceTreeLock (0x8055b560)    Shared 1 owning threads
     Threads: 8bbaf620-01<*>
1 total locks, 1 locks currently held

PNP_TRIAGE:
    Lock address  : 0x8055b560
    Thread Count  : 1
    Thread address: 0x8bbaf620
    Thread wait   : 0x161

LAST_CONTROL_TRANSFER:  from 804f8e95 to 8052b724

STACK_TEXT:  
ba5531ac 804f8e95 00000003 ba553508 00000000 nt!RtlpBreakWithStatusInstruction
ba5531f8 804f9a80 00000003 0a050007 b9a6e9f7 nt!KiBugCheckDebugBreak+0x19
ba5535d8 8054483c 0000000a 0a050007 00000002 nt!KeBugCheck2+0x574
ba5535d8 b9a6e9f7 0000000a 0a050007 00000002 nt!KiTrap0E+0x180
ba55366c b9a6ee81 0a050007 b9b2d6f0 89b38850 NETIO!NmrpIsEqualNpiId+0x8
ba553684 b9a6ed5d 8bb85208 00000001 b9b2f008 NETIO!NmrpFindOrAddRegisteredNpiId+0x22
ba5536f0 b9a6ec91 89b38850 ba553728 ba553724 NETIO!NmrpRegisterModuleAndGetBindableCandidates+0x33
ba553718 b9a6ef72 00000002 b9b2e018 00000000 NETIO!NmrpRegisterModule+0x3c
ba553740 b9b0bf2f b9b0c6db 00000000 b9b2f008 NETIO!NmrRegisterProvider+0x4b
ba553764 b9b0c6db 00060000 8052e8fc ba55378c NDIS!ndisStartNsiProvider+0x4b
ba553780 b9b08db9 b9861000 89b38e08 00060014 NDIS!ndisInitializeNsi+0x50
ba553798 b98102a3 89b38e08 89b37000 00000000 NDIS!NdisMRegisterMiniportDriver+0x51
WARNING: Stack unwind information not available. Following frames may be wrong.
ba553814 805813af 89b38e08 89b37000 00000000 e1d6232!DriverEntry+0x20f
ba5538e4 8058f557 800003f4 00000000 ba553900 nt!IopLoadDriver+0x66d
ba553928 805e7b7f e159dad8 00000001 800003f4 nt!PipCallDriverAddDeviceQueryRoutine+0x235
ba553974 805e7f76 e159dabc 00000001 ba5539f0 nt!RtlpCallQueryRegistryRoutine+0x37d
ba5539fc 80590ddf 00000001 00000084 ba553a24 nt!RtlQueryRegistryValues+0x368
ba553ad0 8059229c 00000000 00000001 ba553d5c nt!PipCallDriverAddDevice+0x261
ba553d2c 805927a6 8bbd3dd8 00000001 00000000 nt!PipProcessDevNodeTree+0x1a4
ba553d54 804f6a32 00000003 8055b5c0 8056485c nt!PiProcessStartSystemDevices+0x3a
ba553d7c 80538921 00000000 00000000 8bbaf620 nt!PipDeviceActionWorker+0x170
ba553dac 805cffee 00000000 00000000 00000000 nt!ExpWorkerThread+0xef
ba553ddc 8054623e 80538832 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16


STACK_COMMAND:  kb

FOLLOWUP_IP:
NETIO!NmrpIsEqualNpiId+8
b9a6e9f7 8b10            mov     edx,dword ptr [eax]

SYMBOL_STACK_INDEX:  4

SYMBOL_NAME:  NETIO!NmrpIsEqualNpiId+8

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: NETIO

IMAGE_NAME:  NETIO.SYS

DEBUG_FLR_IMAGE_TIMESTAMP:  5b48ef86

IMAGE_VERSION:  6.1.7601.24208

FAILURE_BUCKET_ID:  0xD1_NETIO!NmrpIsEqualNpiId+8

BUCKET_ID:  0xD1_NETIO!NmrpIsEqualNpiId+8

ANALYSIS_SOURCE:  KM

FAILURE_ID_HASH_STRING:  km:0xd1_netio!nmrpisequalnpiid+8

FAILURE_ID_HASH:  {1d7ea187-17c8-1608-8471-24546162eb85}

Followup: MachineOwner
---------

1: kd> lm
start    end        module name
80062000 80072a80   pci        (deferred)             
80100000 8012a000   KDSTUB     (deferred)             
804d7000 806e5000   nt         (pdb symbols)          C:\Programme\Windows Kits\8.1\Debuggers\x86\sym\ntkrpamp.pdb\270E083F57714738A1895FE542CFB8DE1\ntkrpamp.pdb
806e5000 80705d80   hal        (deferred)             
80706000 8072e000   kdcom      (deferred)             
b980d000 b987a000   e1d6232    (export symbols)       e1d6232.sys
b987a000 b98a2000   HDAudBus   (deferred)             
b99bc000 b99bfd80   serenum    (deferred)             
b9a44000 b9a5de80   Mup        (deferred)             
b9a5e000 b9a9d000   NETIO      (pdb symbols)          C:\Programme\Windows Kits\8.1\Debuggers\x86\sym\netio.pdb\5BBB5169EEB04D0BB707BFA122C6C9442\netio.pdb
b9a9d000 b9ac8000   msrpc      (deferred)             
b9ac8000 b9aece80   ntoskrn8   (deferred)             
b9aed000 b9ba5000   NDIS       (pdb symbols)          C:\Programme\Windows Kits\8.1\Debuggers\x86\sym\ndis.pdb\B69DA90026554DB7963D1422C84157172\ndis.pdb
b9ba5000 b9c31d00   Ntfs       (deferred)             
b9c32000 b9c48b80   KSecDD     (deferred)             
b9c49000 b9c5af00   sr         (deferred)             
b9c5b000 b9c7ab00   fltMgr     (deferred)             
b9c7b000 b9f30000   iaStor     (deferred)             
b9f30000 b9f55700   dmio       (deferred)             
b9f56000 b9f74880   ftdisk     (deferred)             
b9f75000 b9fa7000   ACPI       (deferred)             
ba0a8000 ba0b1180   isapnp     (deferred)             
ba0b8000 ba0c2700   MountMgr   (deferred)             
ba0c8000 ba0d3000   PartMgr    (deferred)             
ba0d8000 ba0e4c80   VolSnap    (deferred)             
ba0e8000 ba0f8000   disk       (deferred)             
ba0f8000 ba104180   CLASSPNP   (deferred)             
ba118000 ba124d00   i8042prt   (deferred)             
ba128000 ba137c00   serial     (deferred)             
ba328000 ba32e800   firadisk   (deferred)             
ba388000 ba38e000   kbdclass   (deferred)             
ba398000 ba39da00   mouclass   (deferred)             
ba4b8000 ba4bb000   BOOTVID    (deferred)             
ba5a8000 ba5a9100   WMILIB     (deferred)             
ba5aa000 ba5ab700   dmload     (deferred)

Link to comment
Share on other sites

  • 2 weeks later...

Maybe you couldn't get ndis6 on xp with only ntoskrn8.sys.The ndis6 is much more different from ndis5,in old version of vmware tool the ndis 5 vmxnet3 driver don't in the same path with ndis 6 driver like video card driver xpdm and wddm.

IMG_20220813_162216.jpg

Link to comment
Share on other sites

  • 8 months later...

I checked Longhorn 5048 x32 NDSI.sys vs Windows 7 drivers, missed from ndis.sys:

Realtek:

Quote

NdisAcquireRWLockRead
NdisReleaseRWLock
NdisAcquireRWLockWrite
NdisCancelTimerObject
NdisFreeTimerObject
NdisFreeRWLock
NdisAllocateRWLock
NdisMOidRequestComplete
NdisGetProcessorInformationEx
NdisMQueueDpcEx
NdisAllocateTimerObject
NdisSetTimerObject

from kernel:

Quote

KeGetProcessorIndexFromNumber
ObDereferenceObjectDeferDelete
KeGetProcessorNumberFromIndex

on Intel i291:

Quote

NdisGroupActiveProcessorCount

on Atheros:

Quote

NdisMQueueDpcEx
NdisMOidRequestComplete
NdisMConfigMSIXTableEntry
NdisAllocateTimerObject
NdisSetTimerObject
NdisGetRssProcessorInformation
NdisCancelTimerObject
NdisFreeTimerObject
NdisCurrentGroupAndProcessor

netio.sys:

Quote

KeTestSpinLock

msrpc.sys:

Quote

ZwAlpcDeletePortSection
ZwAlpcDeleteSectionView
ZwAlpcSetInformation
ZwAlpcCreatePortSection
ZwAlpcCreateSectionView
ZwAlpcDisconnectPort
ZwImpersonateAnonymousToken
ZwRemoveIoCompletionEx
IoSetIoCompletionEx
ZwCreateIoCompletion
ZwAlpcQueryInformation
ZwAlpcCreateSecurityContext
ZwAlpcDeleteSecurityContext
ZwAlpcCancelMessage
ZwAlpcCreateResourceReserve

@Dietmar ,

You've wrotten v5048 has almost imports, i dont's see same
 

 

 

Edited by Mov AX, 0xDEAD
Link to comment
Share on other sites

@Mov AX, 0xDEAD

Can you add the missing function for Intel i219 win7 bit32 lan driver

NdisGroupActiveProcessorCount

so that I can test, if this lan i219 works with Longhorn 5048?

If it does not work, I think the whole idea will not work.

But may be, that we are lucky

Dietmar

 

 

Link to comment
Share on other sites

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...