OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [uclinux/] [uClinux-2.0.x/] [kernel/] [printk.c] - Diff between revs 199 and 582

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 199 Rev 582
Line 149... Line 149...
                        return 0;
                        return 0;
        }
        }
        return -EINVAL;
        return -EINVAL;
}
}
 
 
 
 
asmlinkage int printk(const char *fmt, ...)
asmlinkage int printk(const char *fmt, ...)
{
{
        va_list args;
        va_list args;
        int i;
        int i;
        char *msg, *p, *buf_end;
        char *msg, *p, *buf_end;
Line 161... Line 160...
        long flags;
        long flags;
 
 
        save_flags(flags);
        save_flags(flags);
        cli();
        cli();
        va_start(args, fmt);
        va_start(args, fmt);
 
 
        i = vsprintf(buf + 3, fmt, args); /* hopefully i < sizeof(buf)-4 */
        i = vsprintf(buf + 3, fmt, args); /* hopefully i < sizeof(buf)-4 */
        buf_end = buf + 3 + i;
        buf_end = buf + 3 + i;
        va_end(args);
        va_end(args);
 
 
        for (p = buf + 3; p < buf_end; p++) {
        for (p = buf + 3; p < buf_end; p++) {
                msg = p;
                msg = p;
                if (msg_level < 0) {
                if (msg_level < 0) {
                        if (
                        if (
                                p[0] != '<' ||
                                p[0] != '<' ||
Line 193... Line 194...
                        }
                        }
                        logged_chars++;
                        logged_chars++;
                        if (*p == '\n')
                        if (*p == '\n')
                                break;
                                break;
                }
                }
 
 
                if (msg_level < console_loglevel && console_print_proc) {
                if (msg_level < console_loglevel && console_print_proc) {
                        char tmp = p[1];
                        char tmp = p[1];
                        p[1] = '\0';
                        p[1] = '\0';
                        (*console_print_proc)(msg);
                        (*console_print_proc)(msg);
                        p[1] = tmp;
                        p[1] = tmp;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.