Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot send control keys such as up/down arrow to VM virtual console #8564

Open
izhouwu opened this issue Mar 8, 2024 · 1 comment
Open
Labels
status: new The issue status: new for creation

Comments

@izhouwu
Copy link
Contributor

izhouwu commented Mar 8, 2024

Use up/down arrow in guest VM virtual console does not get expected result:

ACRN:>
ACRN:>vm_console 0

----- Entering VM 0 Shell -----

root@intel-corei7-64:~# ls

(press up arrow)
root@intel-corei7-64:~#]A

@izhouwu izhouwu added the status: new The issue status: new for creation label Mar 8, 2024
@izhouwu
Copy link
Contributor Author

izhouwu commented Mar 8, 2024

[External_System_ID] ACRN-10290

izhouwu added a commit to izhouwu/acrn-hypervisor that referenced this issue Mar 8, 2024
For uart console, some control keys are defined as byte sequences,
such as:
 * up arrow - 0x1b/0x5b/0x41
 * F8 - 0x1b/0x5b/0x31/0x39/0x7e

Currently hv console only read one char per poll.
When guest vuart console is active, those byte sequences may not be sent
to guest vuart in good timing due to the poll interval. Thus control keys
such as up/down can not be used in shell or vim.

The solution is to read all input chars in one poll, so that control keys
can be received by guest OS properly.

Tracked-On: projectacrn#8564
Signed-off-by: Wu Zhou <wu.zhou@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
acrnsi-robot pushed a commit that referenced this issue Mar 12, 2024
For uart console, some control keys are defined as byte sequences,
such as:
 * up arrow - 0x1b/0x5b/0x41
 * F8 - 0x1b/0x5b/0x31/0x39/0x7e

Currently hv console only read one char per poll.
When guest vuart console is active, those byte sequences may not be sent
to guest vuart in good timing due to the poll interval. Thus control keys
such as up/down can not be used in shell or vim.

The solution is to read all input chars in one poll, so that control keys
can be received by guest OS properly.

Tracked-On: #8564
Signed-off-by: Wu Zhou <wu.zhou@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: new The issue status: new for creation
Projects
None yet
Development

No branches or pull requests

1 participant