make kputs (write debug message onto kmsg_buf.str) truncate size of input string when it's greater than kmsg_buf.len.

http://postpeta.pccluster.org/bugzilla/show_bug.cgi?id=19
This commit is contained in:
Masamichi Takagi m-takagi@ab.jp.nec.com
2013-05-10 17:06:46 +09:00
parent 4ab5aaf8cf
commit 1d4babcd32

View File

@@ -20,9 +20,12 @@ void kputs(char *buf)
if (len + kmsg_buf.tail > kmsg_buf.len) {
kmsg_buf.tail = 0;
if(len > kmsg_buf.len) {
len = kmsg_buf.len;
}
}
strncpy(kmsg_buf.str + kmsg_buf.tail, buf, len);
memcpy(kmsg_buf.str + kmsg_buf.tail, buf, len);
kmsg_buf.tail += len;
ihk_mc_spinlock_unlock(&kmsg_lock, flags);