version 1.192, 2021/03/03 13:19:06
|
version 1.193, 2021/03/03 14:22:24
|
Line 167 menu=Xen:load /netbsd-XEN3_DOM0.gz conso
|
Line 167 menu=Xen:load /netbsd-XEN3_DOM0.gz conso
|
menu=Xen single user:load /netbsd-XEN3_DOM0.gz console=pc -s;multiboot /xen.gz dom0_mem=512M |
menu=Xen single user:load /netbsd-XEN3_DOM0.gz console=pc -s;multiboot /xen.gz dom0_mem=512M |
"""]] |
"""]] |
|
|
\todo Explain why console=pc is given. Perhaps there is some notion |
|
of a separate console instead of xencons. |
|
|
|
\todo Check the single user line. |
|
|
|
This specifies that the dom0 should have 512MB of ram, leaving the rest |
This specifies that the dom0 should have 512MB of ram, leaving the rest |
to be allocated for domUs. |
to be allocated for domUs. |
|
|
Line 187 See boot_console(8). Understand that yo
|
Line 182 See boot_console(8). Understand that yo
|
having console setup correct for booting GENERIC before trying to |
having console setup correct for booting GENERIC before trying to |
configure Xen. |
configure Xen. |
|
|
By default, the hypervisor (Xen itself) will use \todo as the console |
Generally for GENERIC, one sets the console in bootxx_ffsv1 or |
|
equivalent, and this is passed on to /boot (where one typically does |
By default, the NetBSD dom0 kernel will use xencons(4) (the man page |
not set the console). This configuration of bootxx_ffsv1 should also |
does not exist) as console. |
be in place for Xen systems, to allow seeing messages from /boot and |
|
use of a keyboard to select a line from the menu. And, one should |
To use a serial console for the Xen hypervisor, add settings as follows: |
have a working boot path to GENERIC for rescue situations. |
|
|
|
With GENERIC, the boot options are passed on to /netbsd, but there is |
|
currently no mechanism to pass these via multiboot to the hypervisor. |
|
Thus, in addition to configuring the console in the boot blocks, one |
|
must also configure it for Xen. |
|
|
|
By default, the hypervisor (Xen itself) will use some sort of vga |
|
device as the console, much like GENERIC uses by default. The vga |
|
console is relinquished at the conclusion of hypervisor boot, before |
|
the dom0 is started. |
|
|
|
\todo Explain if there is any notion of input to the Xen console; |
|
there is something about 3 CTRL-As in a row. Perhaps this is about |
|
the serial console which is not relinquished? |
|
|
|
The hypervisor can be configured to use a serial port console, e.g. |
[[!template id=filecontent name="/boot.cfg" text=""" |
[[!template id=filecontent name="/boot.cfg" text=""" |
menu=Xen:load /netbsd-XEN3_DOM0.gz;multiboot /xen.gz dom0_mem=512M console=com1 com1=9600,8n1 |
menu=Xen:losad /netbsd-XEN3_DOM0.gz console=com0;multiboot /xen.gz dom0_mem=512M console=com1 com1=9600,8n1 |
"""]] |
"""]] |
|
This exampulee uses the first serial port (Xen counts from 1; this is |
which will use the first serial port for Xen (which counts starting |
what NetBSD would call com0), and sets speed and parity. (The dom0 is |
from 1, unlike NetBSD which counts starting from 0), forcing |
then configured to use the same serial port in this example.) |
speed/parity. Because the NetBSD command line lacks a |
|
"console=pc" argument, it will use the default "xencons" console device, |
One also configures the console for the dom0. While one might expect |
which directs the console I/O through Xen to the same console device Xen |
console=pc to be default, following behavior of GENERIC, a hasty read |
itself uses (in this case, the serial port). |
of the code suggests there is no default and booting without a |
|
selected console might lead to a panic. Also, there is merit in |
\todo Explain why boot.cfg shows forcing the dom0 console also, |
explicit configuration. Therefore the standard approach is to place |
separately from the hypervisor console. |
console=pc as part of the load statement for the dom0 kernel, or |
|
alternatively console=com0. |
|
|
|
The NetBSD dom0 kernel will attach xencons(4) (the man page does not |
|
exist), but this is not used as a console. It is used to obtain the |
|
messages from the hypervisor's console; run `xl dmesg` to see them. |
|
|
### Tuning |
### Tuning |
|
|