Здравствуйте, altx, Вы писали:
A>Описание ситуации:
A>Под W2K SP4 запущен драйвер фильтра ФС. По control code посланному из user mode драйвер приатачивается к диску C: . Вся его работа на данном этапе заключается в подключении, собственно к диску, и пропускании через себя запросов, ничего при этом над ними не выполняя. Шаблоном для всех необходимых действий явл. функции из FileSpy.
A>Проблема:
A>Запуск проходит успешно, драйвер успешно приатачивается к диску C:, и, как можно проследить через softice, пропускает запросы далее, вниз по стеку. Однако, при попытке открытия любого файла, расположенного скажем на раб. столе, или создании нового, скажем, в блокноте появляется SoftIce с Page Fault 0Eh Fault=0000. В стеке вызовов последним вызовом явл ntoskrnl!NtReadFile. Прикрученный к драйверу driver verifier ничего не дает. После сворачивания softice по F5 система не выпадает в BSOD(!) а продолжает "работать" при 100%-ной загрузке CPU.
A>Что здесь не так?! С какой стороны смотреть на проблему, учитывая что до присоединения драйвера все работает нормально.
Ну в том, что система вижила после page fault'а ничего удивительного нет. Бывает такое. И как правило при этом у нее крутится вечный цикл внутри.
С устройством filespy я незнаком. Поэтому могу высказать только общие соображения:
0) Пропустить запрос совсем ничего не выполняя все-таки нельзя

Как минимум нужно Irp Stack Location поправить.
Вот такое там есть ?
// Get this driver out of the driver stack and get to the next driver as
// quickly as possible.
Irp->CurrentLocation++;
Irp->Tail.Overlay.CurrentStackLocation++;
// Now call the appropriate file system driver with the request.
return IoCallDriver( filterDevExt->lowerFSDeviceObject, Irp );
1) Почему упала... нужно смотреть на инструкции, вызвавшие падение. Разобраться, что это за кривой параметр и откуда он там взялся.
Если есть SRC (те самые), посмотреть, на чем упала и как мы могли дойти до такой жизни.
2) Какой был последний запрос ? Логи фильтр ведет ?
3) А сам filespy работает ?
Если работает, искать 33 различия.