Running a....
PIV1.9
512 MB PC 133
Intel board --D850EMV2
Win XP pro SPK1
30GB IBM deskstar
Ok...I got a new (brand new) HP psc 2210 multifunction printer.....I take it out of the box...as I cut the tape....I am greeted with a "designed for windows XP"....I install the software as per the poster...following it STEP by STEP...get up to step 6 and I connect the power....ok...connect the USB...and as expected ...widows detects a new device...then 5 seconds later.... :no: :no: (you know what happens next...the BSOD...yes folks it is still alive in XP..in case anyone missed it...) and the blue screen says.... NO_More_IRP_Stack_locations
I check HP site and one of the recommendations are ...change the drive for the universal serial bus driver form ver ba to ab ...done...still BSOD
SO being the pro HP guy and a reseller I call my dedicated techsupport number...they of course dont even try to help...not my area (there is no more customer service) I get bounced to the consumer que....after 30 minutes of hold...I get a young lady who determines in 5 seconds I have a windows XP issue
I say but my other USB devices are fine....nope IRQ's are a windows issue...I turned around and said NO it is a IRP..she puts me on hold....10 minutes later she gets on and tells me to search google...all I find is info about developing drivers....I ask for a second opion and her supervisor gets on the phone and with in 5 more seconds says....yea this is the FIRST time seeing this problem....it is definitly a windows problem....
So searching DOgpile come up with the following...
anyone into translating it...or coming up with other solutions...
http://www.osr.com/resources_ifsfaq.shtml#Q51
Q51 I am getting NO_MORE_IRP_STACK_LOCATIONS as a stop code. How do I fix this?
This error occurs because your driver calls IoCallDriver but there are no additional stack locations available within the IRP. As a result, the IRP is likely to already be damaged. The maximum number of I/O stack locations can be exceeded for several possible reasons:
· The caller created an IRP with an insufficient number of stack locations. In earlier versions of Windows NT this situation would arise with OS components that pre-allocated fixed-size IRPs. Typically, this was resolved by changing some component-specific registry entry to increase the fixed size.
· A driver in the stack has the incorrect value in the StackSize field of the DEVICE_OBJECT. In this case, the driver should be modified to report the correct size. Normally, filter drivers need not worry about this because IoAttachDeviceToDeviceStackSafe and IoAttachDevice set up this field by adding one to the value of the device to which they attach. Drivers that do not filter are responsible for determining the correct value for this field.
· A filter driver can cause this problem by incorrectly copying the stack location. Drivers should use IoCopyCurrentIrpStackLocationToNext. In older versions of Windows NT where this call is not available, it is possible to use the newer implementation (which is a macro) or to call RtlCopyMemory and follow this with a call to IoSetCompletionRoutine. If no completion routine is needed, the three Boolean values should be set to FALSE so that the completion routine is not called.
In newer versions of Windows this has become an unusual error because most filter drivers function properly in this regard. The most common manifestation of this problem remains kernel mode components that utilize fixed-size IRPs, where they detect the improper size and return an error back to the caller, rather than risk running out of stack locations. In such a case, the resolution is normally to change the registry parameters to increase the fixed size.
PIV1.9
512 MB PC 133
Intel board --D850EMV2
Win XP pro SPK1
30GB IBM deskstar
Ok...I got a new (brand new) HP psc 2210 multifunction printer.....I take it out of the box...as I cut the tape....I am greeted with a "designed for windows XP"....I install the software as per the poster...following it STEP by STEP...get up to step 6 and I connect the power....ok...connect the USB...and as expected ...widows detects a new device...then 5 seconds later.... :no: :no: (you know what happens next...the BSOD...yes folks it is still alive in XP..in case anyone missed it...) and the blue screen says.... NO_More_IRP_Stack_locations
I check HP site and one of the recommendations are ...change the drive for the universal serial bus driver form ver ba to ab ...done...still BSOD
SO being the pro HP guy and a reseller I call my dedicated techsupport number...they of course dont even try to help...not my area (there is no more customer service) I get bounced to the consumer que....after 30 minutes of hold...I get a young lady who determines in 5 seconds I have a windows XP issue
I say but my other USB devices are fine....nope IRQ's are a windows issue...I turned around and said NO it is a IRP..she puts me on hold....10 minutes later she gets on and tells me to search google...all I find is info about developing drivers....I ask for a second opion and her supervisor gets on the phone and with in 5 more seconds says....yea this is the FIRST time seeing this problem....it is definitly a windows problem....
So searching DOgpile come up with the following...
anyone into translating it...or coming up with other solutions...
http://www.osr.com/resources_ifsfaq.shtml#Q51
Q51 I am getting NO_MORE_IRP_STACK_LOCATIONS as a stop code. How do I fix this?
This error occurs because your driver calls IoCallDriver but there are no additional stack locations available within the IRP. As a result, the IRP is likely to already be damaged. The maximum number of I/O stack locations can be exceeded for several possible reasons:
· The caller created an IRP with an insufficient number of stack locations. In earlier versions of Windows NT this situation would arise with OS components that pre-allocated fixed-size IRPs. Typically, this was resolved by changing some component-specific registry entry to increase the fixed size.
· A driver in the stack has the incorrect value in the StackSize field of the DEVICE_OBJECT. In this case, the driver should be modified to report the correct size. Normally, filter drivers need not worry about this because IoAttachDeviceToDeviceStackSafe and IoAttachDevice set up this field by adding one to the value of the device to which they attach. Drivers that do not filter are responsible for determining the correct value for this field.
· A filter driver can cause this problem by incorrectly copying the stack location. Drivers should use IoCopyCurrentIrpStackLocationToNext. In older versions of Windows NT where this call is not available, it is possible to use the newer implementation (which is a macro) or to call RtlCopyMemory and follow this with a call to IoSetCompletionRoutine. If no completion routine is needed, the three Boolean values should be set to FALSE so that the completion routine is not called.
In newer versions of Windows this has become an unusual error because most filter drivers function properly in this regard. The most common manifestation of this problem remains kernel mode components that utilize fixed-size IRPs, where they detect the improper size and return an error back to the caller, rather than risk running out of stack locations. In such a case, the resolution is normally to change the registry parameters to increase the fixed size.