I am writing a replication filter driver as a "minifilter."
In my CreatePreOp callback, I open a handle using FltCreateFile(...) at a
different location. During the read callbacks, I read the different location
as well.
Every once in a while, I get the following assertion failure right in the
middle (at least it seems to be the middle) of my ReadPreOp callback
*** Assertion failed: RxIsThisTheTopLevelIrp(NULL)
*** Source File: d:\xpsprtm\base\fs\rdr2\rdbss\ntfastio.c, line 100
Just before this assertion fails, it appears that the buffer in the request
(Data->Iopb->Parameters.Read.ReadBuffer) is NULL. As far as I know, this
buffer should not be null if the Read.Length parameter is not zero.
google searches for either of RxIsThisTheTopLevelIrp or ntfastio return no
results.
Any pointers will be greatly appreciated.
Thanks in advance,
-- RA