Windows Vista may stop responding when you install software that adds legacy network drivers

Article translations Article translations
Article ID: 934611 - View products that this article applies to.
Expand all | Collapse all

On This Page

Symptoms

When you install a software that adds legacy network drivers on a computer that is running Windows Vista, Windows Vista may stop responding.

Cause

This problem occurs because a thread holds the TdxDeviceList lock and sends a request to the critical queue. However, the critical queue is already full. Work items that are in this critical queue are waiting for the TdxDeviceList lock that is held by the thread.

Resolution

Service pack information

To resolve this problem, obtain the latest service pack for Windows Vista. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
935791 How to obtain the latest Windows Vista service pack

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

There are no prerequisites for installing this hotfix package.

Restart requirement

You do not have to restart your computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace any other previously-released hotfixes.

Registry information

To use one of the hotfixes in this package, you do not have to make any changes to the registry.

File information

Windows Vista, 32-bit versions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Tdx.sys6.0.6000.2057168,09603-Apr-200712:04x86
Windows Vista, 64-bit versions
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Tdx.sys6.0.6000.2057188,57603-Apr-200712:35x64
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

Workaround

To work around this problem, disconnect the computer from network. You can use one of the following methods to disconnect the computer from network:
  • Disable the network adapter on the computer.
  • Unplug the network cable from the computer.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Windows Vista Service Pack 1.

More information

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Call stack information

1: kd> ?? tdx!tdxdevicelist.Lock.OwnerThread
struct _KTHREAD * 0x841c4d78

1: kd> !thread 0x841c4d78
THREAD 841c4d78  Cid 0004.003c  Teb: 00000000 Win32Thread: 00000000 WAIT: (Executive) KernelMode Non-Alertable
    82fab5bc  NotificationEvent
Not impersonating
DeviceMap                 83408a30
Owning Process            84172ab0       Image:         System
Wait Start TickCount      91389          Ticks: 5071 (0:00:01:19.234)
Context Switch Count      5465             
UserTime                  00:00:00.000
KernelTime                00:00:00.187
Win32 Start Address nt!ExpWorkerThread (0x81c78d1b)
Stack Init 82fac000 Current 82fab3b0 Base 82fac000 Limit 82fa9000 Call 0
Priority 15 BasePriority 12 PriorityDecrement 0 IoPriority 2 PagePriority 5
ChildEBP RetAddr  Args to Child              
82fab3c8 81cac9cf 841c4e00 841c4d78 841c4e30 nt!KiSwapContext+0x26 (FPO: [Uses EBP] [0,0,4])
82fab404 81c29308 841c4d78 00000103 82fab56c nt!KiSwapThread+0x389 (CONV: fastcall)
82fab464 820ef6da 82fab5bc 00000000 00000000 nt!KeWaitForSingleObject+0x414 (CONV: stdcall)
82fab48c 82027771 00000000 00000000 00fab56c ndis!ndisQuerySetMiniport+0x184 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab5fc 82025c6d 84bb5488 84ce13a8 84a993f0 ndis!ndisIfGetMiniportStatistics+0x1f6 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab6c8 82027202 84a993f0 00020106 82fab6f0 ndis!ndisIfQueryObject+0x8bf (FPO: [Non-Fpo]) (CONV: stdcall)
82fab708 82024688 890c8ab0 91b0e7e8 82fab728 ndis!ndisNsiGetInterfaceRodInformation+0x4db (FPO: [Non-Fpo]) (CONV: stdcall)
82fab764 823a0a21 00fab7b0 81c7456e 82fab8c4 ndis!ndisNsiGetAllInterfaceInformation+0x2bf (FPO: [Non-Fpo]) (CONV: stdcall)
82fab818 823a885d 82fab828 00000000 00000000 NETIO!NsiEnumerateObjectsAllParametersEx+0x4eb (FPO: [Non-Fpo]) (CONV: stdcall)
82fab864 823a8780 00000001 00000001 823c7434 NETIO!NsiEnumerateObjectsAllParameters+0x79 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab8c8 823a9dac 00000001 823c7434 00000000 NETIO!NsiAllocateAndGetTable+0xee (FPO: [Non-Fpo]) (CONV: stdcall)
82fab948 823a9d43 00000001 00000000 82fab96c NETIO!InternalGetIfTable2Ex+0x60 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab95c 95147438 82fab96c 00000000 00000000 NETIO!GetIfTable2+0x11 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab970 95146adb 91b0d18c 00000008 95145898 srvnet!SrvNetWskFindLoopbackInterface+0x12 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab97c 95145898 91b0d18c 91af5098 95152000 srvnet!SrvNetWskEnableImplicitLoopbackInterface+0x14 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab994 95154143 00000008 951512c8 04000000 srvnet!SrvNetWskEnableInterface+0x99 (FPO: [Non-Fpo]) (CONV: stdcall)
82fab9cc 9515516f 00000001 91af5098 84700560 srvnet!SrvNetTdiNotifyChangesToNetBt+0xa6 (FPO: [Non-Fpo]) (CONV: stdcall)
82faba08 89c539db 00000001 91af5098 84700560 srvnet!SrvNetTdiPnPBindingHandler+0x159 (FPO: [Non-Fpo]) (CONV: stdcall)
82faba34 89c54000 89c561a0 84700560 00000001 TDI!TdiNotifyPnpClientList+0xdb (FPO: [Non-Fpo]) (CONV: stdcall)
82faba58 89c542f4 9695eb38 00000000 95a47848 TDI!TdiExecuteRequest+0x274 (FPO: [Non-Fpo]) (CONV: stdcall)
82faba90 89c54388 00af5058 0000000d 8c22e288 TDI!TdiHandleSerializedRequest+0x1aa (FPO: [Non-Fpo]) (CONV: stdcall)
82fabaac 8c227a7e 95a47848 95a47930 00000000 TDI!TdiRegisterDeviceObject+0x80 (FPO: [Non-Fpo]) (CONV: stdcall)
82fabbb4 8c228331 82fabc0c 00000000 82fabc00 tdx!TdxCreateAndRegisterDeviceObject+0x3de (FPO: [Non-Fpo]) (CONV: stdcall)
82fabc24 8c2285a9 00000000 00000000 8c800ab8 tdx!TdxProcessInterfaceChangeRoutine+0x1db (FPO: [Non-Fpo]) (CONV: stdcall)
82fabc40 823a62fa 8c22e494 82fabccc 82fabcd4 tdx!TdxNaInterfaceChangeEvent+0x7d (FPO: [Non-Fpo]) (CONV: stdcall)
82fabca8 8cb43417 82fabcc0 81fa4f00 891d97a0 NETIO!NsiParameterChange+0x73 (FPO: [Non-Fpo]) (CONV: stdcall)
82fabcf8 8cb45877 848d8df8 8c82c9e4 82fabd2c tcpip!IppNotifyInterfaceChangeAtPassive+0xb5 (FPO: [Non-Fpo]) (CONV: stdcall)
82fabd08 823a14cd 848d8df8 81cfde3c 8c800cc8 tcpip!IppCompartmentNotificationWorker+0x11 (FPO: [Non-Fpo]) (CONV: stdcall)
82fabd2c 81d8c88c 8c800cc8 8c82c9e4 8c82b208 NETIO!NetiopIoWorkItemRoutine+0x2f (FPO: [Non-Fpo]) (CONV: stdcall)
82fabd44 81c78e18 8c82b208 00000000 841c4d78 nt!IopProcessWorkItem+0x2d (CONV: stdcall)
82fabd7c 81e254a8 8c82b208 82fa0680 00000000 nt!ExpWorkerThread+0xfd (CONV: stdcall)
82fabdc0 81c9145e 81c78d1b 00000001 00000000 nt!PspSystemThreadStartup+0x9d (CONV: stdcall)
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16

1: kd> !exqueue
Dumping ExWorkerQueue: 81CFDE00

**** Critical WorkQueue( current = 0 maximum = 2 )
THREAD 841970b8  Cid 0004.001c  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c3020  Cid 0004.0020  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c3d78  Cid 0004.0024  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c3ad0  Cid 0004.0028  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c3828  Cid 0004.002c  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 890b4ad0  Cid 0004.0208  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 890b4828  Cid 0004.020c  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 847e95a0  Cid 0004.0db8  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 848b3d78  Cid 0004.03c4  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84ae9a40  Cid 0004.0ecc  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84b54798  Cid 0004.0978  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84bf7d78  Cid 0004.095c  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84abbd78  Cid 0004.04d0  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 8482d728  Cid 0004.09ec  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 847f44c0  Cid 0004.09c4  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84b51518  Cid 0004.0ea0  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 95b5f420  Cid 0004.0e54  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84ce2020  Cid 0004.08cc  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 91b0d570  Cid 0004.0bc0  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 84c75d78  Cid 0004.0af8  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 8c9c1950  Cid 0004.0e3c  Teb: 00000000 Win32Thread: 00000000 WAIT

PENDING: WorkerRoutine ndis!ndisWorkItemHandler (820ef005) Parameter 84915540
PENDING: WorkerRoutine ndis!ndisWorkItemHandler (820ef005) Parameter 849033a8

<snip>

PENDING: WorkerRoutine Ntfs!NtfsCheckUsnTimeOut (8232bf44) Parameter 00000000
PENDING: WorkerRoutine nt!IopProcessWorkItem (81d8c85f) Parameter 84757dd8
PENDING: WorkerRoutine nt!IopProcessWorkItem (81d8c85f) Parameter 95bee938

**** Delayed WorkQueue( current = 0 maximum = 2 )
THREAD 841c3580  Cid 0004.0030  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c32d8  Cid 0004.0034  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c4020  Cid 0004.0038  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c4d78  Cid 0004.003c  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c4ad0  Cid 0004.0040  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c4828  Cid 0004.0044  Teb: 00000000 Win32Thread: 00000000 WAIT
THREAD 841c4580  Cid 0004.0048  Teb: 00000000 Win32Thread: 00000000 WAIT

**** HyperCritical WorkQueue( current = 0 maximum = 2 )
THREAD 841c42d8  Cid 0004.004c  Teb: 00000000 Win32Thread: 00000000 WAIT

One of the critical work queue threads (The others all show the same stack as this one) -

1: kd> !thread 841970b8 
THREAD 841970b8  Cid 0004.001c  Teb: 00000000 Win32Thread: 00000000 WAIT: (Executive) KernelMode Non-Alertable
    8c22f308  Mutant - owning thread 841c4d78
Not impersonating
DeviceMap                 83408a30
Owning Process            84172ab0       Image:         System
Wait Start TickCount      91226          Ticks: 5234 (0:00:01:21.781)
Context Switch Count      2             
UserTime                  00:00:00.000
KernelTime                00:00:00.000
Win32 Start Address nt!ExpWorkerThread (0x81c78d1b)
Stack Init 82fd8000 Current 82fd7ae8 Base 82fd8000 Limit 82fd5000 Call 0
Priority 13 BasePriority 13 PriorityDecrement 0 IoPriority 2 PagePriority 5
ChildEBP RetAddr  Args to Child              
82fd7b00 81cac9cf 84197140 841970b8 84197170 nt!KiSwapContext+0x26 (FPO: [Uses EBP] [0,0,4])
82fd7b3c 81c29308 841970b8 8488d4f8 8488d508 nt!KiSwapThread+0x389 (CONV: fastcall)
82fd7b98 8c226e8a 8c22f308 00000000 00000000 nt!KeWaitForSingleObject+0x414 (CONV: stdcall)
82fd7bd0 8c2282ac 8488d4f8 8488d4f8 82fd7cd8 tdx!TdxProcessIfMediaStateChangeRoutine+0x32 (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7c34 8c2285a9 00000100 00000000 8c83afa0 tdx!TdxProcessInterfaceChangeRoutine+0x156 (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7c50 823a62fa 8c22e50c 82fd7cd8 82fd7ce0 tdx!TdxNaInterfaceChangeEvent+0x7d (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7cb8 820296b5 82fd7ccc 820d66c0 81fa4d90 NETIO!NsiParameterChange+0x73 (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7cf0 8202d629 95a58ab0 07000000 00060000 ndis!ndisNsiNotifyClientInterfaceChange+0x9d (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7d34 820ef013 848fbfc8 018fbfc8 82fd7d7c ndis!ndisNsiQueuedMiniportRodChangeNotification+0xb1 (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7d44 81c78e18 848fbfc8 00000000 841970b8 ndis!ndisWorkItemHandler+0xe (FPO: [Non-Fpo]) (CONV: stdcall)
82fd7d7c 81e254a8 848fbfc8 82fdc680 00000000 nt!ExpWorkerThread+0xfd (CONV: stdcall)
82fd7dc0 81c9145e 81c78d1b 00000000 00000000 nt!PspSystemThreadStartup+0x9d (CONV: stdcall)
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+

Properties

Article ID: 934611 - Last Review: June 21, 2014 - Revision: 5.0
Applies to
  • Windows Vista Enterprise 64-bit Edition
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate 64-bit Edition
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Ultimate
Keywords: 
kbautohotfix kbvistasp1fix kbexpertiseadvanced kbfix kbHotfixServer kbqfe KB934611

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com