[PATCH] fbcon: warn on invalid cursor blink intervals
Henrique de Moraes Holschuh
hmh at hmh.eng.br
Sat May 28 11:45:15 UTC 2016
On Thu, 19 May 2016, Scot Doyle wrote:
> Two systems are locking on boot [1] because ops->cur_blink_jiffies
> is set to zero from vc->vc_cur_blink_ms.
>
> Ignore such invalid intervals and log a warning.
>
> [1] https://bugs.launchpad.net/bugs/1574814
>
> Suggested-by: David Daney <david.daney at cavium.com>
> Signed-off-by: Scot Doyle <lkml14 at scotdoyle.com>
> Cc: <stable at vger.kernel.org> [v4.2]
FWIW:
Tested-by: Henrique de Moraes Holschuh <hmh at hmh.eng.br> on top of 4.4.11.
And nothing caused it to issue warnings here, so far (with the other
recommended patch applied first).
> ---
> drivers/video/console/fbcon.c | 14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
> index 6e92917..fad5b89 100644
> --- a/drivers/video/console/fbcon.c
> +++ b/drivers/video/console/fbcon.c
> @@ -1095,7 +1095,13 @@ static void fbcon_init(struct vc_data *vc, int init)
> con_copy_unimap(vc, svc);
>
> ops = info->fbcon_par;
> - ops->cur_blink_jiffies = msecs_to_jiffies(vc->vc_cur_blink_ms);
> +
> + if (vc->vc_cur_blink_ms >= 50)
> + ops->cur_blink_jiffies =
> + msecs_to_jiffies(vc->vc_cur_blink_ms);
> + else
> + WARN_ONCE(1, "blink interval < 50 ms");
> +
> p->con_rotate = initial_rotation;
> set_blitting_type(vc, info);
>
> @@ -1309,7 +1315,11 @@ static void fbcon_cursor(struct vc_data *vc, int mode)
> int y;
> int c = scr_readw((u16 *) vc->vc_pos);
>
> - ops->cur_blink_jiffies = msecs_to_jiffies(vc->vc_cur_blink_ms);
> + if (vc->vc_cur_blink_ms >= 50)
> + ops->cur_blink_jiffies =
> + msecs_to_jiffies(vc->vc_cur_blink_ms);
> + else
> + WARN_ONCE(1, "blink interval < 50 ms");
>
> if (fbcon_is_inactive(vc, info) || vc->vc_deccm != 1)
> return;
--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh
More information about the dri-devel
mailing list