Re: [PATCH 07/11] tty: vt: replace BUG_ON() by WARN_ON_ONCE()

From: Ilpo Järvinen
Date: Thu Jan 12 2023 - 04:49:39 EST


On Thu, 12 Jan 2023, Jiri Slaby (SUSE) wrote:

> No need to panic in vc_uniscr_copy_line(), just warn. This should never
> happen though, as vc_uniscr_check() is supposed to be called before
> vc_uniscr_copy_line(). And the former checks vc->vc_uni_lines already.
>
> In any case, use _ONCE as vc_uniscr_copy_line() is called repeatedly for
> each line. So don't flood the logs, just in case.
>
> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@xxxxxxxxxx>
> ---
> drivers/tty/vt/vt.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
> index 119b3eafef59..db72375141b0 100644
> --- a/drivers/tty/vt/vt.c
> +++ b/drivers/tty/vt/vt.c
> @@ -535,7 +535,8 @@ void vc_uniscr_copy_line(const struct vc_data *vc, void *dest, bool viewed,
> int offset = row * vc->vc_size_row + col * 2;
> unsigned long pos;
>
> - BUG_ON(!uni_lines);
> + if (WARN_ON_ONCE(!uni_lines))
> + return;
>
> pos = (unsigned long)screenpos(vc, offset, viewed);
> if (pos >= vc->vc_origin && pos < vc->vc_scr_end) {
>

Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>

--
i.