Help in NDIS Driver

Tech-Archive recommends: Fix windows errors by optimizing your registry



Hello,

I am writing virtual network i/f driver for a PCI card.
This driver also requires a IOCTL dispatch routine for few device
control those are not related to network subsystem.

I am using NdisMRegisterDevice() to register the IRP interfaces for
IRP_MJ_XXX.

The IOCTL routines used to read / write data from / to the PCI card
if device buffers are available. Otherwise, I am marking those IRPs
as pending, and set a completion routine for the IRP.

Once the device frees the memory, it will notify through an Interrupt,
where I am calling the IoCompleteRequest for any pending IRPs.

The system gives panic at this point(after IoCompleteRequest). The
failing module is noted as NT (from WinDBG).

I believe it may be due to the reason that the PDEVICE_OBJECT is not
proper, as, while
trying to access the device extension through PDEVICE_OBJECT parameter
of the IOCTL handler, the device extension's address was different
from the one I have allocated.

can anyone throw some pointers on this issue.

also are there any mechanisms if i write a wdm driver, how can I
communicate to NDIS ?

--
kans.

.



Relevant Pages

  • Re: Propagating the Pending Bit
    ... If a driver sets an IoCompletion routine for an IRP and then passes the IRP ...
    (microsoft.public.development.device.drivers)
  • User mode driver folly
    ... create an FDO and attach it to the driver ... The controller will have a Dos device name so I can open ... IOCTL to collect a pending IRP from the driver, ...
    (microsoft.public.development.device.drivers)
  • serial read problem
    ... I'm writing an upper filter driver on USBSER.sys from microsoft, ... One of the feature I need, in the Dispatch_IO routine of my filter, is ... IoCallDriver (deviceExtension->NextLowerDriver, Irp); ...
    (microsoft.public.development.device.drivers)
  • Re: serial read problem
    ... mscomm.ocx cannot handle pended async reads. ... I'm writing an upper filter driver on USBSER.sys from microsoft, ... One of the feature I need, in the Dispatch_IO routine of my filter, is ... IoCallDriver (deviceExtension->NextLowerDriver, Irp); ...
    (microsoft.public.development.device.drivers)
  • Re: User mode driver folly
    ... your driver. ... The controller will have a Dos device name so I can open ... IOCTL to collect a pending IRP from the driver, ...
    (microsoft.public.development.device.drivers)