iPXE
pending.h
Go to the documentation of this file.
1 #ifndef _IPXE_PENDING_H
2 #define _IPXE_PENDING_H
3 
4 /** @file
5  *
6  * Pending operations
7  *
8  */
9 
10 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11 
12 /** A pending operation */
14  /** Pending count */
15  unsigned int count;
16 };
17 
18 /**
19  * Check if an operation is pending
20  *
21  * @v pending Pending operation
22  * @ret is_pending Operation is pending
23  */
24 static inline int is_pending ( struct pending_operation *pending ) {
25  return ( pending->count != 0 );
26 }
27 
28 extern int pending_total;
29 
30 /**
31  * Check if any operations are pending
32  *
33  * @ret have_pending Some operations are pending
34  */
35 static inline int have_pending ( void ) {
36  return ( pending_total != 0 );
37 }
38 
39 extern void pending_get ( struct pending_operation *pending );
40 extern void pending_put ( struct pending_operation *pending );
41 
42 #endif /* _IPXE_PENDING_H */
int pending_total
Total count of pending operations.
Definition: pending.c:38
uint32_t pending
Pending events.
Definition: hyperv.h:12
void pending_get(struct pending_operation *pending)
Mark an operation as pending.
Definition: pending.c:45
void pending_put(struct pending_operation *pending)
Mark an operation as no longer pending.
Definition: pending.c:58
static int is_pending(struct pending_operation *pending)
Check if an operation is pending.
Definition: pending.h:24
static int have_pending(void)
Check if any operations are pending.
Definition: pending.h:35
A pending operation.
Definition: pending.h:13
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
unsigned int count
Pending count.
Definition: pending.h:15