qemu/hw/net/vmxnet_debug.h
<<
>>
Prefs
   1/*
   2 * QEMU VMWARE VMXNET* paravirtual NICs - debugging facilities
   3 *
   4 * Copyright (c) 2012 Ravello Systems LTD (http://ravellosystems.com)
   5 *
   6 * Developed by Daynix Computing LTD (http://www.daynix.com)
   7 *
   8 * Authors:
   9 * Dmitry Fleytman <dmitry@daynix.com>
  10 * Tamir Shomer <tamirs@daynix.com>
  11 * Yan Vugenfirer <yan@daynix.com>
  12 *
  13 * This work is licensed under the terms of the GNU GPL, version 2 or later.
  14 * See the COPYING file in the top-level directory.
  15 *
  16 */
  17
  18#ifndef QEMU_VMXNET_DEBUG_H
  19#define QEMU_VMXNET_DEBUG_H
  20
  21#define VMXNET_DEVICE_NAME "vmxnet3"
  22
  23#define VMXNET_DEBUG_WARNINGS
  24#define VMXNET_DEBUG_ERRORS
  25
  26#undef VMXNET_DEBUG_CB
  27#undef VMXNET_DEBUG_INTERRUPTS
  28#undef VMXNET_DEBUG_CONFIG
  29#undef VMXNET_DEBUG_RINGS
  30#undef VMXNET_DEBUG_PACKETS
  31#undef VMXNET_DEBUG_SHMEM_ACCESS
  32
  33#ifdef VMXNET_DEBUG_CB
  34#  define VMXNET_DEBUG_CB_ENABLED 1
  35#else
  36#  define VMXNET_DEBUG_CB_ENABLED 0
  37#endif
  38
  39#ifdef VMXNET_DEBUG_WARNINGS
  40#  define VMXNET_DEBUG_WARNINGS_ENABLED 1
  41#else
  42#  define VMXNET_DEBUG_WARNINGS_ENABLED 0
  43#endif
  44
  45#ifdef VMXNET_DEBUG_ERRORS
  46#  define VMXNET_DEBUG_ERRORS_ENABLED 1
  47#else
  48#  define VMXNET_DEBUG_ERRORS_ENABLED 0
  49#endif
  50
  51#ifdef VMXNET_DEBUG_CONFIG
  52#  define VMXNET_DEBUG_CONFIG_ENABLED 1
  53#else
  54#  define VMXNET_DEBUG_CONFIG_ENABLED 0
  55#endif
  56
  57#ifdef VMXNET_DEBUG_RINGS
  58#  define VMXNET_DEBUG_RINGS_ENABLED 1
  59#else
  60#  define VMXNET_DEBUG_RINGS_ENABLED 0
  61#endif
  62
  63#ifdef VMXNET_DEBUG_PACKETS
  64#  define VMXNET_DEBUG_PACKETS_ENABLED 1
  65#else
  66#  define VMXNET_DEBUG_PACKETS_ENABLED 0
  67#endif
  68
  69#ifdef VMXNET_DEBUG_INTERRUPTS
  70#  define VMXNET_DEBUG_INTERRUPTS_ENABLED 1
  71#else
  72#  define VMXNET_DEBUG_INTERRUPTS_ENABLED 0
  73#endif
  74
  75#ifdef VMXNET_DEBUG_SHMEM_ACCESS
  76#  define VMXNET_DEBUG_SHMEM_ACCESS_ENABLED 1
  77#else
  78#  define VMXNET_DEBUG_SHMEM_ACCESS_ENABLED 0
  79#endif
  80
  81#define VMW_SHPRN(fmt, ...)                                                   \
  82    do {                                                                      \
  83        if (VMXNET_DEBUG_SHMEM_ACCESS_ENABLED) {                              \
  84            printf("[%s][SH][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
  85                ## __VA_ARGS__);                                              \
  86       }                                                                      \
  87    } while (0)
  88
  89#define VMW_CBPRN(fmt, ...)                                                   \
  90    do {                                                                      \
  91        if (VMXNET_DEBUG_CB_ENABLED) {                                        \
  92            printf("[%s][CB][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
  93                ## __VA_ARGS__);                                              \
  94        }                                                                     \
  95    } while (0)
  96
  97#define VMW_PKPRN(fmt, ...)                                                   \
  98    do {                                                                      \
  99        if (VMXNET_DEBUG_PACKETS_ENABLED) {                                   \
 100            printf("[%s][PK][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 101                ## __VA_ARGS__);                                              \
 102        }                                                                     \
 103    } while (0)
 104
 105#define VMW_WRPRN(fmt, ...)                                                   \
 106    do {                                                                      \
 107        if (VMXNET_DEBUG_WARNINGS_ENABLED) {                                  \
 108            printf("[%s][WR][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 109                ## __VA_ARGS__);                                              \
 110        }                                                                     \
 111    } while (0)
 112
 113#define VMW_ERPRN(fmt, ...)                                                   \
 114    do {                                                                      \
 115        if (VMXNET_DEBUG_ERRORS_ENABLED) {                                    \
 116            printf("[%s][ER][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 117                ## __VA_ARGS__);                                              \
 118        }                                                                     \
 119    } while (0)
 120
 121#define VMW_IRPRN(fmt, ...)                                                   \
 122    do {                                                                      \
 123        if (VMXNET_DEBUG_INTERRUPTS_ENABLED) {                                \
 124            printf("[%s][IR][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 125                ## __VA_ARGS__);                                              \
 126        }                                                                     \
 127    } while (0)
 128
 129#define VMW_CFPRN(fmt, ...)                                                   \
 130    do {                                                                      \
 131        if (VMXNET_DEBUG_CONFIG_ENABLED) {                                    \
 132            printf("[%s][CF][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 133                ## __VA_ARGS__);                                              \
 134        }                                                                     \
 135    } while (0)
 136
 137#define VMW_RIPRN(fmt, ...)                                                   \
 138    do {                                                                      \
 139        if (VMXNET_DEBUG_RINGS_ENABLED) {                                     \
 140            printf("[%s][RI][%s]: " fmt "\n", VMXNET_DEVICE_NAME, __func__,   \
 141                ## __VA_ARGS__);                                              \
 142        }                                                                     \
 143    } while (0)
 144
 145#endif /* QEMU_VMXNET_DEBUG_H */
 146