Commit Graph
16 Commits
Author SHA1 Message Date
Yuri Benditovich c9558d88dc netkvm: fix table printout template in case of WPP
Trace procedure from header file does not work in case of WPP.
Fixing it by less complicated way than involving H file into
WPP processing: just define WPP procedure to be used from
the template. At the same time we define trace procedure that
does not add the functiona name, we use it in this template
printout and will also use in other places.

Signed-off-by: Yuri Benditovich <[email protected]>
2019-12-23 09:57:33 +02:00
Sameeh Jubran 30bec9cfd1 NetKVM: Clean variables after calling Dtor
Clearing the variables is important as calling the Dotr twice on the
same object will cause BSODs as a result of a double free for example.

Signed-off-by: Sameeh Jubran <[email protected]>
2018-04-16 13:12:51 +03:00
Sameeh Jubran 2cc38bac81 NetKVM: Integrate WPP Tracing
This commit integrates wpp tracing into builds higher than Vista as
Windows Vista requires much more configuration for wpp integration,
however, this integration may be introduced in the future.

The old style of Dprintf is still preserved by this commit and can be
enabled by disabling WPP tracing. This can be accomplished by commenting
the following line in WPPTrace.h:

Signed-off-by: Sameeh Jubran <[email protected]>
2017-12-12 21:53:43 +02:00
Ladi Prosek 9988783a0d netkvm: Remove #pragma warnings
Warning suppression #pragma's are no longer necessary and can be
deleted.

Signed-off-by: Ladi Prosek <[email protected]>
2017-08-07 11:39:20 +03:00
Yuri Benditovich 95c557a460 netkvm: Refactoring of CNdisRefCounter
Changed implementation of AddRef/Release
multiple reference counters and Set/Clear bitmask
via interlocked operation.

Signed-off-by: Yuri Benditovich <[email protected]>
2016-11-01 12:28:54 +11:00
Ladi Prosek 9bb2edb34b NetKVM: Cleanup, tweaks, and fixes
This commit removes some dead code, removes redundant pragma
warning directive, and fixes a couple of minor issues with the
code.
2016-07-17 18:10:35 +10:00
Yan Vugenfirer 65183a9f0a NetKVM: Fix compilation error with Visual Studio 2015
Signed-off-by: Yan Vugenfirer <[email protected]>
2016-07-17 15:27:23 +10:00
Yan Vugenfirer a7c5548bb0 NetKVM: Fix build errors with Visual Studio 2015
Signed-off-by: Yan Vugenfirer <[email protected]>
2016-07-17 15:27:06 +10:00
Dmitry Fleytman 978bdca459 NetKVM: Make ASSERT macros produce BSOD in debug builds
Signed-off-by: Dmitry Fleytman <[email protected]>
2016-05-30 19:17:08 +10:00
Yan Vugenfirer 17cca4d84e BZ#1263193: NetKVM: Fail to compile if trying to compile for pre-NDIS6.0
The main code base supports NDIS6.0 and up.

Signed-off-by: Yan Vugenfirer <[email protected]>
2015-10-15 15:11:24 +11:00
Yan Vugenfirer 15f4088bc6 BZ#1263193: NetKVM: Add ParaNdis_GetSystemCount function to return CPU amount in the system
In different versions of NDIS, different API is used due to usage of
CPU groups. Creat a function that will return CPU amoun in the system.

Signed-off-by: Yan Vugenfirer <[email protected]>
2015-10-15 14:53:36 +11:00
Joseph Hindin cfbb698455 NetKVM: BZ#1096505: disabling warning for KeBugCheck for debug build
Signed-off-by: Joseph Hindin <[email protected]>
2014-09-10 22:26:49 +10:00
Joseph Hindin c573ae0e41 NetKVM: BZ#1096505: Array constructor/destructor replaced with two-phase construction and disabled
Signed-off-by: Joseph Hindin <[email protected]>
2014-09-08 21:28:56 +10:00
Joseph Hindin 0eae1918d9 NetKVM: BZ#1096505: RSS-based map for selecting transfer queue
Signed-off-by: Joseph Hindin <[email protected]>
2014-09-02 09:17:17 +10:00
Joseph Hindin 336f8db65a NetKVM: BZ#1096505: RW Lock class, portable between NDIS 6.0 and NDIS 6.2
Signed-off-by: Joseph Hindin <[email protected]>
2014-07-02 17:25:11 +10:00
Dmitry Fleytman f0de846063 NetKVM: Introduce a couple of generic classes
1. CNdisAllocatable - C++ allocator for NDIS drivers
2. CNdisSpinlock - NDIS spinlock wrapper
3. CLockedContext - automatic scope locker
4. CNdisRefCounter - atomic reference counter for NDIS drivers
5. CRefCountingObject - reference-based object lifetime tracker
6. CNdisList - NDIS linked list wrapper
7. CDpcIrqlRaiser - automatic scope IRQL raiser
8. CNdisSharedMemory - NDIS shared memory allocator

These classes will be used for code C++-zation

Signed-off-by: Dmitry Fleytman <[email protected]>
2014-05-12 18:20:44 +10:00