[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 21/35] xen/console: introduce console_init_owner()
On Thursday, December 12th, 2024 at 2:23 AM, Roger Pau Monné <roger.pau@xxxxxxxxxx> wrote: > > > On Thu, Dec 05, 2024 at 08:41:51PM -0800, Denis Mukhin via B4 Relay wrote: > > > From: Denis Mukhin dmukhin@xxxxxxxx > > > > console_init_owner() is introduced for selecting the boot-time console > > owner. > > > > Signed-off-by: Denis Mukhin dmukhin@xxxxxxxx > > --- > > xen/drivers/char/console.c | 27 +++++++++++++++++---------- > > 1 file changed, 17 insertions(+), 10 deletions(-) > > > > diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c > > index > > a8ab5c2bcb98e4cadf9ad2c9ad28d297977d0557..6261bdb5a2ac1075bc89fa408c0fd6cfef380ae6 > > 100644 > > --- a/xen/drivers/char/console.c > > +++ b/xen/drivers/char/console.c > > @@ -554,6 +554,22 @@ static void console_find_owner(void) > > console_set_owner(DOMID_XEN); > > } > > > > +static void console_init_owner(void) > > > __init attribute missing (given current call context), but see below. > > > +{ > > + domid_t domid; > > + > > + /* > > + * If user specifies so, we fool the switch routine to redirect input > > + * straight back to Xen. > > + */ > > + if ( opt_conswitch[1] == 'x' ) > > + domid = DOMID_XEN; > > + else > > + domid = get_initial_domain_id(); > > + > > + console_set_owner(domid); > > +} > > + > > static void __serial_rx(char c) > > { > > switch ( console_owner ) > > @@ -1143,14 +1159,6 @@ void __init console_endboot(void) > > > > video_endboot(); > > > > - /* > > - * If user specifies so, we fool the switch routine to redirect input > > - * straight back to Xen. I use this convoluted method so we still print > > - * a useful 'how to switch' message. > > - */ > > - if ( opt_conswitch[1] == 'x' ) > > - console_owner = DOMID_XEN; > > - > > register_keyhandler('w', dump_console_ring_key, > > "synchronously dump console ring buffer (dmesg)", 0); > > register_irq_keyhandler('+', &do_inc_thresh, > > @@ -1160,8 +1168,7 @@ void __init console_endboot(void) > > register_irq_keyhandler('G', &do_toggle_guest, > > "toggle host/guest log level adjustment", 0); > > > > - /* Serial input is directed to DOM0 by default. */ > > - console_find_owner(); > > + console_init_owner(); > > > Oh, so this is what fixes the regression introduced in patch 19/35. > THB I'm not sure it's worth introducing the console_init_owner() > helper if it's just for this usage. You could do: > > console_set_owner(opt_conswitch[1] == 'x' ? DOMID_XEN > : get_initial_domain_id()); Right, thank you. Addressed in v3. > > Thanks, Roger.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |