mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
bitkeeper revision 1.46.1.1 (3e4ea2f52nebi38hIZkpYvqaZogL3g)
Allow root to be other than nfs - remove the nfsroot component of the xen command line, and add "ro root=/dev/xhdaN" to the *module* command line. E.g. kernel (nd)/usr/groups/srgboot/moonraider/image.gz ipbase=128.232.35.190 gateway=128.232.32.1 netmask=255.255.240.0 dom0_mem=262144 module (nd)/usr/groups/srgboot/moonraider/xenolinux.gz ro root=/dev/xhda7
This commit is contained in:
1 parent
6cf19e1c58
commit
9dece74cc9
1 file changed
+15
-6
@@ -578,19 +578,16 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params)
|
||||
}
|
||||
}
|
||||
*dst = '\0';
|
||||
//printk("opt_nfsroot=%d,%s XX cmd =: %s\n",opt_nfsroot,opt_nfsroot,virt_startinfo_address->cmd_line);
|
||||
|
||||
if ( opt_nfsroot )
|
||||
{
|
||||
if ( strcmp("",opt_nfsroot) )
|
||||
{ // if nfsroot has been set to something
|
||||
unsigned char boot[150];
|
||||
unsigned char ipbase[20], nfsserv[20], gateway[20], netmask[20];
|
||||
unsigned char nfsroot[70];
|
||||
snprintf(nfsroot, 70, opt_nfsroot, dom);
|
||||
snprintf(boot, 200,
|
||||
#if 1
|
||||
" root=/dev/nfs ip=%s:%s:%s:%s::eth0:off nfsroot=%s",
|
||||
#else
|
||||
" ro root=/dev/xhda7 ip=%s:%s:%s:%s::eth0:off arfle=%s",
|
||||
#endif
|
||||
quad_to_str(opt_ipbase + dom, ipbase),
|
||||
quad_to_str(opt_nfsserv, nfsserv),
|
||||
quad_to_str(opt_gateway, gateway),
|
||||
@@ -598,6 +595,18 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params)
|
||||
nfsroot);
|
||||
strcpy(dst, boot);
|
||||
}
|
||||
else
|
||||
{
|
||||
unsigned char boot[150];
|
||||
unsigned char ipbase[20], nfsserv[20], gateway[20], netmask[20];
|
||||
snprintf(boot, 200,
|
||||
" ip=%s::%s:%s::eth0:off",
|
||||
quad_to_str(opt_ipbase + dom, ipbase),
|
||||
quad_to_str(opt_gateway, gateway),
|
||||
quad_to_str(opt_netmask, netmask));
|
||||
strcpy(dst, boot);
|
||||
}
|
||||
|
||||
|
||||
/* Reinstate the caller's page tables. */
|
||||
__write_cr3_counted(pagetable_val(current->mm.pagetable));
|
||||
|
||||