summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext
diff options
context:
space:
mode:
authorAlin Serdean <aserdean@cloudbasesolutions.com>2017-07-14 04:40:56 +0000
committerBen Pfaff <blp@ovn.org>2017-08-02 11:30:44 -0700
commitb27b4e5f05a6f2e27bd5ef9b0078a5ccc6678b7c (patch)
tree9baae63d6a9404fb357f000dec683d9d46f46f0a /datapath-windows/ovsext
parentc5a12e53f86fedfe389c6ba66666026589006594 (diff)
downloadopenvswitch-b27b4e5f05a6f2e27bd5ef9b0078a5ccc6678b7c.tar.gz
datapath-windows: Use annotations instead for macros
We can safely use function annotations to instead of defining out own macros. Nuke implementation of `OVS_VERIFY_IRQL_LE` and OVS_VERIFY_IRQL (unused). Add function annotations to the functions which were using OVS_VERIFY_IRQL_LE`. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Shashank Ram <rams@vmware.com>
Diffstat (limited to 'datapath-windows/ovsext')
-rw-r--r--datapath-windows/ovsext/Debug.h18
-rw-r--r--datapath-windows/ovsext/Util.c7
-rw-r--r--datapath-windows/ovsext/Util.h6
3 files changed, 9 insertions, 22 deletions
diff --git a/datapath-windows/ovsext/Debug.h b/datapath-windows/ovsext/Debug.h
index 6de18125a..c17f0e9f8 100644
--- a/datapath-windows/ovsext/Debug.h
+++ b/datapath-windows/ovsext/Debug.h
@@ -74,22 +74,4 @@ VOID OvsLog(UINT32 level, UINT32 flag, CHAR *funcName,
#define OVS_LOG_WARN(_format, ...) \
OvsLog(OVS_DBG_WARN, OVS_DBG_MOD, __FUNCTION__, __LINE__, _format, __VA_ARGS__)
-#if DBG
-#define OVS_VERIFY_IRQL(_x) \
- if (KeGetCurrentIrql() != (KIRQL)_x) { \
- OVS_LOG_WARN("expected IRQL %u, actual IRQL: %u", \
- _x, KeGetCurrentIrql()); \
- }
-
-#define OVS_VERIFY_IRQL_LE(_x) \
- if (KeGetCurrentIrql() > (KIRQL)_x) { \
- OVS_LOG_WARN("expected IRQL <= %u, actual IRQL: %u", \
- _x, KeGetCurrentIrql()); \
- }
-
-#else
-#define OVS_VERIFY_IRQL(_x)
-#define OVS_VERIFY_IRQL_LE(_x)
-#endif
-
#endif /* __DEBUG_H_ */
diff --git a/datapath-windows/ovsext/Util.c b/datapath-windows/ovsext/Util.c
index 3c9b05281..abd38c2fe 100644
--- a/datapath-windows/ovsext/Util.c
+++ b/datapath-windows/ovsext/Util.c
@@ -25,10 +25,10 @@
extern NDIS_HANDLE gOvsExtDriverHandle;
+_Use_decl_annotations_
VOID*
OvsAllocateMemoryWithTag(size_t size, ULONG tag)
{
- OVS_VERIFY_IRQL_LE(DISPATCH_LEVEL);
return NdisAllocateMemoryWithTagPriority(gOvsExtDriverHandle,
(UINT32)size, tag, NormalPoolPriority);
}
@@ -40,19 +40,18 @@ OvsFreeMemoryWithTag(VOID *ptr, ULONG tag)
NdisFreeMemoryWithTagPriority(gOvsExtDriverHandle, ptr, tag);
}
+_Use_decl_annotations_
VOID *
OvsAllocateMemory(size_t size)
{
- OVS_VERIFY_IRQL_LE(DISPATCH_LEVEL);
return NdisAllocateMemoryWithTagPriority(gOvsExtDriverHandle,
(UINT32)size, OVS_MEMORY_TAG, NormalPoolPriority);
}
+_Use_decl_annotations_
VOID *
OvsAllocateAlignedMemory(size_t size, UINT16 align)
{
- OVS_VERIFY_IRQL_LE(DISPATCH_LEVEL);
-
ASSERT((align == 8) || (align == 16));
if ((align == 8) || (align == 16)) {
diff --git a/datapath-windows/ovsext/Util.h b/datapath-windows/ovsext/Util.h
index 7aa91ec95..f73c71f63 100644
--- a/datapath-windows/ovsext/Util.h
+++ b/datapath-windows/ovsext/Util.h
@@ -41,9 +41,15 @@
#define OVS_GENEVE_POOL_TAG 'GNVO'
#define OVS_IPFRAG_POOL_TAG 'FGVO'
+_IRQL_requires_max_(DISPATCH_LEVEL)
VOID *OvsAllocateMemory(size_t size);
+
+_IRQL_requires_max_(DISPATCH_LEVEL)
VOID *OvsAllocateMemoryWithTag(size_t size, ULONG tag);
+
+_IRQL_requires_max_(DISPATCH_LEVEL)
VOID *OvsAllocateAlignedMemory(size_t size, UINT16 align);
+
VOID *OvsAllocateMemoryPerCpu(size_t size, size_t count, ULONG tag);
VOID OvsFreeMemory(VOID *ptr);
VOID OvsFreeMemoryWithTag(VOID *ptr, ULONG tag);