aahmad Posted September 10, 2008 Posted September 10, 2008 Any ideas on why randomly our users unplug their flash drives and get blue screens. In the crash dumps it is pointing towards usbport.sys, we operate on Windows XP Sp2 and are up to date. Our desktops are HP DC 5100 MT, and laptops are IBM T61's. These blue screens occur on both systems. The bios is update in both systems. Thanks for any input!
cluberti Posted September 10, 2008 Posted September 10, 2008 There could be a few reasons, but the easiest/best way to do this would be for you to configure a machine for a complete memory dump, and then compress the resulting .dmp file after the next bugcheck and upload it somewhere we can look at it.
JetskiDude911 Posted September 10, 2008 Posted September 10, 2008 Hmm, that's odd. I've never seen a blue screen from removing a USB flash drive. I've seen it with other devices though.
TravisO Posted September 10, 2008 Posted September 10, 2008 Are you getting this error ( http://support.microsoft.com/kb/884868/ ), if so, install SP3. Heck you should be installing it anyways, even at a business.* 0x7E Stop error occurs after you disconnect your USB 2.0 flash storage device
aahmad Posted September 11, 2008 Author Posted September 11, 2008 (edited) This is a snippet of what a user gets when they remove the device I will post a full dump of one of the machines tomorrow.Thank you all for your help we are baffled!Driver: IRQL_Not_Less_or_EqualStop: 0x00000D1 0x08458BEC0x00000002, 0x00000001, USBPORT.SYS Address F81A02B5base at F819B000Some of this is his hand writing and can not read hope that points to something...** Another quick note this usb flash drive is an Olympus DS-4000 which has a 32 mb flash card in it and is the only item detected when connected to our pc's Edited September 11, 2008 by aahmad
cluberti Posted September 11, 2008 Posted September 11, 2008 So some driver on the system, be it usbport.sys or another, is at an IRQ level of DPC dispatch or higher (IRQL 2 or higher, up to IRQL 31) and referenced a memory address which was either not valid, or was paged to disk. This is not allowed in Windows due to the fact that having to page memory in requires the IRQL to be 1 or 0, meaning you would not drop down to that level until the driver that caused the page fault (running at the higher IRQL) is finished doing whatever it's doing, which it can't until the memory data it requested is paged in.... you see the problem, deadlock. Thus, Windows bugchecks to let you know a driver did something bad, rather than just deadlocking and leaving you guessing .Anyway, we'll need a dump - if it's usbport.sys or another driver, we should see it in the dump.
aahmad Posted December 3, 2008 Author Posted December 3, 2008 I know it has been a while, sorry for the delays but I have posted the dump file and compressed it in rar format under:http://www.filefactory.com/file/9522be/n/MEMORY_rarAlso I have tried Windows SP 3 and found the same issues.Thanks again!
iamtheky Posted December 3, 2008 Posted December 3, 2008 Did you try setting them as "optimize for quick removal". We had some POS laptops and a mass of POS thumbdrives that would take turns failing when optimized for performance, especially on those with minimal RAM.
aahmad Posted December 3, 2008 Author Posted December 3, 2008 Did you try setting them as "optimize for quick removal". We had some POS laptops and a mass of POS thumbdrives that would take turns failing when optimized for performance, especially on those with minimal RAM.I will try that today and see what happens. Thanks!
cluberti Posted December 4, 2008 Posted December 4, 2008 902973 You occasionally receive a "STOP 0x000000D1" error message when you start or shut down a Windows XP-based computer or a Windows Server 2003-based computerhttp://support.microsoft.com/default.aspx?...kb;EN-US;902973In debugging it, you're seeing a crash on USBPORT!USBPORT_RemoveBadReqIrp+0x6b:0: kd> !thread 80560ca0THREAD 80560ca0 Cid 0000.0000 Teb: 00000000 Win32Thread: 00000000 RUNNING on processor 0Not impersonatingOwning Process 0 Image: <Unknown>Attached Process 80560f00 Image: IdleWait Start TickCount 84691 Ticks: 96 (0:00:00:01.500)Context Switch Count 317428 UserTime 00:00:00.000KernelTime 00:20:35.984Stack Init 80556700 Current 8055644c Base 80556700 Limit 80553700 Call 0Priority 16 BasePriority 0 PriorityDecrement 0 DecrementCount 0ChildEBP RetAddr Args to Child 8055620c f81a02b5 badb0d00 00000004 8234f028 nt!_KiTrap0E+0x238 (FPO: [0,0] TrapFrame @ 8055620c)80556284 80514574 41426d72 806228bb 8234f0e0 USBPORT!USBPORT_RemoveBadReqIrp+0x6b (FPO: [Non-Fpo]) (CONV: stdcall)8055629c f81a0085 8234f102 00000000 8234f0e0 nt!IoCsqRemoveNextIrp+0x3d (FPO: [Non-Fpo]) (CONV: stdcall)805562bc f81a0650 8234f028 00000000 f81a04ec USBPORT!USBPORT_BadRequestFlush+0x3b (FPO: [Non-Fpo]) (CONV: stdcall)805562e0 804e2b4e 8234f70c 8234f028 87b967e9 USBPORT!USBPORT_DM_TimerDpc+0x164 (FPO: [Non-Fpo]) (CONV: stdcall)805563fc 804e207d 80560f00 ffdff9c0 ffdff000 nt!KiTimerListExpire+0x14b (FPO: [Non-Fpo]) (CONV: fastcall)80556428 804dcd22 80561300 00000000 00014b32 nt!KiTimerExpiration+0xb1 (FPO: [Non-Fpo]) (CONV: stdcall)80556450 804dcc07 00000000 0000000e 00000000 nt!KiRetireDpcList+0x61 (FPO: [0,1,0])80556454 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x28 (FPO: [0,0,0])0: kd> !irp 806228bb 1Irp is active with 3 stacks 3 is current (= 0x858bf640)No Mdl Thread 00000000: Irp stack trace. Flags = 00000000ThreadListEntry.Flink = 806228bbThreadListEntry.Blink = 806228bbIoStatus.Status = 00000103IoStatus.Information = 00000000RequestorMode = 00000000Cancel = 00CancelIrql = 0ApcEnvironment = 00UserIosb = 00000000UserEvent = 00000000Overlay.AsynchronousParameters.UserApcRoutine = 00000000Overlay.AsynchronousParameters.UserApcContext = 00000000Overlay.AllocationSize = 00000000 - 00000000CancelRoutine = 00000000UserBuffer = 00000000&Tail.Overlay.DeviceQueueEntry = 00cfcf6cTail.Overlay.Thread = 00000000Tail.Overlay.AuxiliaryBuffer = 00000000Tail.Overlay.ListEntry.Flink = 00000000Tail.Overlay.ListEntry.Blink = 00000000Tail.Overlay.CurrentStackLocation = 858bf640Tail.Overlay.OriginalFileObject = 00000000Tail.Apc = 00000000Tail.CompletionKey = 00000000cmd flg cl Device File Completion-Context[ 0, 0] 0 0 00000000 00000000 00000000-00000000 Args: 00000000 00000000 00000000 00000000[ 0, 0] 0 0 00000000 00000000 00000000-00000000 Args: 00000000 00000000 00000000 00000000>[ f, 0] 0 e1 857d4030 00000000 f6bed854-857d5d30 Success Error Cancel pending\Driver\usbuhci usbhub!USBH_ChangeIndicationArgs: 857d5e84 00000000 00220003 000000000: kd> !devext 857d5d30 USBHUBDump Hub Device Extension: 857d5d30 1 HUB HUBFDO 857d5c78 PDO 857d4030 TOS 857d4030 RootHub 857d4030 HcdTos 857d4030FLG: HUBFLAG_NEED_CLEANUP HUBFLAG_SUPPORT_WAKEUP Status: HubChange 0IRP 806228bb Buffer 85bc5660 len 8 Desc 858b5e80 PowerIrp 0 PendingWake 0 #PortWake 0 PortData 858cd3e0 size 2 Port 0 change 0 Status 100PORT_STATUS_POWER Port 0 change 0 Status 0Config Handle 859aeaf0 ConfigDesc 857db838PowerTable 0 1 3 4 4 4 4 Current 1Pending Req 2 ErrorCount 2 DeviceDesc 50005 PipInfo 1 Urb 857d5e50This is indeed a bug in the XP usbport.sys driver, but it's not fixed. You can avoid this by disabling the ability for XP to put any devices on the USB bus to sleep in the device manager under USB controllers, under each USB hub, properties, power management - uncheck "allow the computer to turn off this device to save power".
aahmad Posted December 4, 2008 Author Posted December 4, 2008 I will try on a user's machine at lunch today. You are a lifesaver if that fixes it!!Thank you!!!!
aahmad Posted December 22, 2008 Author Posted December 22, 2008 902973 You occasionally receive a "STOP 0x000000D1" error message when you start or shut down a Windows XP-based computer or a Windows Server 2003-based computerhttp://support.microsoft.com/default.aspx?...kb;EN-US;902973In debugging it, you're seeing a crash on USBPORT!USBPORT_RemoveBadReqIrp+0x6b:0: kd> !thread 80560ca0THREAD 80560ca0 Cid 0000.0000 Teb: 00000000 Win32Thread: 00000000 RUNNING on processor 0Not impersonatingOwning Process 0 Image: <Unknown>Attached Process 80560f00 Image: IdleWait Start TickCount 84691 Ticks: 96 (0:00:00:01.500)Context Switch Count 317428 UserTime 00:00:00.000KernelTime 00:20:35.984Stack Init 80556700 Current 8055644c Base 80556700 Limit 80553700 Call 0Priority 16 BasePriority 0 PriorityDecrement 0 DecrementCount 0ChildEBP RetAddr Args to Child 8055620c f81a02b5 badb0d00 00000004 8234f028 nt!_KiTrap0E+0x238 (FPO: [0,0] TrapFrame @ 8055620c)80556284 80514574 41426d72 806228bb 8234f0e0 USBPORT!USBPORT_RemoveBadReqIrp+0x6b (FPO: [Non-Fpo]) (CONV: stdcall)8055629c f81a0085 8234f102 00000000 8234f0e0 nt!IoCsqRemoveNextIrp+0x3d (FPO: [Non-Fpo]) (CONV: stdcall)805562bc f81a0650 8234f028 00000000 f81a04ec USBPORT!USBPORT_BadRequestFlush+0x3b (FPO: [Non-Fpo]) (CONV: stdcall)805562e0 804e2b4e 8234f70c 8234f028 87b967e9 USBPORT!USBPORT_DM_TimerDpc+0x164 (FPO: [Non-Fpo]) (CONV: stdcall)805563fc 804e207d 80560f00 ffdff9c0 ffdff000 nt!KiTimerListExpire+0x14b (FPO: [Non-Fpo]) (CONV: fastcall)80556428 804dcd22 80561300 00000000 00014b32 nt!KiTimerExpiration+0xb1 (FPO: [Non-Fpo]) (CONV: stdcall)80556450 804dcc07 00000000 0000000e 00000000 nt!KiRetireDpcList+0x61 (FPO: [0,1,0])80556454 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x28 (FPO: [0,0,0])0: kd> !irp 806228bb 1Irp is active with 3 stacks 3 is current (= 0x858bf640)No Mdl Thread 00000000: Irp stack trace. Flags = 00000000ThreadListEntry.Flink = 806228bbThreadListEntry.Blink = 806228bbIoStatus.Status = 00000103IoStatus.Information = 00000000RequestorMode = 00000000Cancel = 00CancelIrql = 0ApcEnvironment = 00UserIosb = 00000000UserEvent = 00000000Overlay.AsynchronousParameters.UserApcRoutine = 00000000Overlay.AsynchronousParameters.UserApcContext = 00000000Overlay.AllocationSize = 00000000 - 00000000CancelRoutine = 00000000UserBuffer = 00000000&Tail.Overlay.DeviceQueueEntry = 00cfcf6cTail.Overlay.Thread = 00000000Tail.Overlay.AuxiliaryBuffer = 00000000Tail.Overlay.ListEntry.Flink = 00000000Tail.Overlay.ListEntry.Blink = 00000000Tail.Overlay.CurrentStackLocation = 858bf640Tail.Overlay.OriginalFileObject = 00000000Tail.Apc = 00000000Tail.CompletionKey = 00000000cmd flg cl Device File Completion-Context[ 0, 0] 0 0 00000000 00000000 00000000-00000000 Args: 00000000 00000000 00000000 00000000[ 0, 0] 0 0 00000000 00000000 00000000-00000000 Args: 00000000 00000000 00000000 00000000>[ f, 0] 0 e1 857d4030 00000000 f6bed854-857d5d30 Success Error Cancel pending\Driver\usbuhci usbhub!USBH_ChangeIndicationArgs: 857d5e84 00000000 00220003 000000000: kd> !devext 857d5d30 USBHUBDump Hub Device Extension: 857d5d30 1 HUB HUBFDO 857d5c78 PDO 857d4030 TOS 857d4030 RootHub 857d4030 HcdTos 857d4030FLG: HUBFLAG_NEED_CLEANUP HUBFLAG_SUPPORT_WAKEUP Status: HubChange 0IRP 806228bb Buffer 85bc5660 len 8 Desc 858b5e80 PowerIrp 0 PendingWake 0 #PortWake 0 PortData 858cd3e0 size 2 Port 0 change 0 Status 100PORT_STATUS_POWER Port 0 change 0 Status 0Config Handle 859aeaf0 ConfigDesc 857db838PowerTable 0 1 3 4 4 4 4 Current 1Pending Req 2 ErrorCount 2 DeviceDesc 50005 PipInfo 1 Urb 857d5e50This is indeed a bug in the XP usbport.sys driver, but it's not fixed. You can avoid this by disabling the ability for XP to put any devices on the USB bus to sleep in the device manager under USB controllers, under each USB hub, properties, power management - uncheck "allow the computer to turn off this device to save power".Unfortunately, today was the day of bluescreen, all the users with the fix or without bluescreened when they removed their devices from the cradle. Any help is much appreciated, thanks!
cluberti Posted December 23, 2008 Posted December 23, 2008 Well, considering it's a bug, I'd say call Microsoft. Not much we can do about bugs in Windows code other than try to avoid the codepath, but apparently you are not able to do so. Sorry, but at least the call should be free .
redxii Posted December 23, 2008 Posted December 23, 2008 (edited) I found only one KB article with your symptoms and cause, however it only applied to Server 2003 w/o any service packs.Here's something you can try: the latest usb files. KB949033 has the latest usbport.sys and other usb drivers for XP SP2: http://support.microsoft.com/kb/949033The particular article doesn't describe your problem, but it is a QFE update, MS is always fixing bugs and releasing cumulative fixes for them under the "QFE" (non-security updates) branch, so this particular one has that fix and many more. However they get less testing, but it's worth a try; it probably can't get any worse when your users already getting a STOP error and potentially losing their work. There is a link at the top, "View and request hotfix downloads", they'll send it to your email. It's free. Edited December 23, 2008 by redxii
aahmad Posted December 23, 2008 Author Posted December 23, 2008 I found only one KB article with your symptoms and cause, however it only applied to Server 2003 w/o any service packs.Here's something you can try: the latest usb files. KB949033 has the latest usbport.sys and other usb drivers for XP SP2: http://support.microsoft.com/kb/949033The particular article doesn't describe your problem, but it is a QFE update, MS is always fixing bugs and releasing cumulative fixes for them under the "QFE" (non-security updates) branch, so this particular one has that fix and many more. However they get less testing, but it's worth a try; it probably can't get any worse when your users already getting a STOP error and potentially losing their work. There is a link at the top, "View and request hotfix downloads", they'll send it to your email. It's free.Unfortunately we are having these issues in both SP3 and SP2. Time to upgrade to Vista maybe???
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now