Today the hvc console is added as a preferred console for pv domUs
only. As this requires a boot parameter for getting dom0 messages per
default add it for dom0, too.
Signed-off-by: Juergen Gross <[email protected]>
---
arch/x86/xen/enlighten_pv.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index c047f42552e1..d27740a80c5e 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -1377,7 +1377,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
if (!xen_initial_domain()) {
add_preferred_console("xenboot", 0, NULL);
add_preferred_console("tty", 0, NULL);
- add_preferred_console("hvc", 0, NULL);
if (pci_xen)
x86_init.pci.arch_init = pci_xen_init;
} else {
@@ -1410,6 +1409,9 @@ asmlinkage __visible void __init xen_start_kernel(void)
xen_boot_params_init_edd();
}
+
+ add_preferred_console("hvc", 0, NULL);
+
#ifdef CONFIG_PCI
/* PCI BIOS service won't work from a PV guest. */
pci_probe &= ~PCI_PROBE_BIOS;
--
2.13.6
Hello Juergen,
On 26.02.18 13:08, Juergen Gross wrote:
> Today the hvc console is added as a preferred console for pv domUs
> only. As this requires a boot parameter for getting dom0 messages per
> default add it for dom0, too.
>
> Signed-off-by: Juergen Gross <[email protected]>
> ---
> arch/x86/xen/enlighten_pv.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
Is this something x86 specific? Could it be a generic approach?
> index c047f42552e1..d27740a80c5e 100644
> --- a/arch/x86/xen/enlighten_pv.c
> +++ b/arch/x86/xen/enlighten_pv.c
> @@ -1377,7 +1377,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
> if (!xen_initial_domain()) {
> add_preferred_console("xenboot", 0, NULL);
> add_preferred_console("tty", 0, NULL);
> - add_preferred_console("hvc", 0, NULL);
> if (pci_xen)
> x86_init.pci.arch_init = pci_xen_init;
> } else {
> @@ -1410,6 +1409,9 @@ asmlinkage __visible void __init xen_start_kernel(void)
>
> xen_boot_params_init_edd();
> }
> +
> + add_preferred_console("hvc", 0, NULL);
> +
> #ifdef CONFIG_PCI
> /* PCI BIOS service won't work from a PV guest. */
> pci_probe &= ~PCI_PROBE_BIOS;
--
*Andrii Anisov*
On 26/02/18 13:06, Andrii Anisov wrote:
> Hello Juergen,
>
>
> On 26.02.18 13:08, Juergen Gross wrote:
>> Today the hvc console is added as a preferred console for pv domUs
>> only. As this requires a boot parameter for getting dom0 messages per
>> default add it for dom0, too.
>>
>> Signed-off-by: Juergen Gross <[email protected]>
>> ---
>> arch/x86/xen/enlighten_pv.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
> Is this something x86 specific? Could it be a generic approach?
In case ARM wants something similar I guess the test for
xen_initial_domain() should be dropped in xen_early_init().
Stefano?
Juergen
On 02/26/2018 06:08 AM, Juergen Gross wrote:
> Today the hvc console is added as a preferred console for pv domUs
> only. As this requires a boot parameter for getting dom0 messages per
> default add it for dom0, too.
>
> Signed-off-by: Juergen Gross <[email protected]>
> ---
> arch/x86/xen/enlighten_pv.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
> index c047f42552e1..d27740a80c5e 100644
> --- a/arch/x86/xen/enlighten_pv.c
> +++ b/arch/x86/xen/enlighten_pv.c
> @@ -1377,7 +1377,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
> if (!xen_initial_domain()) {
> add_preferred_console("xenboot", 0, NULL);
> add_preferred_console("tty", 0, NULL);
> - add_preferred_console("hvc", 0, NULL);
> if (pci_xen)
> x86_init.pci.arch_init = pci_xen_init;
> } else {
> @@ -1410,6 +1409,9 @@ asmlinkage __visible void __init xen_start_kernel(void)
>
> xen_boot_params_init_edd();
> }
> +
> + add_preferred_console("hvc", 0, NULL);
> +
Won't this prevent dom0 output from showing up on vga console by default?
-boris
> #ifdef CONFIG_PCI
> /* PCI BIOS service won't work from a PV guest. */
> pci_probe &= ~PCI_PROBE_BIOS;
On 26/02/18 20:02, Boris Ostrovsky wrote:
> On 02/26/2018 06:08 AM, Juergen Gross wrote:
>> Today the hvc console is added as a preferred console for pv domUs
>> only. As this requires a boot parameter for getting dom0 messages per
>> default add it for dom0, too.
>>
>> Signed-off-by: Juergen Gross <[email protected]>
>> ---
>> arch/x86/xen/enlighten_pv.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
>> index c047f42552e1..d27740a80c5e 100644
>> --- a/arch/x86/xen/enlighten_pv.c
>> +++ b/arch/x86/xen/enlighten_pv.c
>> @@ -1377,7 +1377,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
>> if (!xen_initial_domain()) {
>> add_preferred_console("xenboot", 0, NULL);
>> add_preferred_console("tty", 0, NULL);
>> - add_preferred_console("hvc", 0, NULL);
>> if (pci_xen)
>> x86_init.pci.arch_init = pci_xen_init;
>> } else {
>> @@ -1410,6 +1409,9 @@ asmlinkage __visible void __init xen_start_kernel(void)
>>
>> xen_boot_params_init_edd();
>> }
>> +
>> + add_preferred_console("hvc", 0, NULL);
>> +
>
> Won't this prevent dom0 output from showing up on vga console by default?
Right, we need to add "tty", too.
Will send V2.
Juergen
Hi,
On 26/02/18 12:32, Juergen Gross wrote:
> On 26/02/18 13:06, Andrii Anisov wrote:
>> Hello Juergen,
>>
>>
>> On 26.02.18 13:08, Juergen Gross wrote:
>>> Today the hvc console is added as a preferred console for pv domUs
>>> only. As this requires a boot parameter for getting dom0 messages per
>>> default add it for dom0, too.
>>>
>>> Signed-off-by: Juergen Gross <[email protected]>
>>> ---
>>> arch/x86/xen/enlighten_pv.c | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
>> Is this something x86 specific? Could it be a generic approach?
>
> In case ARM wants something similar I guess the test for
> xen_initial_domain() should be dropped in xen_early_init().
I am pretty sure we discussed to remove !xen_initial_domain() for Arm in
the past. But I don't remember why the patch was not sent to remove it.
Anyway, I guess this should be fine to have hvc as a preferred console
for the initial domain as well.
Cheers,
--
Julien Grall
On Tue, 27 Feb 2018, Julien Grall wrote:
> Hi,
>
> On 26/02/18 12:32, Juergen Gross wrote:
> > On 26/02/18 13:06, Andrii Anisov wrote:
> > > Hello Juergen,
> > >
> > >
> > > On 26.02.18 13:08, Juergen Gross wrote:
> > > > Today the hvc console is added as a preferred console for pv domUs
> > > > only. As this requires a boot parameter for getting dom0 messages per
> > > > default add it for dom0, too.
> > > >
> > > > Signed-off-by: Juergen Gross <[email protected]>
> > > > ---
> > > > arch/x86/xen/enlighten_pv.c | 4 +++-
> > > > 1 file changed, 3 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
> > > Is this something x86 specific? Could it be a generic approach?
> >
> > In case ARM wants something similar I guess the test for
> > xen_initial_domain() should be dropped in xen_early_init().
> I am pretty sure we discussed to remove !xen_initial_domain() for Arm in the
> past. But I don't remember why the patch was not sent to remove it.
>
> Anyway, I guess this should be fine to have hvc as a preferred console for the
> initial domain as well.
Usually, Dom0 has access to several physical UARTs and/or VGA, making
this patch less obviously desirable. I think that for Dom0 the best
behavior would be to add "hvc0" as first console rather than last
console, so that if the user specified something else, this call won't
interfere with it.
Hi,
On 27/02/2018 20:03, Stefano Stabellini wrote:
> On Tue, 27 Feb 2018, Julien Grall wrote:
>> Hi,
>>
>> On 26/02/18 12:32, Juergen Gross wrote:
>>> On 26/02/18 13:06, Andrii Anisov wrote:
>>>> Hello Juergen,
>>>>
>>>>
>>>> On 26.02.18 13:08, Juergen Gross wrote:
>>>>> Today the hvc console is added as a preferred console for pv domUs
>>>>> only. As this requires a boot parameter for getting dom0 messages per
>>>>> default add it for dom0, too.
>>>>>
>>>>> Signed-off-by: Juergen Gross <[email protected]>
>>>>> ---
>>>>> arch/x86/xen/enlighten_pv.c | 4 +++-
>>>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
>>>> Is this something x86 specific? Could it be a generic approach?
>>>
>>> In case ARM wants something similar I guess the test for
>>> xen_initial_domain() should be dropped in xen_early_init().
>> I am pretty sure we discussed to remove !xen_initial_domain() for Arm in the
>> past. But I don't remember why the patch was not sent to remove it.
>>
>> Anyway, I guess this should be fine to have hvc as a preferred console for the
>> initial domain as well.
>
> Usually, Dom0 has access to several physical UARTs and/or VGA, making
> this patch less obviously desirable. I think that for Dom0 the best
> behavior would be to add "hvc0" as first console rather than last
> console, so that if the user specified something else, this call won't
> interfere with it.
Well, that's exactly the goal of add_preferred_console. It will use hvc0
unless specified otherwise by the user on the command line.
Cheers,
--
Julien Grall
On 27/02/18 21:09, Julien Grall wrote:
> Hi,
>
> On 27/02/2018 20:03, Stefano Stabellini wrote:
>> On Tue, 27 Feb 2018, Julien Grall wrote:
>>> Hi,
>>>
>>> On 26/02/18 12:32, Juergen Gross wrote:
>>>> On 26/02/18 13:06, Andrii Anisov wrote:
>>>>> Hello Juergen,
>>>>>
>>>>>
>>>>> On 26.02.18 13:08, Juergen Gross wrote:
>>>>>> Today the hvc console is added as a preferred console for pv domUs
>>>>>> only. As this requires a boot parameter for getting dom0 messages per
>>>>>> default add it for dom0, too.
>>>>>>
>>>>>> Signed-off-by: Juergen Gross <[email protected]>
>>>>>> ---
>>>>>> arch/x86/xen/enlighten_pv.c | 4 +++-
>>>>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/arch/x86/xen/enlighten_pv.c
>>>>>> b/arch/x86/xen/enlighten_pv.c
>>>>> Is this something x86 specific? Could it be a generic approach?
>>>>
>>>> In case ARM wants something similar I guess the test for
>>>> xen_initial_domain() should be dropped in xen_early_init().
>>> I am pretty sure we discussed to remove !xen_initial_domain() for Arm
>>> in the
>>> past. But I don't remember why the patch was not sent to remove it.
>>>
>>> Anyway, I guess this should be fine to have hvc as a preferred
>>> console for the
>>> initial domain as well.
>>
>> Usually, Dom0 has access to several physical UARTs and/or VGA, making
>> this patch less obviously desirable. I think that for Dom0 the best
>> behavior would be to add "hvc0" as first console rather than last
>> console, so that if the user specified something else, this call won't
>> interfere with it.
>
> Well, that's exactly the goal of add_preferred_console. It will use hvc0
> unless specified otherwise by the user on the command line.
I suggest someone who can test it should post a patch for ARM.
Juergen