mirror of
https://github.com/adulau/aha.git
synced 2025-01-01 13:46:24 +00:00
Staging: hv: remove WAITEVENT typedef
Remove the WAITEVENT typedef and also replace HANDLE types that use the WaitEvent calls with struct osd_waitevent. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
b578852955
commit
aedb444a57
7 changed files with 28 additions and 32 deletions
|
@ -115,7 +115,7 @@ typedef struct _VMBUS_CHANNEL_MSGINFO {
|
|||
LIST_ENTRY SubMsgList;
|
||||
|
||||
/* Synchronize the request/response if needed */
|
||||
HANDLE WaitEvent;
|
||||
struct osd_waitevent *WaitEvent;
|
||||
|
||||
VMBUS_CHANNEL_MESSAGE_RESPONSE Response;
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ struct NETVSC_DEVICE {
|
|||
PNVSP_1_RECEIVE_BUFFER_SECTION ReceiveSections;
|
||||
|
||||
/* Used for NetVSP initialization protocol */
|
||||
HANDLE ChannelInitEvent;
|
||||
struct osd_waitevent *ChannelInitEvent;
|
||||
NVSP_MESSAGE ChannelInitPacket;
|
||||
|
||||
NVSP_MESSAGE RevokePacket;
|
||||
|
|
|
@ -61,7 +61,7 @@ typedef struct _RNDIS_DEVICE {
|
|||
|
||||
typedef struct _RNDIS_REQUEST {
|
||||
LIST_ENTRY ListEntry;
|
||||
HANDLE WaitEvent;
|
||||
struct osd_waitevent *WaitEvent;
|
||||
|
||||
/* FIXME: We assumed a fixed size response here. If we do ever need to handle a bigger response, */
|
||||
/* we can either define a max response message or add a response buffer variable above this field */
|
||||
|
|
|
@ -47,7 +47,7 @@ typedef struct _STORVSC_REQUEST_EXTENSION {
|
|||
struct hv_device *Device;
|
||||
|
||||
/* Synchronize the request/response if needed */
|
||||
HANDLE WaitEvent;
|
||||
struct osd_waitevent *WaitEvent;
|
||||
|
||||
VSTOR_PACKET VStorPacket;
|
||||
} STORVSC_REQUEST_EXTENSION;
|
||||
|
|
|
@ -102,7 +102,7 @@ struct VMBUS_MSGINFO {
|
|||
LIST_ENTRY MsgListEntry;
|
||||
|
||||
/* Synchronize the request/response if needed */
|
||||
HANDLE WaitEvent;
|
||||
struct osd_waitevent *WaitEvent;
|
||||
|
||||
/* The message itself */
|
||||
unsigned char Msg[0];
|
||||
|
|
|
@ -52,6 +52,12 @@ typedef struct {
|
|||
unsigned char Data[16];
|
||||
} GUID;
|
||||
|
||||
struct osd_waitevent {
|
||||
int condition;
|
||||
wait_queue_head_t event;
|
||||
};
|
||||
|
||||
|
||||
typedef void (*PFN_WORKITEM_CALLBACK)(void* context);
|
||||
typedef void (*PFN_TIMER_CALLBACK)(void* context);
|
||||
|
||||
|
@ -122,13 +128,13 @@ extern void TimerClose(HANDLE hTimer);
|
|||
extern int TimerStop(HANDLE hTimer);
|
||||
extern void TimerStart(HANDLE hTimer, u32 expirationInUs);
|
||||
|
||||
extern HANDLE WaitEventCreate(void);
|
||||
extern void WaitEventClose(HANDLE hWait);
|
||||
extern void WaitEventSet(HANDLE hWait);
|
||||
extern int WaitEventWait(HANDLE hWait);
|
||||
extern struct osd_waitevent *WaitEventCreate(void);
|
||||
extern void WaitEventClose(struct osd_waitevent *waitEvent);
|
||||
extern void WaitEventSet(struct osd_waitevent *waitEvent);
|
||||
extern int WaitEventWait(struct osd_waitevent *waitEvent);
|
||||
|
||||
/* If >0, hWait got signaled. If ==0, timeout. If < 0, error */
|
||||
extern int WaitEventWaitEx(HANDLE hWait, u32 TimeoutInMs);
|
||||
/* If >0, waitEvent got signaled. If ==0, timeout. If < 0, error */
|
||||
extern int WaitEventWaitEx(struct osd_waitevent *waitEvent, u32 TimeoutInMs);
|
||||
|
||||
|
||||
#define GetVirtualAddress Physical2LogicalAddr
|
||||
|
|
|
@ -55,12 +55,6 @@ typedef struct _TIMER {
|
|||
void* context;
|
||||
}TIMER;
|
||||
|
||||
|
||||
typedef struct _WAITEVENT {
|
||||
int condition;
|
||||
wait_queue_head_t event;
|
||||
} WAITEVENT;
|
||||
|
||||
typedef struct _WORKITEM {
|
||||
struct work_struct work;
|
||||
PFN_WORKITEM_CALLBACK callback;
|
||||
|
@ -220,9 +214,9 @@ void TimerClose(HANDLE hTimer)
|
|||
kfree(t);
|
||||
}
|
||||
|
||||
HANDLE WaitEventCreate(void)
|
||||
struct osd_waitevent *WaitEventCreate(void)
|
||||
{
|
||||
WAITEVENT* wait = kmalloc(sizeof(WAITEVENT), GFP_KERNEL);
|
||||
struct osd_waitevent *wait = kmalloc(sizeof(struct osd_waitevent), GFP_KERNEL);
|
||||
if (!wait)
|
||||
{
|
||||
return NULL;
|
||||
|
@ -233,36 +227,32 @@ HANDLE WaitEventCreate(void)
|
|||
return wait;
|
||||
}
|
||||
|
||||
void WaitEventClose(HANDLE hWait)
|
||||
void WaitEventClose(struct osd_waitevent *waitEvent)
|
||||
{
|
||||
WAITEVENT* waitEvent = (WAITEVENT* )hWait;
|
||||
kfree(waitEvent);
|
||||
}
|
||||
|
||||
void WaitEventSet(HANDLE hWait)
|
||||
void WaitEventSet(struct osd_waitevent *waitEvent)
|
||||
{
|
||||
WAITEVENT* waitEvent = (WAITEVENT* )hWait;
|
||||
waitEvent->condition = 1;
|
||||
wake_up_interruptible(&waitEvent->event);
|
||||
}
|
||||
|
||||
int WaitEventWait(HANDLE hWait)
|
||||
int WaitEventWait(struct osd_waitevent *waitEvent)
|
||||
{
|
||||
int ret=0;
|
||||
WAITEVENT* waitEvent = (WAITEVENT* )hWait;
|
||||
|
||||
ret= wait_event_interruptible(waitEvent->event,
|
||||
ret = wait_event_interruptible(waitEvent->event,
|
||||
waitEvent->condition);
|
||||
waitEvent->condition = 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
int WaitEventWaitEx(HANDLE hWait, u32 TimeoutInMs)
|
||||
int WaitEventWaitEx(struct osd_waitevent *waitEvent, u32 TimeoutInMs)
|
||||
{
|
||||
int ret=0;
|
||||
WAITEVENT* waitEvent = (WAITEVENT* )hWait;
|
||||
|
||||
ret= wait_event_interruptible_timeout(waitEvent->event,
|
||||
ret = wait_event_interruptible_timeout(waitEvent->event,
|
||||
waitEvent->condition,
|
||||
msecs_to_jiffies(TimeoutInMs));
|
||||
waitEvent->condition = 0;
|
||||
|
|
Loading…
Reference in a new issue