vsprintf: add infrastructure support for extended '%p' specifiers
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Jul 2008 23:24:57 +0000 (16:24 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Jul 2008 23:24:57 +0000 (16:24 -0700)
commit4d8a743cdd2690c0bc8d1b8cbd02cffb1ead849f
tree772c0e66fba248da8736edc4b633ddf294b86e8b
parent78a8bf69b32980879975f7e31d30386c50bfe851
vsprintf: add infrastructure support for extended '%p' specifiers

This expands the kernel '%p' handling with an arbitrary alphanumberic
specifier extension string immediately following the '%p'.  Right now
it's just being ignored, but the next commit will start adding some
specific pointer type extensions.

NOTE! The reason the extension is appended to the '%p' is to allow
minimal gcc type checking: gcc will still see the '%p' and will check
that the argument passed in is indeed a pointer, and yet will not
complain about the extended information that gcc doesn't understand
about (on the other hand, it also won't actually check that the pointer
type and the extension are compatible).

Alphanumeric characters were chosen because there is no sane existing
use for a string format with a hex pointer representation immediately
followed by alphanumerics (which is what such a format string would have
traditionally resulted in).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/vsprintf.c