lkml.org 
[lkml]   [2015]   [May]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH v2 2/3] fbcon: use the cursor blink interval provided by vt
    From
    On Tue, May 19, 2015 at 2:40 PM, Thierry Reding
    <thierry.reding@gmail.com> wrote:
    > On Tue, May 19, 2015 at 02:15:41PM -0700, Kevin Hilman wrote:
    >> On Thu, Mar 26, 2015 at 6:56 AM, Scot Doyle <lkml14@scotdoyle.com> wrote:
    >> > vt now provides a cursor blink interval via vc_data. Use this
    >> > interval instead of the currently hardcoded 200 msecs. Store it in
    >> > fbcon_ops to avoid locking the console in cursor_timer_handler().
    >> >
    >> > Signed-off-by: Scot Doyle <lkml14@scotdoyle.com>
    >> > Acked-by: Pavel Machek <pavel@ucw.cz>
    >>
    >> This patch hit next-20150519 in the form of commit 27a4c827c34a
    >> (fbcon: use the cursor blink interval provided by vt) and has caused
    >> boot failure on a handful of ARM platforms when booting a MMC root
    >> filesystem. This error was spotted by the kernelci.org bot on
    >> exynos5800-peach-pi[1] and Thierry and Daniel (Cc'd) have seen it on
    >> some tegra platforms too.
    >>
    >> Thierry spotted this commit as a potential cause, and both Daniel and
    >> I have reverted and boot tested on exynos5 and tegra respectively and
    >> the boot panics disappear.
    >
    > FWIW, if I apply the below on top of next-20150519 things seem to be
    > back to normal as well:
    >
    > diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
    > index 05b1d1a71ef9..658c34bb9076 100644
    > --- a/drivers/video/console/fbcon.c
    > +++ b/drivers/video/console/fbcon.c
    > @@ -1310,8 +1310,9 @@ static void fbcon_cursor(struct vc_data *vc, int mode)
    > return;
    >
    > ops->cur_blink_jiffies = msecs_to_jiffies(vc->vc_cur_blink_ms);
    > - fbcon_del_cursor_timer(info);
    > - if (!(vc->vc_cursor_type & 0x10))
    > + if (vc->vc_cursor_type & 0x10)
    > + fbcon_del_cursor_timer(info);
    > + else
    > fbcon_add_cursor_timer(info);
    >
    > ops->cursor_flash = (mode == CM_ERASE) ? 0 : 1;

    Applying this on next-20150519 makes my exynos board happily boot again as well.

    Tested-by: Kevin Hilman <khilman@linaro.org>

    Kevin


    \
     
     \ /
      Last update: 2015-05-20 00:21    [W:4.085 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site