From: sashiko-bot@kernel.org
To: "Thomas Zimmermann" <tzimmermann@suse.de>
Cc: linux-serial@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v3 1/5] vt: Add cursor-size helpers
Date: Mon, 28 Sep 2026 09:09:23 +0000 [thread overview]
Message-ID: <20260928090923.E6F9C1F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260928085724.41660-2-tzimmermann@suse.de>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] vt: unprivileged log injection via pr_warn_once in cursor sizing
--
commit 4874174842fbef217a6215957d5bf1bff1442b36
Author: Thomas Zimmermann <tzimmermann@suse.de>
vt: Add cursor-size helpers
The new helpers vc_cursor_start() and vc_cursor_end() return the scanlines
in which the cursor block starts respectively ends. Users can control the
cursor size with the vt module's parameter cur_default or with the ESC
sequence \e[?Nc. In case of an invalid setting, the new helpers fall back
to cur_default and then underline cursors.
> diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
> index 57edf37495a81..8141296ccad05 100644
> --- a/drivers/tty/vt/vt.c
> +++ b/drivers/tty/vt/vt.c
[ ... ]
> @@ -264,6 +265,109 @@ unsigned int vc_font_size(const struct vc_font *font)
> }
> EXPORT_SYMBOL_GPL(vc_font_size);
>
> +/*
> + * Cursors
> + */
> +
> +static unsigned int vc_cursor_size(unsigned int cursor_size)
> +{
> + const unsigned int cursor_default_size = CUR_SIZE(READ_ONCE(cur_default));
> +
> +retry:
> + switch (cursor_size) {
> + case CUR_NONE:
> + case CUR_UNDERLINE:
> + case CUR_LOWER_THIRD:
> + case CUR_LOWER_HALF:
> + case CUR_TWO_THIRDS:
> + case CUR_BLOCK:
> + return cursor_size;
> + default:
> + pr_warn_once("Unknown cursor %u\n", cursor_size);
> + fallthrough;
[Severity: Low]
Is it expected that an unprivileged user can trigger this warning message?
An unprivileged user can write a specific DEC escape sequence (e.g.,
\e[?103c) to the VT, which parses an unhandled size into
vc->vc_cursor_type via CSI_MAKE.
When the console driver later updates the cursor, vc_cursor_size() hits
the default case and emits this warning.
Since pr_warn_once() is rate-limited to once per boot, it cannot cause
a denial of service, but it still allows local unprivileged users with
write access to a VT to add a warning line to the kernel log.
> + case CUR_DEF:
> + /*
> + * Use user-given default size, or underline if
> + * the given default is invalid.
> + */
> + if (cursor_size != cursor_default_size)
> + cursor_size = cursor_default_size;
> + else
> + cursor_size = CUR_UNDERLINE;
> + goto retry;
> + }
> +}
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260928085724.41660-1-tzimmermann@suse.de?part=1
next prev parent reply other threads:[~2026-09-28 9:09 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-28 8:55 [PATCH v3 0/5] fbcon,vgacon,vt: Share helpers for text cursors Thomas Zimmermann
2026-09-28 8:55 ` [PATCH v3 1/5] vt: Add cursor-size helpers Thomas Zimmermann
2026-09-28 9:07 ` Jani Nikula
2026-09-28 11:45 ` Thomas Zimmermann
2026-09-28 9:09 ` sashiko-bot [this message]
2026-09-28 11:14 ` Thomas Zimmermann
2026-09-28 11:41 ` Greg KH
2026-10-01 8:59 ` Greg KH
2026-09-28 8:55 ` [PATCH v3 2/5] vgacon: Remove trailing whitespaces Thomas Zimmermann
2026-09-28 8:59 ` sashiko-bot
2026-09-28 8:55 ` [PATCH v3 3/5] vgacon: Use vt_cursor_{start,end}() Thomas Zimmermann
2026-09-28 9:09 ` sashiko-bot
2026-09-28 8:55 ` [PATCH v3 4/5] lib/fonts: Add font_glyph_cursor() helper Thomas Zimmermann
2026-09-28 9:16 ` sashiko-bot
2026-09-28 8:55 ` [PATCH v3 5/5] fbcon: Replace fbcon_fill_cursor_mask() with fbcon_cursor_glyph() Thomas Zimmermann
2026-09-28 9:21 ` sashiko-bot
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=20260928090923.E6F9C1F000FF@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-serial@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
--cc=tzimmermann@suse.de \
/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 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.