[ros-dev] [ros-diffs] [cgutman] 37713: - Merge aicom-network-fixes up to r37712
Aleksey Bragin
aleksey at reactos.org
Sat Nov 29 10:20:30 CET 2008
Another way of doing this (stylistically) would be:
switch (Type)
{
case NdisWorkItemRequest:
if (Adapter->NdisMiniportBlock.PendingRequest ||
MiniGetFirstWorkItem(Adapter, NdisWorkItemRequest))
Busy = TRUE;
break
case ...:
}
On Nov 29, 2008, at 4:51 AM, cgutman at svn.reactos.org wrote:
> Author: cgutman
> Date: Fri Nov 28 19:51:19 2008
> New Revision: 37713
>
> +BOOLEAN
> +MiniIsBusy(
> + PLOGICAL_ADAPTER Adapter,
> + NDIS_WORK_ITEM_TYPE Type)
> +{
> + BOOLEAN Busy = FALSE;
> + KIRQL OldIrql;
> +
> + KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
> +
> + if (Type == NdisWorkItemRequest &&
> + (Adapter->NdisMiniportBlock.PendingRequest ||
> MiniGetFirstWorkItem(Adapter, NdisWorkItemRequest)))
> + {
> + Busy = TRUE;
> + }
> + else if (Type == NdisWorkItemSend &&
> + (Adapter->NdisMiniportBlock.FirstPendingPacket ||
> MiniGetFirstWorkItem(Adapter, NdisWorkItemSend)))
> + {
> + Busy = TRUE;
> + }
> + else if (Type == NdisWorkItemResetRequested &&
> + (Adapter->NdisMiniportBlock.ResetStatus ==
> NDIS_STATUS_PENDING || MiniGetFirstWorkItem(Adapter,
> NdisWorkItemResetRequested)))
> + {
> + Busy = TRUE;
> + }
> +
> + KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
> +
> + return Busy;
> +}
More information about the Ros-dev
mailing list