--*/
#include "classp.h"
-#include "debug.h"
#ifdef ALLOC_PRAGMA
#pragma alloc_text(PAGE, InitializeTransferPackets)
while (fdoData->NumFreeTransferPackets < MIN_INITIAL_TRANSFER_PACKETS){
PTRANSFER_PACKET pkt = NewTransferPacket(Fdo);
if (pkt){
- InterlockedIncrement(&fdoData->NumTotalTransferPackets);
+ InterlockedIncrement((PLONG)&fdoData->NumTotalTransferPackets);
EnqueueFreeTransferPacket(Fdo, pkt);
}
else {
ASSERT(IsListEmpty(&fdoData->DeferredClientIrpList));
- while (pkt = DequeueFreeTransferPacket(Fdo, FALSE)){
+ while ((pkt = DequeueFreeTransferPacket(Fdo, FALSE))){
DestroyTransferPacket(pkt);
- InterlockedDecrement(&fdoData->NumTotalTransferPackets);
+ InterlockedDecrement((PLONG)&fdoData->NumTotalTransferPackets);
}
ASSERT(fdoData->NumTotalTransferPackets == 0);
ASSERT(!Pkt->SlistEntry.Next);
InterlockedPushEntrySList(&fdoData->FreeTransferPacketsList, &Pkt->SlistEntry);
- newNumPkts = InterlockedIncrement(&fdoData->NumFreeTransferPackets);
+ newNumPkts = InterlockedIncrement((PLONG)&fdoData->NumFreeTransferPackets);
ASSERT(newNumPkts <= fdoData->NumTotalTransferPackets);
/*
pktToDelete = DequeueFreeTransferPacket(Fdo, FALSE);
if (pktToDelete){
SimplePushSlist(&pktList, &pktToDelete->SlistEntry);
- InterlockedDecrement(&fdoData->NumTotalTransferPackets);
+ InterlockedDecrement((PLONG)&fdoData->NumTotalTransferPackets);
}
else {
DBGTRACE(ClassDebugTrace, ("Extremely unlikely condition (non-fatal): %d packets dequeued at once for Fdo %p. NumTotalTransferPackets=%d (1).", MaxWorkingSetTransferPackets, Fdo, fdoData->NumTotalTransferPackets));
}
KeReleaseSpinLock(&fdoData->SpinLock, oldIrql);
- while (slistEntry = SimplePopSlist(&pktList)){
+ while ((slistEntry = SimplePopSlist(&pktList))){
pktToDelete = CONTAINING_RECORD(slistEntry, TRANSFER_PACKET, SlistEntry);
DestroyTransferPacket(pktToDelete);
}
pktToDelete = DequeueFreeTransferPacket(Fdo, FALSE);
if (pktToDelete){
- InterlockedDecrement(&fdoData->NumTotalTransferPackets);
+ InterlockedDecrement((PLONG)&fdoData->NumTotalTransferPackets);
}
else {
DBGTRACE(ClassDebugTrace, ("Extremely unlikely condition (non-fatal): %d packets dequeued at once for Fdo %p. NumTotalTransferPackets=%d (2).", MinWorkingSetTransferPackets, Fdo, fdoData->NumTotalTransferPackets));
slistEntry->Next = NULL;
pkt = CONTAINING_RECORD(slistEntry, TRANSFER_PACKET, SlistEntry);
ASSERT(fdoData->NumFreeTransferPackets > 0);
- InterlockedDecrement(&fdoData->NumFreeTransferPackets);
+ InterlockedDecrement((PLONG)&fdoData->NumFreeTransferPackets);
}
else {
if (AllocIfNeeded){
*/
pkt = NewTransferPacket(Fdo);
if (pkt){
- InterlockedIncrement(&fdoData->NumTotalTransferPackets);
+ InterlockedIncrement((PLONG)&fdoData->NumTotalTransferPackets);
fdoData->DbgPeakNumTransferPackets = max(fdoData->DbgPeakNumTransferPackets, fdoData->NumTotalTransferPackets);
}
else {
PIRP OriginalIrp)
{
PFUNCTIONAL_DEVICE_EXTENSION fdoExt = Pkt->Fdo->DeviceExtension;
- PCLASS_PRIVATE_FDO_DATA fdoData = fdoExt->PrivateFdoData;
PCDB pCdb;
PAGED_CODE();
PIRP OriginalIrp)
{
PFUNCTIONAL_DEVICE_EXTENSION fdoExt = Pkt->Fdo->DeviceExtension;
- PCLASS_PRIVATE_FDO_DATA fdoData = fdoExt->PrivateFdoData;
PCDB pCdb;
PAGED_CODE();
PIRP OriginalIrp)
{
PFUNCTIONAL_DEVICE_EXTENSION fdoExt = Pkt->Fdo->DeviceExtension;
- PCLASS_PRIVATE_FDO_DATA fdoData = fdoExt->PrivateFdoData;
PCDB pCdb;
RtlZeroMemory(&Pkt->Srb, sizeof(SCSI_REQUEST_BLOCK));