EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY回调函数 (netreceivescaling.h)

EvtNetAdapterReceiveScalingSetHashSecretKey 回调函数由客户端驱动程序实现,以设置网络接口控制器(NIC)的哈希密钥。

语法

EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY EvtNetAdapterReceiveScalingSetHashSecretKey;

NTSTATUS EvtNetAdapterReceiveScalingSetHashSecretKey(
  [_In_] NETADAPTER Adapter,
  [_In_] const NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY *HashSecretKey
)
{...}

参数

[_In_] Adapter

在上一次调用 NetAdapterCreate中获取的客户端驱动程序的 NETADAPTER 对象。

[_In_] HashSecretKey

指向包含用于验证哈希计算的哈希密钥的 NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY 结构的指针。

返回值

如果成功设置哈希密钥,则返回STATUS_SUCCESS。 否则,返回相应的 NTSTATUS 错误代码。

言论

通过设置 NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES 结构的相应成员,然后调用 NetAdapterSetReceiveScalingCapabilities来注册此回调函数的实现。 客户端驱动程序通常在启动 net 适配器时调用 NetAdapterSetReceiveScalingCapabilities,然后再调用 NetAdapterStart

在此回调中,NIC 客户端驱动程序将提供的哈希密钥编程到其硬件,以用于验证 RSS 哈希计算。

NTSTATUS
MyEvtNetAdapterReceiveScalingSetHashSecretKey(
	_In_	NETADAPTER 											Adapter,
	_In_	const NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY *	HashSecretKey	
)
{
	const UINT32* key = (const UINT32*)HashSecretKey->Key;
	if(!MyHardwareRssSetHashSecretKey)
	{
		WdfDeviceSetFailed(Adapter->WdfDevice, WdfDeviceFailedAttemptRestart);
		return STATUS_UNSUCCESSFUL;
	}

	return STATUS_SUCCESS;
}

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.25
最低 UMDF 版本 2.33
标头 netreceivescaling.h (include netadaptercx.h)
IRQL PASSIVE_LEVEL

另请参阅

NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY

NetAdapterCx 接收方缩放