lkml.org 
[lkml]   [2008]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[VIDEO] vfb: only enable if explicitly requested when compiled in
    Date
    From: Frans Pop <elendil@planet.nl>

    The Kconfig help for the vfb driver says:
    Do NOT enable it for normal systems! To protect the innocent, it
    has to be enabled explicitly at boot time using the kernel option
    `video=vfb:'.

    This change lets the code match the description.

    Support for vfb:disable is kept for backwards compatibility; vfb:off
    works because it is tested at a higher level.

    Signed-off-by: Frans Pop <elendil@planet.nl>
    CC: Antonino A. Daplas <adaplas@gmail.com>
    CC: Andrew Morton <akpm@linux-foundation.org>

    ---
    Note: any undefined option (e.g. vfb:enable) will also enable this driver.

    The relevant code has been unchanged since before the migration to
    git (2.6.12).

    This patch fixes bugzilla #9310 and was the root cause behind
    http://lkml.org/lkml/2008/5/31/220.

    My confusion stemmed from the fact that I was still assuming that the
    Kconfig help would be correct (even though Antonino had already
    determined it was not: http://lkml.org/lkml/2007/10/14/25, but somehow
    my brain never parsed that).


    diff --git a/drivers/video/vfb.c b/drivers/video/vfb.c
    index 072638a..51e935f 100644
    --- a/drivers/video/vfb.c
    +++ b/drivers/video/vfb.c
    @@ -443,19 +443,29 @@ static int vfb_mmap(struct fb_info *info,
    }

    #ifndef MODULE
    +/*
    + * The virtual framebuffer driver is only enabled if explicitly
    + * requested by passing 'video=vfb:' (or any actual options).
    + */
    static int __init vfb_setup(char *options)
    {
    char *this_opt;

    - vfb_enable = 1;
    + vfb_enable = 0;

    - if (!options || !*options)
    + if (!options)
    + return 1;
    +
    + vfb_enable = 1;
    +
    + if (!*options)
    return 1;

    while ((this_opt = strsep(&options, ",")) != NULL) {
    if (!*this_opt)
    continue;
    - if (!strncmp(this_opt, "disable", 7))
    + /* Test disable for backwards compatibility */
    + if (!strcmp(this_opt, "disable"))
    vfb_enable = 0;
    }
    return 1;

    \
     
     \ /
      Last update: 2008-06-01 14:57    [W:0.022 / U:59.428 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site