From: Amit Shah <amit@kernel.org>
To: Maximilian Immanuel Brandtner <maxbr@linux.ibm.com>,
linux-kernel@vger.kernel.org, virtualization@lists.linux.dev,
mst@redhat.com, pasic@linux.ibm.com, schnelle@linux.ibm.com
Subject: Re: [PATCH] virtio: console: Make resize control event handling compliant with spec
Date: Thu, 27 Mar 2025 11:40:23 +0100 [thread overview]
Message-ID: <7e0faada2dd5576a41509e94bbe49a97af5173dc.camel@kernel.org> (raw)
In-Reply-To: <20250320172654.624657-1-maxbr@linux.ibm.com>
On Thu, 2025-03-20 at 18:26 +0100, Maximilian Immanuel Brandtner wrote:
> According to section 5.3.6.2 of the virtio spec a control buffer with
> the event VIRITO_CONSOLE_RESIZE is followed by a
> virtio_console_resize
> struct containing 2 little endian 16bit integerts cols,rows. The
> kernel
> implementation assums native endianness (which results in mangled
> values
> on big endian architectures)(a seperate patch by Halil Pasic will
> deal with
> that issue) and swaps the ordering of columns and rows.
> This patch changes the ordering of rows and columns to columns then
> rows.
It's clearer and cleaner to only describe the issue you're solving
here; the other patch will take care of the other issue.
You can add more info here, like: the console resize messages via the
config space (section 5.3.4) are used for resizing, and that works fine
for single-console devices. However, for multi-console devices
(enabled by multiport) had the spec and Linux implementation out of
sync. As far as I know, there are no device-side implementations of
mutiport console, so patching Linux is the way to go. (You can replace
the 'I' with my name as the maintainer there.)
> Fixes: 8345adbf96fc1 ("virtio: console: Accept console size along
> with resize control message")
> Signed-off-by: Maximilian Immanuel Brandtner <maxbr@linux.ibm.com>
> Cc: stable@vger.kernel.org # v2.6.35+
> ---
> drivers/char/virtio_console.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/virtio_console.c
> b/drivers/char/virtio_console.c
> index 24442485e73e..9668e89873cf 100644
> --- a/drivers/char/virtio_console.c
> +++ b/drivers/char/virtio_console.c
> @@ -1579,8 +1579,8 @@ static void handle_control_message(struct
> virtio_device *vdev,
> break;
> case VIRTIO_CONSOLE_RESIZE: {
> struct {
> - __u16 rows;
> __u16 cols;
> + __u16 rows;
> } size;
>
> if (!is_console_port(port))
Thanks,
Amit
prev parent reply other threads:[~2025-03-27 10:40 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-20 17:26 [PATCH] virtio: console: Make resize control event handling compliant with spec Maximilian Immanuel Brandtner
2025-03-20 17:31 ` Maximilian Immanuel Brandtner
2025-03-23 12:40 ` Halil Pasic
2025-03-27 10:40 ` Amit Shah [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7e0faada2dd5576a41509e94bbe49a97af5173dc.camel@kernel.org \
--to=amit@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maxbr@linux.ibm.com \
--cc=mst@redhat.com \
--cc=pasic@linux.ibm.com \
--cc=schnelle@linux.ibm.com \
--cc=virtualization@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).