Thread (4 messages) 4 messages, 2 authors, 2011-02-17

some question about snprintf

From: loody <hidden>
Date: 2011-02-17 14:21:12

hi :

2011/2/7 Greg KH [off-list ref]:
On Sun, Feb 06, 2011 at 05:23:01PM +0800, loody wrote:
quoted
hi:

2011/2/6 loody [off-list ref]:
quoted
hi all:
I want to use snprintf for collecting debug message and print it later.
But I found :
1. when I add "\n" as below, the buffer will be cleared, that means
the "irq status" will put at the head of Buffer instead of at the end
of "ehci work".
? ?Size -= snprintf (Buffer , Size,"ehci_work\n");
? ?Size -= snprintf (Buffer , Size,"irq status 0x%x\n",status);
is it possible to add "\n" in the buffer, but will will not reset the buffer?

2. instead of snprintf, is there any better idea for saving debug
message and show it out later?
3. is there any function in kernel, like snprintf, which will also
collect strings but tread the buffer as ring buffer, such that I will
not need to take care the overflow.
Look at include/linux/ring_buffer.h
I found some code such as ftrace seems use ring_buffer to record the data.
but the source is hard to understand for me right now. :-)
Is there simple sample code or document for me to reference?

-- 
Thank U,
miloody
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help