Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

Scratch Buffer

Scratch Buffer Functions. More...

Defines

#define STP_BUF_LEN   8191
 Maximum size of buffer, not including terminating NULL.

Functions

void _stp_sprint (const char *fmt,...)
 Sprint into the scratch buffer.
void _stp_sprint_str (const char *str)
void _stp_scbuf_clear (void)
 Clear the scratch buffer.

Variables

char _stp_scbuf [8191+1]
 Scratch buffer for printing, building strings, etc.

Detailed Description

Scratch Buffer Functions.

The scratch buffer is for collecting output before storing in a map, printing, etc. This is a per-cpu static buffer. It is necessary because of the limited stack space available in the kernel.


Function Documentation

void _stp_scbuf_clear void   ) 
 

Clear the scratch buffer.

Output from _stp_sprint() will accumulate in the buffer until this is called.

Definition at line 59 of file scbuf.c.

References _stp_scbuf, and STP_BUF_LEN.

void _stp_sprint const char *  fmt,
  ...
 

Sprint into the scratch buffer.

Like printf, except output goes into _stp_scbuf, which will contain the null-terminated output. Safe because overflowing _stp_scbuf is not allowed. Size is limited by length of scratch buffer, STP_BUF_LEN.

Parameters:
fmt A printf-style format string followed by a variable number of args.
See also:
_stp_scbuf_clear

Definition at line 32 of file scbuf.c.

References _stp_scbuf, and STP_BUF_LEN.

Referenced by _stp_symbol_sprint().