Whamcloud - gitweb
Whoops, forgotten!
authorbraam <braam>
Sat, 11 Sep 1999 06:26:28 +0000 (06:26 +0000)
committerbraam <braam>
Sat, 11 Sep 1999 06:26:28 +0000 (06:26 +0000)
lustre/include/linux/obd_support.h [new file with mode: 0644]

diff --git a/lustre/include/linux/obd_support.h b/lustre/include/linux/obd_support.h
new file mode 100644 (file)
index 0000000..7313386
--- /dev/null
@@ -0,0 +1,86 @@
+#ifndef _OBD_SUPPORT
+#define _OBD_SUPPORT
+#include <linux/malloc.h>
+#include <linux/vmalloc.h>
+
+#define SIM_OBD_DEBUG
+
+/*
+ * Debug code
+ */
+/* global variables */
+extern int obd_debug_level;
+extern int obd_print_entry;
+
+/* debugging masks */
+#define D_PSDEV       1 /* debug information from psdev.c */
+#define D_INODE       2
+#define D_UNUSED2     4
+#define D_UNUSED3     8
+#define D_UNUSED4    16
+#define D_WARNING    32 /* misc warnings */
+#define D_EXT2       64 /* anything from ext2_debug */
+#define D_MALLOC    128 /* print malloc, free information */
+#define D_CACHE     256 /* cache-related items */
+#define D_INFO      512 /* general information, especially from interface.c */
+#define D_IOCTL    1024 /* ioctl related information */
+#define D_BLOCKS   2048 /* ext2 block allocation */
+#ifdef SIM_OBD_DEBUG
+#define CDEBUG(mask, format, a...)                                     \
+        do {                                                           \
+       if (obd_debug_level & mask) {                                   \
+               printk("(%s,l. %d): ",  __FUNCTION__, __LINE__);        \
+               printk(format, ## a); }                                 \
+       } while (0)
+
+#define ENTRY                                                                \
+        if (obd_print_entry)                                                 \
+                printk("Process %d entered %s\n", current->pid, __FUNCTION__)
+
+#define EXIT                                                                 \
+        if (obd_print_entry)                                                 \
+                printk("Process %d leaving %s\n", current->pid, __FUNCTION__)
+
+#else /* SIM_OBD_DEBUG */
+
+#       define CDEBUG ;
+#       define ENTRY ;
+#       define EXIT ;
+
+#endif /* SIM_OBD_DEBUG */
+
+
+
+#define OBD_ALLOC(ptr, cast, size)                                     \
+do {                                                                   \
+       if (size <= 4096) {                                             \
+               ptr = (cast)kmalloc((unsigned long) size, GFP_KERNEL); \
+                CDEBUG(D_MALLOC, "kmalloced: %x at %x.\n",             \
+                      (int) size, (int) ptr);                          \
+       } else {                                                        \
+               ptr = (cast)vmalloc((unsigned long) size);              \
+               CDEBUG(D_MALLOC, "vmalloced: %x at %x.\n",              \
+                      (int) size, (int) ptr);                          \
+       }                                                               \
+       if (ptr == 0) {                                                 \
+               printk("kernel malloc returns 0 at %s:%d\n",            \
+                      __FILE__, __LINE__);                             \
+       }                                                               \
+       memset(ptr, 0, size);                                           \
+} while (0)
+
+#define OBD_FREE(ptr,size)                             \
+do {                                                   \
+       if (size <= 4096) {                             \
+               kfree_s((ptr), (size));                 \
+               CDEBUG(D_MALLOC, "kfreed: %x at %x.\n", \
+                      (int) size, (int) ptr);          \
+       } else {                                        \
+               vfree((ptr));                           \
+               CDEBUG(D_MALLOC, "vfreed: %x at %x.\n", \
+                      (int) size, (int) ptr);          \
+       }                                               \
+} while (0)
+
+#endif