diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-12-07 03:18:22 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-12-07 03:18:22 -0500 |
commit | 456c38f9682645cbb0537cb4e16848a28c1d3a76 (patch) | |
tree | aca78a18e318281a45e93ea3617c7b51b4e5febc /net/wanrouter | |
parent | 905eee008b5440e30186ab72c238ec8cb2886f74 (diff) |
[WANROUTER]: Kill kmalloc debugging code.
It duplicates what SLAB debug can do already.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/wanrouter')
-rw-r--r-- | net/wanrouter/wanmain.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/net/wanrouter/wanmain.c b/net/wanrouter/wanmain.c index 316211d9f17d..769cdd62c1bb 100644 --- a/net/wanrouter/wanmain.c +++ b/net/wanrouter/wanmain.c | |||
@@ -62,63 +62,6 @@ | |||
62 | 62 | ||
63 | #define KMEM_SAFETYZONE 8 | 63 | #define KMEM_SAFETYZONE 8 |
64 | 64 | ||
65 | /***********FOR DEBUGGING PURPOSES********************************************* | ||
66 | static void * dbg_kmalloc(unsigned int size, int prio, int line) { | ||
67 | int i = 0; | ||
68 | void * v = kmalloc(size+sizeof(unsigned int)+2*KMEM_SAFETYZONE*8,prio); | ||
69 | char * c1 = v; | ||
70 | c1 += sizeof(unsigned int); | ||
71 | *((unsigned int *)v) = size; | ||
72 | |||
73 | for (i = 0; i < KMEM_SAFETYZONE; i++) { | ||
74 | c1[0] = 'D'; c1[1] = 'E'; c1[2] = 'A'; c1[3] = 'D'; | ||
75 | c1[4] = 'B'; c1[5] = 'E'; c1[6] = 'E'; c1[7] = 'F'; | ||
76 | c1 += 8; | ||
77 | } | ||
78 | c1 += size; | ||
79 | for (i = 0; i < KMEM_SAFETYZONE; i++) { | ||
80 | c1[0] = 'M'; c1[1] = 'U'; c1[2] = 'N'; c1[3] = 'G'; | ||
81 | c1[4] = 'W'; c1[5] = 'A'; c1[6] = 'L'; c1[7] = 'L'; | ||
82 | c1 += 8; | ||
83 | } | ||
84 | v = ((char *)v) + sizeof(unsigned int) + KMEM_SAFETYZONE*8; | ||
85 | printk(KERN_INFO "line %d kmalloc(%d,%d) = %p\n",line,size,prio,v); | ||
86 | return v; | ||
87 | } | ||
88 | static void dbg_kfree(void * v, int line) { | ||
89 | unsigned int * sp = (unsigned int *)(((char *)v) - (sizeof(unsigned int) + KMEM_SAFETYZONE*8)); | ||
90 | unsigned int size = *sp; | ||
91 | char * c1 = ((char *)v) - KMEM_SAFETYZONE*8; | ||
92 | int i = 0; | ||
93 | for (i = 0; i < KMEM_SAFETYZONE; i++) { | ||
94 | if ( c1[0] != 'D' || c1[1] != 'E' || c1[2] != 'A' || c1[3] != 'D' | ||
95 | || c1[4] != 'B' || c1[5] != 'E' || c1[6] != 'E' || c1[7] != 'F') { | ||
96 | printk(KERN_INFO "kmalloced block at %p has been corrupted (underrun)!\n",v); | ||
97 | printk(KERN_INFO " %4x: %2x %2x %2x %2x %2x %2x %2x %2x\n", i*8, | ||
98 | c1[0],c1[1],c1[2],c1[3],c1[4],c1[5],c1[6],c1[7] ); | ||
99 | } | ||
100 | c1 += 8; | ||
101 | } | ||
102 | c1 += size; | ||
103 | for (i = 0; i < KMEM_SAFETYZONE; i++) { | ||
104 | if ( c1[0] != 'M' || c1[1] != 'U' || c1[2] != 'N' || c1[3] != 'G' | ||
105 | || c1[4] != 'W' || c1[5] != 'A' || c1[6] != 'L' || c1[7] != 'L' | ||
106 | ) { | ||
107 | printk(KERN_INFO "kmalloced block at %p has been corrupted (overrun):\n",v); | ||
108 | printk(KERN_INFO " %4x: %2x %2x %2x %2x %2x %2x %2x %2x\n", i*8, | ||
109 | c1[0],c1[1],c1[2],c1[3],c1[4],c1[5],c1[6],c1[7] ); | ||
110 | } | ||
111 | c1 += 8; | ||
112 | } | ||
113 | printk(KERN_INFO "line %d kfree(%p)\n",line,v); | ||
114 | v = ((char *)v) - (sizeof(unsigned int) + KMEM_SAFETYZONE*8); | ||
115 | kfree(v); | ||
116 | } | ||
117 | |||
118 | #define kmalloc(x,y) dbg_kmalloc(x,y,__LINE__) | ||
119 | #define kfree(x) dbg_kfree(x,__LINE__) | ||
120 | *****************************************************************************/ | ||
121 | |||
122 | /* | 65 | /* |
123 | * Function Prototypes | 66 | * Function Prototypes |
124 | */ | 67 | */ |