Browse Source

pk: support printk before file init

pull/237/head
Andrew Waterman 5 years ago
parent
commit
75bbd1ecfa
  1. 4
      pk/console.c
  2. 3
      pk/file.h

4
pk/console.c

@ -4,6 +4,7 @@
#include "mmap.h"
#include "file.h"
#include "frontend.h"
#include "bits.h"
#include <stdint.h>
#include <stdarg.h>
@ -11,7 +12,8 @@ static void vprintk(const char* s, va_list vl)
{
char out[256]; // XXX
int res = vsnprintf(out, sizeof(out), s, vl);
file_write(stderr, out, res < sizeof(out) ? res : sizeof(out));
int size = MIN(res, sizeof(out));
frontend_syscall(SYS_write, 2, kva2pa(out), size, 0, 0, 0, 0);
}
void printk(const char* s, ...)

3
pk/file.h

@ -14,9 +14,6 @@ typedef struct file
} file_t;
extern file_t files[];
#define stdin (files + 0)
#define stdout (files + 1)
#define stderr (files + 2)
file_t* file_get(int fd);
file_t* file_open(const char* fn, int flags, int mode);

Loading…
Cancel
Save