-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathkmsg.c
More file actions
39 lines (29 loc) · 716 Bytes
/
Copy pathkmsg.c
File metadata and controls
39 lines (29 loc) · 716 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include "kmsg.h"
#include <stdint.h>
/* ------------------------------------------------ */
/* Kernel message buffer */
/* ------------------------------------------------ */
#define KMSG_SIZE 4096
static char kmsg_buffer[KMSG_SIZE];
static uint32_t kmsg_index = 0;
void kmsg_init()
{
kmsg_index = 0;
}
/* append message to buffer */
void kmsg_write(const char* msg)
{
while (*msg)
{
if (kmsg_index >= KMSG_SIZE - 1)
return;
kmsg_buffer[kmsg_index++] = *msg++;
}
if (kmsg_index < KMSG_SIZE - 1)
kmsg_buffer[kmsg_index++] = '\n';
}
/* return pointer to full log */
const char* kmsg_get_buffer()
{
return kmsg_buffer;
}