浏览代码

Staging: hv: remove function pointer typedefs from NetVscApi.h

function pointer typedefs are allowed in the kernel, but only if they
make sense, which they really do not here, as they are not passed around
with any kind of frequency.  So just spell them all out, it makes the
code smaller and easier to understand overall.

Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman 16 年之前
父节点
当前提交
211ccd6e0b
共有 2 个文件被更改,包括 9 次插入25 次删除
  1. 8 24
      drivers/staging/hv/NetVscApi.h
  2. 1 1
      drivers/staging/hv/RndisFilter.c

+ 8 - 24
drivers/staging/hv/NetVscApi.h

@@ -35,19 +35,6 @@
 /* Fwd declaration */
 struct hv_netvsc_packet;
 
-/* Data types */
-typedef int (*PFN_ON_OPEN)(struct hv_device *Device);
-typedef int (*PFN_ON_CLOSE)(struct hv_device *Device);
-
-typedef void (*PFN_QUERY_LINKSTATUS)(struct hv_device *Device);
-typedef int (*PFN_ON_SEND)(struct hv_device *dev,
-			   struct hv_netvsc_packet *packet);
-typedef void (*PFN_ON_SENDRECVCOMPLETION)(void *Context);
-
-typedef int (*PFN_ON_RECVCALLBACK)(struct hv_device *dev,
-				   struct hv_netvsc_packet *packet);
-typedef void (*PFN_ON_LINKSTATUS_CHANGED)(struct hv_device *dev, u32 Status);
-
 /* Represent the xfer page packet which contains 1 or more netvsc packet */
 struct xferpage_packet {
 	LIST_ENTRY ListEntry;
@@ -80,12 +67,12 @@ struct hv_netvsc_packet {
 		struct{
 			u64 ReceiveCompletionTid;
 			void *ReceiveCompletionContext;
-			PFN_ON_SENDRECVCOMPLETION OnReceiveCompletion;
+			void (*OnReceiveCompletion)(void *context);
 		} Recv;
 		struct{
 			u64 SendCompletionTid;
 			void *SendCompletionContext;
-			PFN_ON_SENDRECVCOMPLETION OnSendCompletion;
+			void (*OnSendCompletion)(void *context);
 		} Send;
 	} Completion;
 
@@ -114,17 +101,14 @@ struct netvsc_driver {
 	 * This is set by the caller to allow us to callback when we
 	 * receive a packet from the "wire"
 	 */
-	PFN_ON_RECVCALLBACK OnReceiveCallback;
-
-	PFN_ON_LINKSTATUS_CHANGED OnLinkStatusChanged;
+	int (*OnReceiveCallback)(struct hv_device *dev,
+				 struct hv_netvsc_packet *packet);
+	void (*OnLinkStatusChanged)(struct hv_device *dev, u32 Status);
 
 	/* Specific to this driver */
-	PFN_ON_OPEN OnOpen;
-	PFN_ON_CLOSE OnClose;
-	PFN_ON_SEND OnSend;
-	/* PFN_ON_RECVCOMPLETION OnReceiveCompletion; */
-
-	/* PFN_QUERY_LINKSTATUS QueryLinkStatus; */
+	int (*OnOpen)(struct hv_device *dev);
+	int (*OnClose)(struct hv_device *dev);
+	int (*OnSend)(struct hv_device *dev, struct hv_netvsc_packet *packet);
 
 	void *Context;
 };

+ 1 - 1
drivers/staging/hv/RndisFilter.c

@@ -73,7 +73,7 @@ struct rndis_request {
 
 struct rndis_filter_packet {
 	void *CompletionContext;
-	PFN_ON_SENDRECVCOMPLETION OnCompletion;
+	void (*OnCompletion)(void *context);
 	struct rndis_message Message;
 };