Skip to content

Commit

Permalink
lib/vsprintf: Move integer format types to the top
Browse files Browse the repository at this point in the history
Move the format types for 64-bit integers and configurable size integers
to the top, so they're next to the other integer format types.  While at
it, add the missing format types for s32 and u32.

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Jonathan Corbet <[email protected]>
Cc: Mike Turquette <[email protected]>
Cc: Stephen Boyd <[email protected]>
Cc: Tetsuo Handa <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
geertu authored and torvalds committed Apr 15, 2015
1 parent 7330660 commit e8a7ba5
Showing 1 changed file with 15 additions and 17 deletions.
32 changes: 15 additions & 17 deletions Documentation/printk-formats.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,21 @@ If variable is of Type, use printk format specifier:
unsigned long long %llu or %llx
size_t %zu or %zx
ssize_t %zd or %zx
s32 %d or %x
u32 %u or %x
s64 %lld or %llx
u64 %llu or %llx

If <type> is dependent on a config option for its size (e.g., sector_t,
blkcnt_t) or is architecture-dependent for its size (e.g., tcflag_t), use a
format specifier of its largest possible type and explicitly cast to it.
Example:

printk("test: sector number/total blocks: %llu/%llu\n",
(unsigned long long)sector, (unsigned long long)blockcount);

Reminder: sizeof() result is of type size_t.


Raw pointer value SHOULD be printed with %p. The kernel supports
the following extended format specifiers for pointer types:
Expand Down Expand Up @@ -246,23 +261,6 @@ struct va_format:

Passed by reference.

u64 SHOULD be printed with %llu/%llx:

printk("%llu", u64_var);

s64 SHOULD be printed with %lld/%llx:

printk("%lld", s64_var);

If <type> is dependent on a config option for its size (e.g., sector_t,
blkcnt_t) or is architecture-dependent for its size (e.g., tcflag_t), use a
format specifier of its largest possible type and explicitly cast to it.
Example:

printk("test: sector number/total blocks: %llu/%llu\n",
(unsigned long long)sector, (unsigned long long)blockcount);

Reminder: sizeof() result is of type size_t.

Thank you for your cooperation and attention.

Expand Down

0 comments on commit e8a7ba5

Please sign in to comment.