diff options
| author | Yang You (UU) <[email protected]> | 2025-12-09 11:03:15 -0800 |
|---|---|---|
| committer | Yang You (UU) <[email protected]> | 2025-12-09 11:03:15 -0800 |
| commit | a3e68cdfb094c7c5cf4f2a12b8be248053313d87 (patch) | |
| tree | 7a4dc05a8e83719618c941eb5c6bd4de1a7b8d5f /network | |
| parent | eb4a87e545f33af410b15c6c86100c165c0eda2a (diff) | |
fix the TX Queue not create issue
Diffstat (limited to 'network')
3 files changed, 9 insertions, 32 deletions
diff --git a/network/netadaptercx/netvadapterlibrary/Interface/netvadapter.h b/network/netadaptercx/netvadapterlibrary/Interface/netvadapter.h index b8474a9b..a572fcbc 100644 --- a/network/netadaptercx/netvadapterlibrary/Interface/netvadapter.h +++ b/network/netadaptercx/netvadapterlibrary/Interface/netvadapter.h @@ -9,8 +9,8 @@ #define NETV_NUMBER_OF_QUEUES 1 -#define NETV_SUPPORT_RSS FALSE // RSS not supported due to ENL limitations -#define NETV_SUPPORT_TX_DEMUXING FALSE // TX Demuxing not supported due to ENL limitations +//#define NETV_SUPPORT_RSS FALSE // RSS not supported due to ENL limitations +//#define NETV_SUPPORT_TX_DEMUXING // TX Demuxing not supported due to ENL limitations // supported filters #define NETV_SUPPORTED_FILTERS ( \ @@ -21,11 +21,6 @@ NetPacketFilterFlagAllMulticast) -NTSTATUS -ConfigureAndStartAdapter( - _In_ NETADAPTER Adapter - ); - EVT_NET_ADAPTER_CREATE_TXQUEUE CreateTxQueue; EVT_NET_ADAPTER_CREATE_RXQUEUE diff --git a/network/netadaptercx/netvadapterlibrary/code/adapter.cpp b/network/netadaptercx/netvadapterlibrary/code/adapter.cpp index 5dc530ea..880f970d 100644 --- a/network/netadaptercx/netvadapterlibrary/code/adapter.cpp +++ b/network/netadaptercx/netvadapterlibrary/code/adapter.cpp @@ -470,22 +470,6 @@ NTSTATUS NetvAdapter::ConfigureDataCapabilities() RETURN_STATUS_SUCCESS(); } -_Use_decl_annotations_ -NTSTATUS -ConfigureAndStartAdapter( - NETADAPTER Adapter - ) -{ - auto adapter = NetvAdapterGetContextFromWDFObject(Adapter); - RETURN_IF_NOT_STATUS_SUCCESS( - adapter->ConfigureDataCapabilities()); - - RETURN_IF_NOT_STATUS_SUCCESS( - NetAdapterStart(Adapter)); - - RETURN_STATUS_SUCCESS(); -} - NTSTATUS NetvAdapter::NetvAdapterReadAddress() { diff --git a/network/netadaptercx/netvadapterlibrary/code/enl.cpp b/network/netadaptercx/netvadapterlibrary/code/enl.cpp index fb763330..a02fd43f 100644 --- a/network/netadaptercx/netvadapterlibrary/code/enl.cpp +++ b/network/netadaptercx/netvadapterlibrary/code/enl.cpp @@ -546,13 +546,12 @@ EnlCreateQueue( } // Create WDF spinlock for the queue, parent to the queue's WDF handle - { - WDF_OBJECT_ATTRIBUTES attributes; - WDF_OBJECT_ATTRIBUTES_INIT(&attributes); - attributes.ParentObject = enlQueue->Queue->m_handle; - status = WdfSpinLockCreate(&attributes, &enlQueue->Spinlock); - NT_ASSERT(NT_SUCCESS(status)); - } + WDF_OBJECT_ATTRIBUTES attributes; + WDF_OBJECT_ATTRIBUTES_INIT(&attributes); + attributes.ParentObject = enlQueue->Queue->m_handle; + status = WdfSpinLockCreate(&attributes, &enlQueue->Spinlock); + NT_ASSERT(NT_SUCCESS(status)); + EnlpResumeThread(&enlLink->EnlThread); @@ -668,10 +667,9 @@ EnlIsPortActive( { ENLP_PORT* port = &EnlLink->Ports[PortIndex]; ENLP_QUEUE* txq = &port->TxQueue[0]; - ENLP_QUEUE* rxq = &port->RxQueue[0]; NT_FRE_ASSERT(PortIndex < ENLP_PORT_COUNT); - return (txq->Queue == nullptr && rxq->Queue == nullptr) ? FALSE : TRUE; + return (txq->Queue == nullptr) ? FALSE : TRUE; } _IRQL_requires_max_(PASSIVE_LEVEL) |
