UMSS for win 98
From: Gil Mizrahi (gil_at_giant-steps.com)
Date: 06/20/04
- Next message: alpha: "Re: windows = realtime?"
- Previous message: Amer Malas: "SetPrinterData"
- Messages sorted by: [ date ] [ thread ]
Date: Sun, 20 Jun 2004 11:44:33 +0200
Hi,All:
I used Microsoft release UMSS source code to develop our USB mass
storage driver for windows 98.
I found that When AEP_DEVICE_INQUIRY is received, I create IOP and submit
ILB request to
call my WDM driver.
Normally the ILB request will wait until my calldown complete routine is
complete, then I free the IOP.
But sometimes the ILB request will complete after calling my WDM driver(my
WDM driver don't issus complete).
When my calldown complete routine is complete, the system hang. Because the
IOP is free.
Does Anyone know what happen?
Gil
Source code:
((PISP)&IOPCreateISP)->ISP_func = ISP_CREATE_IOP;
IOPCreateISP.ISP_IOP_size = IOPLength;
IOPCreateISP.ISP_delta_to_ior = (ULONG)&(((pIOP)0L)->IOP_ior);
IOPCreateISP.ISP_i_c_flags = ISP_M_FL_MUST_SUCCEED;
// Call IOS
ILBService(&IOPCreateISP);
//
// Build our I/O request
//
// Call IOS to fill in SG descriptors, etc.
ILBCriteria(Iop);
// Submit request to IOS
ILBRequest(Iop, Dcb);
// Free our IOP
((PISP)&AllocISP)->ISP_func = ISP_DEALLOC_MEM;
((PISP_mem_dealloc)&AllocISP)->ISP_mem_ptr_da = (ULONG)Iop;
((ILB_internal_request_func)(UMSSPDR_Ilb.ILB_service_rtn))((PISP)&AllocISP);
- Next message: alpha: "Re: windows = realtime?"
- Previous message: Amer Malas: "SetPrinterData"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|