All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/8] xen/console: cleanup console input switch logic
@ 2025-03-18 23:36 dmkhn
  2025-03-18 23:36 ` [PATCH v1 1/8] xen/console: fix trailing whitespaces dmkhn
                   ` (8 more replies)
  0 siblings, 9 replies; 20+ messages in thread
From: dmkhn @ 2025-03-18 23:36 UTC (permalink / raw)
  To: xen-devel
  Cc: andrew.cooper3, anthony.perard, jbeulich, julien, michal.orzel,
	roger.pau, sstabellini, dmukhin

Currently, on x86, console input can be rotated in round-robin manner
only between dom0, PV shim, and Xen itself. On Arm the input rotation
can include domUs with vpl011.
  
The patch series introduces the concept of "console focus", which is
defined as the ID of the domain that currently owns the physical console
input.
  
The patch series originates from the NS16550 UART emulator series [1]
for x86, which requires ability to switch physical console input to a
PVH/HVM domain with an emulated UART.
 
The main idea is introducing a per-domain permission flag that is set
during domain initialization and used by the console driver to switch
the input across permitted domains.
 
Patch 0 removes all the trailing white spaces in the console driver code.
 
Patch 1 introduces a new domain permission flag to mark ownership of the
console input for the console driver.   
 
Patches 2-4 prepare console driver to allow console input rotation
across multiple domains based on the new permission flag.
 
Patches 5-6 perform mechanical renames to fit the usage in the code.
 
Patch 7 cleans up the console input switch logic.
 
Patch 8 simplifies the existing vUART code by using newly introduced APIs.

CI: https://gitlab.com/xen-project/people/dmukhin/xen/-/pipelines/1723361248

[1]: https://lore.kernel.org/xen-devel/20250103-vuart-ns8250-v3-v1-0-c5d36b31d66c@ford.com/

Denis Mukhin (8):
  xen/console: fix trailing whitespaces
  xen/console: introduce console input permission
  xen/domain: introduce domid_top
  xen/domain: introduce domid_alloc()
  xen/console: rename switch_serial_input() to console_switch_focus()
  xen/console: rename console_rx to console_focus
  xen/console: introduce console_set_focus()
  xen/console: introduce console_get_focus()

 xen/arch/arm/dom0less-build.c      |  15 ++-
 xen/arch/arm/domain_build.c        |  19 +++-
 xen/arch/arm/include/asm/setup.h   |   2 -
 xen/arch/arm/setup.c               |   2 -
 xen/arch/arm/vpl011.c              |   7 +-
 xen/arch/ppc/include/asm/setup.h   |   2 -
 xen/arch/riscv/include/asm/setup.h |   2 -
 xen/arch/x86/include/asm/setup.h   |   2 -
 xen/arch/x86/pv/shim.c             |   2 +
 xen/common/domain.c                |   5 +
 xen/common/domctl.c                |  71 +++++++++------
 xen/common/kernel.c                |   8 ++
 xen/drivers/char/console.c         | 142 +++++++++++++++++------------
 xen/include/xen/console.h          |   3 +-
 xen/include/xen/domain.h           |   5 +
 xen/include/xen/sched.h            |   8 +-
 16 files changed, 180 insertions(+), 115 deletions(-)

-- 
2.34.1




^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2025-03-29  0:03 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-18 23:36 [PATCH v1 0/8] xen/console: cleanup console input switch logic dmkhn
2025-03-18 23:36 ` [PATCH v1 1/8] xen/console: fix trailing whitespaces dmkhn
2025-03-19  9:45   ` Jan Beulich
2025-03-18 23:36 ` [PATCH v1 2/8] xen/console: introduce console input permission dmkhn
2025-03-26 13:44   ` Jan Beulich
2025-03-29  0:03     ` Denis Mukhin
2025-03-18 23:36 ` [PATCH v1 3/8] xen/domain: introduce domid_top dmkhn
2025-03-26 13:52   ` Jan Beulich
2025-03-18 23:36 ` [PATCH v1 4/8] xen/domain: introduce domid_alloc() dmkhn
2025-03-26 13:56   ` Jan Beulich
2025-03-18 23:36 ` [PATCH v1 5/8] xen/console: rename switch_serial_input() to console_switch_focus() dmkhn
2025-03-26 13:58   ` Jan Beulich
2025-03-18 23:36 ` [PATCH v1 6/8] xen/console: rename console_rx to console_focus dmkhn
2025-03-26 14:00   ` Jan Beulich
2025-03-18 23:37 ` [PATCH v1 7/8] xen/console: introduce console_set_focus() dmkhn
2025-03-19 19:53   ` Denis Mukhin
2025-03-26 14:28     ` Jan Beulich
2025-03-26 14:32   ` Jan Beulich
2025-03-18 23:37 ` [PATCH v1 8/8] xen/console: introduce console_get_focus() dmkhn
2025-03-19 19:52 ` [PATCH v1 0/8] xen/console: cleanup console input switch logic Denis Mukhin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.