netif_napi_add的语法为
netif_napi_add(struct net_device *dev, struct napi_struct *napi,int (*poll)(struct napi_struct *, int), int weight)
它用于初始化napi结构。问题是当我使用功能时
netif_napi_add(wdev,rnapi,rrpoll(rnapi,20),16);
它给了我关于编译时间的警告
warning: passing argument 3 of ‘netif_napi_add’ makes pointer from integer without a cast
/usr/src/linux-2.6.34.10-0.6/include/linux/netdevice.h:1089:6: note: expected ‘int (*)(struct napi_struct *, int)’ but argument is of type ‘int’
如何正确书写??
关于
karan
在调用时
netif_napi_add(wdev,rnapi,rrpoll(rnapi,20),16);
您正在呼叫rrpoll
。它应该作为指针传递:
netif_napi_add(wdev,rnapi,&rrpoll,16);
然后系统将为您调用rrpoll
。
在调用时
netif_napi_add(wdev,rnapi,rrpoll(rnapi,20),16);
U可以使用rrpoll而不是传递整个函数。即
netif_napi_add(wdev,rnapi,rrpoll,16);