diff options
author | phk <phk@FreeBSD.org> | 2003-07-22 10:24:41 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-07-22 10:24:41 +0000 |
commit | c4a9334fa698660a5dd1a0c4fddb61ed0893fc58 (patch) | |
tree | 822136a990d18001b2db563f705887b258e810ce /sys/kern/subr_prf.c | |
parent | b5408a3e8f054d75ddbda2e0f17add2667916d6d (diff) | |
download | FreeBSD-src-c4a9334fa698660a5dd1a0c4fddb61ed0893fc58.zip FreeBSD-src-c4a9334fa698660a5dd1a0c4fddb61ed0893fc58.tar.gz |
Don't attempt to inline large functions mb_alloc() and mb_free(),
it more than doubles the text size of this file.
GCC has wisely ignored us on this previously
Diffstat (limited to 'sys/kern/subr_prf.c')
-rw-r--r-- | sys/kern/subr_prf.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/sys/kern/subr_prf.c b/sys/kern/subr_prf.c index d851e60..fa86217 100644 --- a/sys/kern/subr_prf.c +++ b/sys/kern/subr_prf.c @@ -237,6 +237,25 @@ log(int level, const char *fmt, ...) msgbuftrigger = 1; } +int +vlog(const char *fmt, va_list ap) +{ + int savintr; + struct putchar_arg pca; + int retval; + + savintr = consintr; /* disable interrupts */ + consintr = 0; + pca.tty = NULL; + pca.flags = log_open ? TOLOG : TOCONS; + pca.pri = -1; + retval = kvprintf(fmt, putchar, &pca, 10, ap); + if (!panicstr) + msgbuftrigger = 1; + consintr = savintr; /* reenable interrupts */ + return (retval); +} + #define CONSCHUNK 128 void @@ -323,6 +342,7 @@ vprintf(const char *fmt, va_list ap) return (retval); } + /* * Print a character on console or users terminal. If destination is * the console then the last bunch of characters are saved in msgbuf for |