>Looking at init/main.c:
>
>if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
>   printk(KERN_WARNING "Warning: unable to open an initial console.\n");

That looks almost like a bug :-/
"/dev/console" will decay into a pointer to kernel space, but
sys_open takes a userspace one. The __user annotation does not
change that. Try adding this:

>... so, if root is mounted (over nfs), and root is mounted rw,
>and /dev/console exists on the nfsroot, and it has rw permissions (I
>gave it chmod 777 to just be sure), why would that sys_open call fail
>and trigger that printk?

int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
if(ret < 0)
  printk(KERN_WARNING "Warning: unable to open an "
         "initial console (%d)\n", ret);

I wonder what return code it will give (-EFAULT is my guess).


        -`J'
-- 
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to