diff options
Diffstat (limited to 'include/linux/kernel.h')
| -rw-r--r-- | include/linux/kernel.h | 55 |
1 files changed, 30 insertions, 25 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 8eefcf7e95eb..4c0d3b2fd5fc 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
| @@ -287,6 +287,8 @@ static inline int __must_check kstrtos32_from_user(const char __user *s, size_t | |||
| 287 | return kstrtoint_from_user(s, count, base, res); | 287 | return kstrtoint_from_user(s, count, base, res); |
| 288 | } | 288 | } |
| 289 | 289 | ||
| 290 | /* Obsolete, do not use. Use kstrto<foo> instead */ | ||
| 291 | |||
| 290 | extern unsigned long simple_strtoul(const char *,char **,unsigned int); | 292 | extern unsigned long simple_strtoul(const char *,char **,unsigned int); |
| 291 | extern long simple_strtol(const char *,char **,unsigned int); | 293 | extern long simple_strtol(const char *,char **,unsigned int); |
| 292 | extern unsigned long long simple_strtoull(const char *,char **,unsigned int); | 294 | extern unsigned long long simple_strtoull(const char *,char **,unsigned int); |
| @@ -296,20 +298,20 @@ extern long long simple_strtoll(const char *,char **,unsigned int); | |||
| 296 | #define strict_strtoull kstrtoull | 298 | #define strict_strtoull kstrtoull |
| 297 | #define strict_strtoll kstrtoll | 299 | #define strict_strtoll kstrtoll |
| 298 | 300 | ||
| 299 | extern int sprintf(char * buf, const char * fmt, ...) | 301 | /* lib/printf utilities */ |
| 300 | __attribute__ ((format (printf, 2, 3))); | 302 | |
| 301 | extern int vsprintf(char *buf, const char *, va_list) | 303 | extern __printf(2, 3) int sprintf(char *buf, const char * fmt, ...); |
| 302 | __attribute__ ((format (printf, 2, 0))); | 304 | extern __printf(2, 0) int vsprintf(char *buf, const char *, va_list); |
| 303 | extern int snprintf(char * buf, size_t size, const char * fmt, ...) | 305 | extern __printf(3, 4) |
| 304 | __attribute__ ((format (printf, 3, 4))); | 306 | int snprintf(char *buf, size_t size, const char *fmt, ...); |
| 305 | extern int vsnprintf(char *buf, size_t size, const char *fmt, va_list args) | 307 | extern __printf(3, 0) |
| 306 | __attribute__ ((format (printf, 3, 0))); | 308 | int vsnprintf(char *buf, size_t size, const char *fmt, va_list args); |
| 307 | extern int scnprintf(char * buf, size_t size, const char * fmt, ...) | 309 | extern __printf(3, 4) |
| 308 | __attribute__ ((format (printf, 3, 4))); | 310 | int scnprintf(char *buf, size_t size, const char *fmt, ...); |
| 309 | extern int vscnprintf(char *buf, size_t size, const char *fmt, va_list args) | 311 | extern __printf(3, 0) |
| 310 | __attribute__ ((format (printf, 3, 0))); | 312 | int vscnprintf(char *buf, size_t size, const char *fmt, va_list args); |
| 311 | extern char *kasprintf(gfp_t gfp, const char *fmt, ...) | 313 | extern __printf(2, 3) |
| 312 | __attribute__ ((format (printf, 2, 3))); | 314 | char *kasprintf(gfp_t gfp, const char *fmt, ...); |
| 313 | extern char *kvasprintf(gfp_t gfp, const char *fmt, va_list args); | 315 | extern char *kvasprintf(gfp_t gfp, const char *fmt, va_list args); |
| 314 | 316 | ||
| 315 | extern int sscanf(const char *, const char *, ...) | 317 | extern int sscanf(const char *, const char *, ...) |
| @@ -374,13 +376,18 @@ extern const char hex_asc[]; | |||
| 374 | #define hex_asc_lo(x) hex_asc[((x) & 0x0f)] | 376 | #define hex_asc_lo(x) hex_asc[((x) & 0x0f)] |
| 375 | #define hex_asc_hi(x) hex_asc[((x) & 0xf0) >> 4] | 377 | #define hex_asc_hi(x) hex_asc[((x) & 0xf0) >> 4] |
| 376 | 378 | ||
| 377 | static inline char *pack_hex_byte(char *buf, u8 byte) | 379 | static inline char *hex_byte_pack(char *buf, u8 byte) |
| 378 | { | 380 | { |
| 379 | *buf++ = hex_asc_hi(byte); | 381 | *buf++ = hex_asc_hi(byte); |
| 380 | *buf++ = hex_asc_lo(byte); | 382 | *buf++ = hex_asc_lo(byte); |
| 381 | return buf; | 383 | return buf; |
| 382 | } | 384 | } |
| 383 | 385 | ||
| 386 | static inline char * __deprecated pack_hex_byte(char *buf, u8 byte) | ||
| 387 | { | ||
| 388 | return hex_byte_pack(buf, byte); | ||
| 389 | } | ||
| 390 | |||
| 384 | extern int hex_to_bin(char ch); | 391 | extern int hex_to_bin(char ch); |
| 385 | extern int __must_check hex2bin(u8 *dst, const char *src, size_t count); | 392 | extern int __must_check hex2bin(u8 *dst, const char *src, size_t count); |
| 386 | 393 | ||
| @@ -427,8 +434,8 @@ extern void tracing_start(void); | |||
| 427 | extern void tracing_stop(void); | 434 | extern void tracing_stop(void); |
| 428 | extern void ftrace_off_permanent(void); | 435 | extern void ftrace_off_permanent(void); |
| 429 | 436 | ||
| 430 | static inline void __attribute__ ((format (printf, 1, 2))) | 437 | static inline __printf(1, 2) |
| 431 | ____trace_printk_check_format(const char *fmt, ...) | 438 | void ____trace_printk_check_format(const char *fmt, ...) |
| 432 | { | 439 | { |
| 433 | } | 440 | } |
| 434 | #define __trace_printk_check_format(fmt, args...) \ | 441 | #define __trace_printk_check_format(fmt, args...) \ |
| @@ -467,13 +474,11 @@ do { \ | |||
| 467 | __trace_printk(_THIS_IP_, fmt, ##args); \ | 474 | __trace_printk(_THIS_IP_, fmt, ##args); \ |
| 468 | } while (0) | 475 | } while (0) |
| 469 | 476 | ||
| 470 | extern int | 477 | extern __printf(2, 3) |
| 471 | __trace_bprintk(unsigned long ip, const char *fmt, ...) | 478 | int __trace_bprintk(unsigned long ip, const char *fmt, ...); |
| 472 | __attribute__ ((format (printf, 2, 3))); | ||
| 473 | 479 | ||
| 474 | extern int | 480 | extern __printf(2, 3) |
| 475 | __trace_printk(unsigned long ip, const char *fmt, ...) | 481 | int __trace_printk(unsigned long ip, const char *fmt, ...); |
| 476 | __attribute__ ((format (printf, 2, 3))); | ||
| 477 | 482 | ||
| 478 | extern void trace_dump_stack(void); | 483 | extern void trace_dump_stack(void); |
| 479 | 484 | ||
| @@ -502,8 +507,8 @@ __ftrace_vprintk(unsigned long ip, const char *fmt, va_list ap); | |||
| 502 | 507 | ||
| 503 | extern void ftrace_dump(enum ftrace_dump_mode oops_dump_mode); | 508 | extern void ftrace_dump(enum ftrace_dump_mode oops_dump_mode); |
| 504 | #else | 509 | #else |
| 505 | static inline int | 510 | static inline __printf(1, 2) |
| 506 | trace_printk(const char *fmt, ...) __attribute__ ((format (printf, 1, 2))); | 511 | int trace_printk(const char *fmt, ...); |
| 507 | 512 | ||
| 508 | static inline void tracing_start(void) { } | 513 | static inline void tracing_start(void) { } |
| 509 | static inline void tracing_stop(void) { } | 514 | static inline void tracing_stop(void) { } |
