Using Driver Allocated IRP pool, in this case IRP completion routine can return STATUS_SUCCESS

Hi All,

I am creating IRP pool using LookAsideList and using it in my driver since IRP is being used frequently in my source.
I have a question regarding the return status from the IRP completion.

When driver maintained IRP pool was used, is it valid for the completion routine to return STATUS_SUCCESS to the IO manager?
After reading this article from OSR^id=83.htm it seems returning STATUS_SUCCESS is not a valid return code when driver created irp pool used.

Snippet from the OSR article
“One common instance where a completion routine is used is when a driver creates and manages its own IRP pool. In this case, the I/O completion routine traps the IRP, returns it to the driver’s private IRP pool, and then returns STATUS_MORE_PROCESSING _REQUIRED to the I/O Manager. This causes the I/O Manager to immediately cease processing the IRP completion and leaves the IRP with the driver.”


As you most certainly already know, from reading the rules of the forum, cross-posting is not allowed.

By definition, this is a cross-post.

Therefore, I am locking this thread.

Please don’t repeat this behavior.