include KERN_* constant in printk() calls in mm/slab.c
Subsystems (2)
PATCH 1/1 include KERN_* constant in printk() calls in mm/slab.c
hi,
this is my first janitorial. please let me know your suggestions if you notice something incorrect or improvable.
the patch is against v2.6.21-rc6
---
include KERN_* constant in printk() calls in mm/slab.c
---
mm/slab.c +9 -9
@@ -1732,9 +1732,9 @@ static void dump_line(char *data, int offset, int limit) error = data[offset + i]; bad_count++; } -printk (" %02x" , (unsigned char )data[offset + i]); +printk (KERN_ERR " %02x" , (unsigned char )data[offset + i]); } -printk ("\n" ); +printk (KERN_ERR "\n" );if (bad_count =1 ) { error ^=POISON_FREE ;
@@ -1770,7 +1770,7 @@ static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) *dbg_userword(cachep, objp));print_symbol ("(%s)" , (unsigned long )*dbg_userword (cachep, objp)); -printk ("\n" ); +printk (KERN_ERR "\n" ); } realobj = (char *)objp +obj_offset (cachep); size =obj_size (cachep);
@@ -2151,13 +2151,13 @@ kmem_cache_create (const char *name, size_t size, size_t align,*/ res =probe_kernel_address (pc->name, tmp);if (res) { -printk ("SLAB: cache with size %d has lost its name\n" , +printk (KERN_WARNING "SLAB: cache with size %d has lost its name\n" , pc->buffer_size);continue ; }if (!strcmp (pc->name, name)) { -printk ("kmem_cache_create: duplicate cache %s\n" , name); +printk (KERN_WARNING "kmem_cache_create: duplicate cache %s\n" , name);dump_stack (); goto oops; }
@@ -2294,7 +2294,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, left_over =calculate_slab_order (cachep, size, align, flags);if (!cachep->num) { -printk ("kmem_cache_create: couldn't create cache %s.\n" , name); +printk (KERN_WARNING "kmem_cache_create: couldn't create cache %s.\n" , name);kmem_cache_free (&cache_cache, cachep); cachep =NULL ; goto oops;
@@ -2929,10 +2929,10 @@ bad: i <sizeof (*slabp) + cachep->num *sizeof (kmem_bufctl_t); i++) { if (i % 16 = 0) -printk ("\n%03x:" , i); -printk (" %02x" , ((unsigned char *)slabp)[i]); +printk (KERN_ERR "\n%03x:" , i); +printk (KERN_ERR " %02x" , ((unsigned char *)slabp)[i]); } -printk ("\n" ); +printk (KERN_ERR "\n" );BUG (); } }
Signature · 14 lines
Matthias Kaehlcke
Linux Application Developer
Barcelona
El trabajo es el refugio de los que no tienen nada que hacer
(Oscar Wilde)
.''`.
using free software / Debian GNU/Linux | http://debian.org : :' :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-
_______________________________________________
Kernel-janitors mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/kernel-janitorsRe: [KJ] [PATCH] include KERN_* constant in printk() calls in
Quoted 20 lines · Matthias Kaehlcke
hi,
this is my first janitorial. please let me know your suggestions if you notice something incorrect or improvable.
the patch is against v2.6.21-rc6
---
include KERN_* constant in
printk()calls inmm/slab.cSigned-off-by Matthias Kaehlcke <[email protected]>---
mm/slab.c +0
-0
mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1736
Quoted 6 lines
mm/slab.c +1
-1@@ -1732,9 +1732,9 @@ static void dump_line(char *data, int offset, int limit) error = data[offset + i]; bad_count++; } -printk (" %02x" , (unsigned char )data[offset + i]); +printk (KERN_ERR " %02x" , (unsigned char )data[offset + i]); }
This one is wrong. It's printing a bunch of numbers in a loop, so with your change it'll print for example...
KERN_ERR 00 KERN_ERR 01 KERN_ERR 02 KERN_ERR etc etc..
you only want the KERN_ERR at the beginning of each line.
mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1737
Quoted 2 lines
mm/slab.c +1
-1-printk ("\n" ); +printk (KERN_ERR "\n" );
Likewise, only needed at the beginning of a line.
mm/slab.c static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) · line 1773
Quoted 8 lines
mm/slab.c +1
-1if (bad_count =1 ) { error ^=POISON_FREE ;@@ -1770,7 +1770,7 @@ static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) *dbg_userword(cachep, objp));print_symbol ("(%s)" , (unsigned long )*dbg_userword (cachep, objp)); -printk ("\n" ); +printk (KERN_ERR "\n" );
same.
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2157
Quoted 11 lines
mm/slab.c +1
-1realobj = (char *)objp +obj_offset (cachep); size =obj_size (cachep);@@ -2151,13 +2151,13 @@ kmem_cache_create (const char *name, size_t size, size_t align,*/ res =probe_kernel_address (pc->name, tmp);if (res) { -printk ("SLAB: cache with size %d has lost its name\n" , +printk (KERN_WARNING "SLAB: cache with size %d has lost its name\n" , pc->buffer_size);continue ; }
this one looks ok, though KERN_ERR imo.
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2163
Quoted 6 lines
mm/slab.c +1
-1if (!strcmp (pc->name, name)) { -printk ("kmem_cache_create: duplicate cache %s\n" , name); +printk (KERN_WARNING "kmem_cache_create: duplicate cache %s\n" , name);dump_stack (); goto oops; }
ditto
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2300
Quoted 9 lines
mm/slab.c +1
-1@@ -2294,7 +2294,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, left_over =calculate_slab_order (cachep, size, align, flags);if (!cachep->num) { -printk ("kmem_cache_create: couldn't create cache %s.\n" , name); +printk (KERN_WARNING "kmem_cache_create: couldn't create cache %s.\n" , name);kmem_cache_free (&cache_cache, cachep); cachep =NULL ; goto oops;
ditto
mm/slab.c bad: · line 2936
Quoted 12 lines
mm/slab.c +3
-3@@ -2929,10 +2929,10 @@ bad: i <sizeof (*slabp) + cachep->num *sizeof (kmem_bufctl_t); i++) { if (i % 16 = 0) -printk ("\n%03x:" , i); -printk (" %02x" , ((unsigned char *)slabp)[i]); +printk (KERN_ERR "\n%03x:" , i); +printk (KERN_ERR " %02x" , ((unsigned char *)slabp)[i]); } -printk ("\n" ); +printk (KERN_ERR "\n" );BUG ();
In a loop again, so not ok.
Dave
Signature · 5 lines
http://www.codemonkey.org.uk _______________________________________________ Kernel-janitors mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/kernel-janitors
Re: [KJ] [PATCH] include KERN_* constant in printk() calls in
In reply to Matthias KaehlckeEl Mon, Apr 09, 2007 at 04:02:09PM -0400 Dave Jones ha dit:
Quoted 31 lines · Matthias Kaehlcke
Quoted 20 lines
hi,
this is my first janitorial. please let me know your suggestions if you notice something incorrect or improvable.
the patch is against v2.6.21-rc6
---
include KERN_* constant in
printk()calls inmm/slab.cSigned-off-by Matthias Kaehlcke <[email protected]>---
mm/slab.c +0
-0mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1736
Quoted 6 lines
mm/slab.c +1
-1@@ -1732,9 +1732,9 @@ static void dump_line(char *data, int offset, int limit) error = data[offset + i]; bad_count++; } -printk (" %02x" , (unsigned char )data[offset + i]); +printk (KERN_ERR " %02x" , (unsigned char )data[offset + i]); }This one is wrong. It's printing a bunch of numbers in a loop, so with your change it'll print for example...
Quoted 3 lines
KERN_ERR00KERN_ERR01KERN_ERR02KERN_ERRetc etc..you only want the
KERN_ERRat the beginning of each line.
thanks for the information, i didn't realize printk works this way
Quoted 16 lines
mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1737
Quoted 2 lines
mm/slab.c +1
-1-printk ("\n" ); +printk (KERN_ERR "\n" );Likewise, only needed at the beginning of a line.
mm/slab.c static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) · line 1773
Quoted 8 lines
mm/slab.c +1
-1if (bad_count =1 ) { error ^=POISON_FREE ;@@ -1770,7 +1770,7 @@ static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) *dbg_userword(cachep, objp));print_symbol ("(%s)" , (unsigned long )*dbg_userword (cachep, objp)); -printk ("\n" ); +printk (KERN_ERR "\n" );same.
Quoted 13 lines
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2157
Quoted 11 lines
mm/slab.c +1
-1realobj = (char *)objp +obj_offset (cachep); size =obj_size (cachep);@@ -2151,13 +2151,13 @@ kmem_cache_create (const char *name, size_t size, size_t align,*/ res =probe_kernel_address (pc->name, tmp);if (res) { -printk ("SLAB: cache with size %d has lost its name\n" , +printk (KERN_WARNING "SLAB: cache with size %d has lost its name\n" , pc->buffer_size);continue ; }this one looks ok, though
KERN_ERRimo.
i was in doubt also and finally put KERN_WARNING cause it's the current default. but i agree, will change it to KERN_ERR
Quoted 21 lines
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2163
Quoted 6 lines
mm/slab.c +1
-1if (!strcmp (pc->name, name)) { -printk ("kmem_cache_create: duplicate cache %s\n" , name); +printk (KERN_WARNING "kmem_cache_create: duplicate cache %s\n" , name);dump_stack (); goto oops; }ditto
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2300
Quoted 9 lines
mm/slab.c +1
-1@@ -2294,7 +2294,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, left_over =calculate_slab_order (cachep, size, align, flags);if (!cachep->num) { -printk ("kmem_cache_create: couldn't create cache %s.\n" , name); +printk (KERN_WARNING "kmem_cache_create: couldn't create cache %s.\n" , name);kmem_cache_free (&cache_cache, cachep); cachep =NULL ; goto oops;ditto
Quoted 14 lines
mm/slab.c bad: · line 2936
Quoted 12 lines
mm/slab.c +3
-3@@ -2929,10 +2929,10 @@ bad: i <sizeof (*slabp) + cachep->num *sizeof (kmem_bufctl_t); i++) { if (i % 16 = 0) -printk ("\n%03x:" , i); -printk (" %02x" , ((unsigned char *)slabp)[i]); +printk (KERN_ERR "\n%03x:" , i); +printk (KERN_ERR " %02x" , ((unsigned char *)slabp)[i]); } -printk ("\n" ); +printk (KERN_ERR "\n" );BUG ();In a loop again, so not ok.
thanks a lot for your comments
Signature · 15 lines
Matthias Kaehlcke
Linux Application Developer
Barcelona
The salvation of mankind lies only in making everything the concern of all
(Alexander Solzhenitsyn)
.''`.
using free software / Debian GNU/Linux | http://debian.org : :' :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-
_______________________________________________
Kernel-janitors mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/kernel-janitorsRe: [KJ] [PATCH] include KERN_* constant in printk() calls in
In reply to Matthias Kaehlckehere comes v0.02 of the patch, i hope it is more useful than the first one
---
include KERN_* constant in printk() calls in mm/slab.c
---
mm/slab.c +3 -3
@@ -2151,13 +2151,13 @@ kmem_cache_create (const char *name, size_t size, size_t align,*/ res =probe_kernel_address (pc->name, tmp);if (res) { -printk ("SLAB: cache with size %d has lost its name\n" , +printk (KERN_ERR "SLAB: cache with size %d has lost its name\n" , pc->buffer_size);continue ; }if (!strcmp (pc->name, name)) { -printk ("kmem_cache_create: duplicate cache %s\n" , name); +printk (KERN_ERR "kmem_cache_create: duplicate cache %s\n" , name);dump_stack (); goto oops; }
@@ -2294,7 +2294,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, left_over =calculate_slab_order (cachep, size, align, flags);if (!cachep->num) { -printk ("kmem_cache_create: couldn't create cache %s.\n" , name); +printk (KERN_ERR "kmem_cache_create: couldn't create cache %s.\n" , name);kmem_cache_free (&cache_cache, cachep); cachep =NULL ; goto oops;
El Mon, Apr 09, 2007 at 10:08:26PM +0200 Matthias Kaehlcke ha dit:
Quoted 110 lines
El Mon, Apr 09, 2007 at 04:02:09PM -0400 Dave Jones ha dit:
Quoted 31 lines · Matthias Kaehlcke
Quoted 20 lines
hi,
this is my first janitorial. please let me know your suggestions if you notice something incorrect or improvable.
the patch is against v2.6.21-rc6
---
include KERN_* constant in
printk()calls inmm/slab.cSigned-off-by Matthias Kaehlcke <[email protected]>---
mm/slab.c +0
-0mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1736
Quoted 6 lines
mm/slab.c +1
-1@@ -1732,9 +1732,9 @@ static void dump_line(char *data, int offset, int limit) error = data[offset + i]; bad_count++; } -printk (" %02x" , (unsigned char )data[offset + i]); +printk (KERN_ERR " %02x" , (unsigned char )data[offset + i]); }This one is wrong. It's printing a bunch of numbers in a loop, so with your change it'll print for example...
Quoted 3 lines
KERN_ERR00KERN_ERR01KERN_ERR02KERN_ERRetc etc..you only want the
KERN_ERRat the beginning of each line.thanks for the information, i didn't realize printk works this way
Quoted 16 lines
mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1737
Quoted 2 lines
mm/slab.c +1
-1-printk ("\n" ); +printk (KERN_ERR "\n" );Likewise, only needed at the beginning of a line.
mm/slab.c static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) · line 1773
Quoted 8 lines
mm/slab.c +1
-1if (bad_count =1 ) { error ^=POISON_FREE ;@@ -1770,7 +1770,7 @@ static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines) *dbg_userword(cachep, objp));print_symbol ("(%s)" , (unsigned long )*dbg_userword (cachep, objp)); -printk ("\n" ); +printk (KERN_ERR "\n" );same.
Quoted 13 lines
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2157
Quoted 11 lines
mm/slab.c +1
-1realobj = (char *)objp +obj_offset (cachep); size =obj_size (cachep);@@ -2151,13 +2151,13 @@ kmem_cache_create (const char *name, size_t size, size_t align,*/ res =probe_kernel_address (pc->name, tmp);if (res) { -printk ("SLAB: cache with size %d has lost its name\n" , +printk (KERN_WARNING "SLAB: cache with size %d has lost its name\n" , pc->buffer_size);continue ; }this one looks ok, though
KERN_ERRimo.i was in doubt also and finally put
KERN_WARNINGcause it's the current default. but i agree, will change it toKERN_ERRQuoted 21 lines
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2162
Quoted 6 lines
mm/slab.c +1
-1if (!strcmp (pc->name, name)) { -printk ("kmem_cache_create: duplicate cache %s\n" , name); +printk (KERN_WARNING "kmem_cache_create: duplicate cache %s\n" , name);dump_stack (); goto oops; }ditto
mm/slab.c kmem_cache_create (const char *name, size_t size, size_t align, · line 2300
Quoted 9 lines
mm/slab.c +1
-1@@ -2294,7 +2294,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, left_over =calculate_slab_order (cachep, size, align, flags);if (!cachep->num) { -printk ("kmem_cache_create: couldn't create cache %s.\n" , name); +printk (KERN_WARNING "kmem_cache_create: couldn't create cache %s.\n" , name);kmem_cache_free (&cache_cache, cachep); cachep =NULL ; goto oops;ditto
Quoted 14 lines
mm/slab.c bad: · line 2936
Quoted 12 lines
mm/slab.c +3
-3@@ -2929,10 +2929,10 @@ bad: i <sizeof (*slabp) + cachep->num *sizeof (kmem_bufctl_t); i++) { if (i % 16 = 0) -printk ("\n%03x:" , i); -printk (" %02x" , ((unsigned char *)slabp)[i]); +printk (KERN_ERR "\n%03x:" , i); +printk (KERN_ERR " %02x" , ((unsigned char *)slabp)[i]); } -printk ("\n" ); +printk (KERN_ERR "\n" );BUG ();In a loop again, so not ok.
thanks a lot for your comments
Signature · 14 lines
Matthias Kaehlcke
Linux Application Developer
Barcelona
Comunicar bichos a <[email protected]>
(LANG=es_ES uname --help)
.''`.
using free software / Debian GNU/Linux | http://debian.org : :' :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-
_______________________________________________
Kernel-janitors mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/kernel-janitorsRe: [KJ] [PATCH] include KERN_* constant in printk() calls in
In reply to Matthias KaehlckeQuoted 13 lines · Dave Jones
mm/slab.c static void dump_line(char *data, int offset, int limit) · line 1736
Quoted 9 lines
mm/slab.c +1
-1@@ -1732,9 +1732,9 @@ static void dump_line(char *data, int offset, int limit) error = data[offset + i]; bad_count++; } -printk (" %02x" , (unsigned char )data[offset + i]); +printk (KERN_ERR " %02x" , (unsigned char )data[offset + i]); }This one is wrong. It's printing a bunch of numbers in a loop, so with your change it'll print for example...
Quoted 3 lines
KERN_ERR00KERN_ERR01KERN_ERR02KERN_ERRetc etc..you only want the
KERN_ERRat the beginning of each line.
Another point is that if you have two CPUs calling printk, the output can get interleaved if you don't print everything in one go. If you come across something like this (printing things in a loop), it's a good idea to take a hard look at it and see if you can see a way to do it without the loop so you can print everything on one line.