[PATCH] initramfs: prevent initramfs printk message being split by messages from other code.

From: Simon Kitching
Date: Fri Mar 20 2009 - 16:35:27 EST


initramfs uses printk without a linefeed, then does some work, then uses printk
to finish the message off. However if some other code does a printk in between,
then the messages get mixed together. Better for each message to be an independent
line...

Example of problem that this fixes:
checking if image is initramfs...<7>Switched to high resolution mode on CPU 1
Switched to high resolution mode on CPU 0
it is

Signed-off-by: Simon Kitching <skitching@xxxxxxxxxx>
---
init/initramfs.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/init/initramfs.c b/init/initramfs.c
index d9c941c..948a2c6 100644
--- a/init/initramfs.c
+++ b/init/initramfs.c
@@ -583,17 +583,18 @@ static int __init populate_rootfs(void)
if (initrd_start) {
#ifdef CONFIG_BLK_DEV_RAM
int fd;
- printk(KERN_INFO "checking if image is initramfs...");
+ printk(KERN_INFO "Checking if rootfs image is initramfs...\n");
err = unpack_to_rootfs((char *)initrd_start,
initrd_end - initrd_start, 1);
if (!err) {
- printk(" it is\n");
+ printk(KERN_INFO "rootfs image is initramfs; unpacking...\n");
unpack_to_rootfs((char *)initrd_start,
initrd_end - initrd_start, 0);
free_initrd();
return 0;
}
- printk("it isn't (%s); looks like an initrd\n", err);
+ printk(KERN_INFO "rootfs image is not initramfs (%s)"
+ "; looks like an initrd\n", err);
fd = sys_open("/initrd.image", O_WRONLY|O_CREAT, 0700);
if (fd >= 0) {
sys_write(fd, (char *)initrd_start,
--
1.6.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/