08 Apr, 2020

1 commit


31 Mar, 2020

1 commit

  • Set logo_shown to FBCON_LOGO_CANSHOW when the vc was deallocated.

    syzkaller report: https://lkml.org/lkml/2020/3/27/403
    general protection fault, probably for non-canonical address
    0xdffffc000000006c: 0000 [#1] SMP KASAN
    KASAN: null-ptr-deref in range [0x0000000000000360-0x0000000000000367]
    RIP: 0010:fbcon_switch+0x28f/0x1740
    drivers/video/fbdev/core/fbcon.c:2260

    Call Trace:
    redraw_screen+0x2a8/0x770 drivers/tty/vt/vt.c:1008
    vc_do_resize+0xfe7/0x1360 drivers/tty/vt/vt.c:1295
    fbcon_init+0x1221/0x1ab0 drivers/video/fbdev/core/fbcon.c:1219
    visual_init+0x305/0x5c0 drivers/tty/vt/vt.c:1062
    do_bind_con_driver+0x536/0x890 drivers/tty/vt/vt.c:3542
    do_take_over_console+0x453/0x5b0 drivers/tty/vt/vt.c:4122
    do_fbcon_takeover+0x10b/0x210 drivers/video/fbdev/core/fbcon.c:588
    fbcon_fb_registered+0x26b/0x340 drivers/video/fbdev/core/fbcon.c:3259
    do_register_framebuffer drivers/video/fbdev/core/fbmem.c:1664 [inline]
    register_framebuffer+0x56e/0x980 drivers/video/fbdev/core/fbmem.c:1832
    dlfb_usb_probe.cold+0x1743/0x1ba3 drivers/video/fbdev/udlfb.c:1735
    usb_probe_interface+0x310/0x800 drivers/usb/core/driver.c:374

    accessing vc_cons[logo_shown].d->vc_top causes the bug.

    Reported-by: syzbot+732528bae351682f1f27@syzkaller.appspotmail.com
    Signed-off-by: Qiujun Huang
    Acked-by: Sam Ravnborg
    Cc: stable@vger.kernel.org
    Signed-off-by: Daniel Vetter
    Link: https://patchwork.freedesktop.org/patch/msgid/20200329085647.25133-1-hqjagain@gmail.com

    Qiujun Huang
     

12 Mar, 2020

1 commit

  • drm-misc-next for 5.7:

    UAPI Changes:

    Cross-subsystem Changes:

    Core Changes:

    Driver Changes:
    - fb-helper: Remove drm_fb_helper_{add,add_all,remove}_one_connector
    - fbdev: some cleanups and dead-code removal
    - Conversions to simple-encoder
    - zero-length array removal
    - Panel: panel-dpi support in panel-simple, Novatek NT35510, Elida
    KD35T133,

    Signed-off-by: Dave Airlie

    From: Maxime Ripard
    Link: https://patchwork.freedesktop.org/patch/msgid/20200309135439.dicfnbo4ikj4tkz7@gilmour

    Dave Airlie
     

11 Mar, 2020

1 commit


09 Mar, 2020

1 commit

  • Pull ARM SoC fixes from Olof Johansson:
    "We've been accruing these for a couple of weeks, so the batch is a bit
    bigger than usual.

    Largest delta is due to a led-bl driver that is added -- there was a
    miscommunication before the merge window and the driver didn't make it
    in. Due to this, the platforms needing it regressed. At this point, it
    seemed easier to add the new driver than unwind the changes.

    Besides that, there are a handful of various fixes:

    - AMD tee memory leak fix

    - A handful of fixlets for i.MX SCU communication

    - A few maintainers woke up and realized DEBUG_FS had been missing
    for a while, so a few updates of that.

    ... and the usual collection of smaller fixes to various platforms"

    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (37 commits)
    ARM: socfpga_defconfig: Add back DEBUG_FS
    arm64: dts: socfpga: agilex: Fix gmac compatible
    ARM: bcm2835_defconfig: Explicitly restore CONFIG_DEBUG_FS
    arm64: dts: meson: fix gxm-khadas-vim2 wifi
    arm64: dts: meson-sm1-sei610: add missing interrupt-names
    ARM: meson: Drop unneeded select of COMMON_CLK
    ARM: dts: bcm2711: Add pcie0 alias
    ARM: dts: bcm283x: Add missing properties to the PWR LED
    tee: amdtee: fix memory leak in amdtee_open_session()
    ARM: OMAP2+: Fix compile if CONFIG_HAVE_ARM_SMCCC is not set
    arm: dts: dra76x: Fix mmc3 max-frequency
    ARM: dts: dra7: Add "dma-ranges" property to PCIe RC DT nodes
    bus: ti-sysc: Fix 1-wire reset quirk
    ARM: dts: r8a7779: Remove deprecated "renesas, rcar-sata" compatible value
    soc: imx-scu: Align imx sc msg structs to 4
    firmware: imx: Align imx_sc_msg_req_cpu_start to 4
    firmware: imx: scu-pd: Align imx sc msg structs to 4
    firmware: imx: misc: Align imx sc msg structs to 4
    firmware: imx: scu: Ensure sequential TX
    ARM: dts: imx7-colibri: Fix frequency for sd/mmc
    ...

    Linus Torvalds
     

07 Mar, 2020

1 commit

  • When syzkaller tests, there is a UAF:
    BUG: KASan: use after free in vgacon_invert_region+0x9d/0x110 at addr
    ffff880000100000
    Read of size 2 by task syz-executor.1/16489
    page:ffffea0000004000 count:0 mapcount:-127 mapping: (null)
    index:0x0
    page flags: 0xfffff00000000()
    page dumped because: kasan: bad access detected
    CPU: 1 PID: 16489 Comm: syz-executor.1 Not tainted
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
    rel-1.9.3-0-ge2fc41e-prebuilt.qemu-project.org 04/01/2014
    Call Trace:
    [] dump_stack+0x1e/0x20
    [] kasan_report+0x577/0x950
    [] __asan_load2+0x62/0x80
    [] vgacon_invert_region+0x9d/0x110
    [] invert_screen+0xe5/0x470
    [] set_selection+0x44b/0x12f0
    [] tioclinux+0xee/0x490
    [] vt_ioctl+0xff4/0x2670
    [] tty_ioctl+0x46a/0x1a10
    [] do_vfs_ioctl+0x5bd/0xc40
    [] SyS_ioctl+0x132/0x170
    [] system_call_fastpath+0x22/0x27
    Memory state around the buggy address:
    ffff8800000fff00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00
    ffff8800000fff80: 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00
    >ffff880000100000: ff ff ff ff ff ff ff ff ff ff ff ff ff
    ff ff ff

    It can be reproduce in the linux mainline by the program:
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include

    struct tiocl_selection {
    unsigned short xs; /* X start */
    unsigned short ys; /* Y start */
    unsigned short xe; /* X end */
    unsigned short ye; /* Y end */
    unsigned short sel_mode; /* selection mode */
    };

    #define TIOCL_SETSEL 2
    struct tiocl {
    unsigned char type;
    unsigned char pad;
    struct tiocl_selection sel;
    };

    int main()
    {
    int fd = 0;
    const char *dev = "/dev/char/4:1";

    struct vt_consize v = {0};
    struct tiocl tioc = {0};

    fd = open(dev, O_RDWR, 0);

    v.v_rows = 3346;
    ioctl(fd, VT_RESIZEX, &v);

    tioc.type = TIOCL_SETSEL;
    ioctl(fd, TIOCLINUX, &tioc);

    return 0;
    }

    When resize the screen, update the 'vc->vc_size_row' to the new_row_size,
    but when 'set_origin' in 'vgacon_set_origin', vgacon use 'vga_vram_base'
    for 'vc_origin' and 'vc_visible_origin', not 'vc_screenbuf'. It maybe
    smaller than 'vc_screenbuf'. When TIOCLINUX, use the new_row_size to calc
    the offset, it maybe larger than the vga_vram_size in vgacon driver, then
    bad access.
    Also, if set an larger screenbuf firstly, then set an more larger
    screenbuf, when copy old_origin to new_origin, a bad access may happen.

    So, If the screen size larger than vga_vram, resize screen should be
    failed. This alse fix CVE-2020-8649 and CVE-2020-8647.

    Linus pointed out that overflow checking seems absent. We're saved by
    the existing bounds checks in vc_do_resize() with rather strict
    limits:

    if (cols > VC_RESIZE_MAXCOL || lines > VC_RESIZE_MAXROW)
    return -EINVAL;

    Fixes: 0aec4867dca14 ("[PATCH] SVGATextMode fix")
    Reference: CVE-2020-8647 and CVE-2020-8649
    Reported-by: Hulk Robot
    Signed-off-by: Zhang Xiaoxu
    [danvet: augment commit message to point out overflow safety]
    Cc: stable@vger.kernel.org
    Signed-off-by: Daniel Vetter
    Link: https://patchwork.freedesktop.org/patch/msgid/20200304022429.37738-1-zhangxiaoxu5@huawei.com

    Zhang Xiaoxu
     

02 Mar, 2020

17 commits

  • The current codebase makes use of the zero-length array language
    extension to the C90 standard, but the preferred mechanism to declare
    variable-length types such as these ones is a flexible array member[1][2],
    introduced in C99:

    struct foo {
    int stuff;
    struct boo array[];
    };

    By making use of the mechanism above, we will get a compiler warning
    in case the flexible array does not occur last in the structure, which
    will help us prevent some kind of undefined behavior bugs from being
    inadvertently introduced[3] to the codebase from now on.

    Also, notice that, dynamic memory allocations won't be affected by
    this change:

    "Flexible array members have incomplete type, and so the sizeof operator
    may not be applied. As a quirk of the original implementation of
    zero-length arrays, sizeof evaluates to zero."[1]

    This issue was found with the help of Coccinelle.

    [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
    [2] https://github.com/KSPP/linux/issues/21
    [3] commit 76497732932f ("cxgb3/l2t: Fix undefined behaviour")

    Signed-off-by: Gustavo A. R. Silva
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200221160005.GA13552@embeddedor

    Gustavo A. R. Silva
     
  • This is dead code since 3.15 and can be removed if not
    going to be useful further.

    Signed-off-by: Souptick Joarder
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/1582042556-21555-1-git-send-email-jrdr.linux@gmail.com

    Souptick Joarder
     
  • It's needed to support the onboard video on my Spectre-free
    Atom S1260 server board.

    Signed-off-by: Rich Felker
    Cc: Greg Kroah-Hartman
    Cc: Thomas Gleixner
    [b.zolnierkie: patch description fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200125195506.GA16638@brightrain.aerifal.cx

    Rich Felker
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/aty/mach64_gx.c: In function ‘aty_var_to_pll_8398’:
    drivers/video/fbdev/aty/mach64_gx.c:621:36: warning: variable
    ‘mach64RefFreq’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200120063327.43548-1-yukuai3@huawei.com

    yu kuai
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/kyro/STG4000OverlayDevice.c: In function
    ‘SetOverlayViewPort’:
    drivers/video/fbdev/kyro/STG4000OverlayDevice.c:334:19: warning:
    variable ‘ulScaleRight’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200119121945.12517-1-yukuai3@huawei.com

    yu kuai
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/aty/radeon_base.c: In function
    ‘radeonfb_set_par’:
    drivers/video/fbdev/aty/radeon_base.c:1660:32: warning:
    variable ‘bytpp’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: Benjamin Herrenschmidt
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200119121730.10701-5-yukuai3@huawei.com

    yu kuai
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/aty/radeon_base.c: In function
    ‘radeonfb_set_par’:
    drivers/video/fbdev/aty/radeon_base.c:1653:48: warning: variable
    ‘cSync’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: Benjamin Herrenschmidt
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: patch summary fixups]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200119121730.10701-4-yukuai3@huawei.com

    yu kuai
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/aty/radeon_base.c: In function
    ‘radeonfb_set_par’:
    drivers/video/fbdev/aty/radeon_base.c:1653:38: warning: variable
    ‘vSyncPol’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: Benjamin Herrenschmidt
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200119121730.10701-3-yukuai3@huawei.com

    yu kuai
     
  • Fixes gcc '-Wunused-but-set-variable' warning:

    drivers/video/fbdev/aty/radeon_base.c: In function
    ‘radeonfb_set_par’:
    drivers/video/fbdev/aty/radeon_base.c:1653:6: warning: variable
    ‘hSyncPol’ set but not used [-Wunused-but-set-variable]

    It is never used, and so can be removed.

    Signed-off-by: yu kuai
    Cc: Benjamin Herrenschmidt
    Cc: zhengbin
    Cc: yi.zhang
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200119121730.10701-2-yukuai3@huawei.com

    yu kuai
     
  • Add COMPILE_TEST support to wm8505fb driver for better compile
    testing coverage.

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sam Ravnborg
    Link: https://patchwork.freedesktop.org/patch/msgid/900c16b3-9306-7d17-f467-0f98bc95416a@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • Use ->screen_buffer instead of ->screen_base to fix sparse warnings.

    [ Please see commit 17a7b0b4d974 ("fb.h: Provide alternate screen_base
    pointer") for details. ]

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sam Ravnborg
    Link: https://patchwork.freedesktop.org/patch/msgid/567cba81-5fec-4d91-f711-c0bdbfe5b513@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • Add COMPILE_TEST support to w100fb driver for better compile
    testing coverage.

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sam Ravnborg
    Link: https://patchwork.freedesktop.org/patch/msgid/a929db5e-d373-7b09-ae2b-efec227f7e85@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • * Add missing __iomem annotations where needed.
    * Make w100fb_probe() static.
    * Return NULL pointer (instead of using plain integer) in
    w100_get_xtal_tabl().

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sam Ravnborg
    Link: https://patchwork.freedesktop.org/patch/msgid/d438108a-e569-a14a-a9b1-3fefd88fcadc@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • Add COMPILE_TEST support to arcfb driver for better compile
    testing coverage.

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sam Ravnborg
    Link: https://patchwork.freedesktop.org/patch/msgid/acf2cc2e-614d-f0fb-ce40-cee62bfcde4c@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • Add COMPILE_TEST support to sh_mobile_lcdcfb driver for better compile
    testing coverage.

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Reviewed-by: Geert Uytterhoeven
    Link: https://patchwork.freedesktop.org/patch/msgid/d98fea18-b72e-6d0f-33ac-1421738bd12b@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • Use ->screen_buffer instead of ->screen_base to fix sparse warnings.

    [ Please see commit 17a7b0b4d974 ("fb.h: Provide alternate screen_base
    pointer") for details. ]

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Reviewed-by: Geert Uytterhoeven
    Link: https://patchwork.freedesktop.org/patch/msgid/c687dbc5-cf5a-9508-2a61-e757a1a14568@samsung.com

    Bartlomiej Zolnierkiewicz
     
  • commit 640ba2444fa9 ("drivers/video/pxa168fb.c: use devm_ functions")
    left behind this, it can be removed.

    Signed-off-by: YueHaibing
    Cc: Arnd Bergmann
    Cc: Daniel Vetter
    Cc: Christophe JAILLET
    Cc: Jani Nikula
    Cc: Chuhong Yuan
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200117032241.59148-1-yuehaibing@huawei.com

    YueHaibing
     

26 Feb, 2020

1 commit

  • The hdmi_avi_infoframe_init() never needs to return an error, change its
    return type to void.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Andrzej Hajda
    Acked-by: Bartlomiej Zolnierkiewicz
    Reviewed-by: Boris Brezillon
    Acked-by: Sam Ravnborg
    Tested-by: Sebastian Reichel
    Reviewed-by: Sebastian Reichel
    Signed-off-by: Tomi Valkeinen
    Link: https://patchwork.freedesktop.org/patch/msgid/20200226112514.12455-2-laurent.pinchart@ideasonboard.com

    Laurent Pinchart
     

20 Feb, 2020

1 commit

  • This patch adds a led-backlight driver (led_bl), which is similar to
    pwm_bl except the driver uses a LED class driver to adjust the
    brightness in the HW. Multiple LEDs can be used for a single backlight.

    Signed-off-by: Tomi Valkeinen
    Signed-off-by: Jean-Jacques Hiblot
    Acked-by: Pavel Machek
    Reviewed-by: Daniel Thompson
    Acked-by: Lee Jones
    Acked-by: Tony Lindgren
    Tested-by: Tony Lindgren
    Tested-by: Guido Günther
    Signed-off-by: Pavel Machek
    Signed-off-by: Tony Lindgren

    Tomi Valkeinen
     

17 Feb, 2020

1 commit


10 Feb, 2020

1 commit

  • Pull more Kbuild updates from Masahiro Yamada:

    - fix randconfig to generate a sane .config

    - rename hostprogs-y / always to hostprogs / always-y, which are more
    natual syntax.

    - optimize scripts/kallsyms

    - fix yes2modconfig and mod2yesconfig

    - make multiple directory targets ('make foo/ bar/') work

    * tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kbuild: make multiple directory targets work
    kconfig: Invalidate all symbols after changing to y or m.
    kallsyms: fix type of kallsyms_token_table[]
    scripts/kallsyms: change table to store (strcut sym_entry *)
    scripts/kallsyms: rename local variables in read_symbol()
    kbuild: rename hostprogs-y/always to hostprogs/always-y
    kbuild: fix the document to use extra-y for vmlinux.lds
    kconfig: fix broken dependency in randconfig-generated .config

    Linus Torvalds
     

04 Feb, 2020

3 commits

  • 'PTR_ERR(p) == -E*' is a stronger condition than IS_ERR(p).
    Hence, IS_ERR(p) is unneeded.

    The semantic patch that generates this commit is as follows:

    //
    @@
    expression ptr;
    constant error_code;
    @@
    -IS_ERR(ptr) && (PTR_ERR(ptr) == - error_code)
    +PTR_ERR(ptr) == - error_code
    //

    Link: http://lkml.kernel.org/r/20200106045833.1725-1-masahiroy@kernel.org
    Signed-off-by: Masahiro Yamada
    Cc: Julia Lawall
    Acked-by: Stephen Boyd [drivers/clk/clk.c]
    Acked-by: Bartosz Golaszewski [GPIO]
    Acked-by: Wolfram Sang [drivers/i2c]
    Acked-by: Rafael J. Wysocki [acpi/scan.c]
    Acked-by: Rob Herring
    Cc: Eric Biggers
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masahiro Yamada
     
  • The most notable change is DEFINE_SHOW_ATTRIBUTE macro split in
    seq_file.h.

    Conversion rule is:

    llseek => proc_lseek
    unlocked_ioctl => proc_ioctl

    xxx => proc_xxx

    delete ".owner = THIS_MODULE" line

    [akpm@linux-foundation.org: fix drivers/isdn/capi/kcapi_proc.c]
    [sfr@canb.auug.org.au: fix kernel/sched/psi.c]
    Link: http://lkml.kernel.org/r/20200122180545.36222f50@canb.auug.org.au
    Link: http://lkml.kernel.org/r/20191225172546.GB13378@avx2
    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • In old days, the "host-progs" syntax was used for specifying host
    programs. It was renamed to the current "hostprogs-y" in 2004.

    It is typically useful in scripts/Makefile because it allows Kbuild to
    selectively compile host programs based on the kernel configuration.

    This commit renames like follows:

    always -> always-y
    hostprogs-y -> hostprogs

    So, scripts/Makefile will look like this:

    always-$(CONFIG_BUILD_BIN2C) += ...
    always-$(CONFIG_KALLSYMS) += ...
    ...
    hostprogs := $(always-y) $(always-m)

    I think this makes more sense because a host program is always a host
    program, irrespective of the kernel configuration. We want to specify
    which ones to compile by CONFIG options, so always-y will be handier.

    The "always", "hostprogs-y", "hostprogs-m" will be kept for backward
    compatibility for a while.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

03 Feb, 2020

2 commits

  • Pull backlight updates from Lee Jones:
    "Fix-ups:
    - Remove superfluous code in ams369fg06
    - Convert over to GPIO descriptor (gpiod) in bd6107

    Bug Fixes:
    - Fix unsigned comparison to less than zero in qcom-wled"

    * tag 'backlight-next-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
    backlight: qcom-wled: Fix unsigned comparison to zero
    backlight: bd6107: Convert to use GPIO descriptor
    backlight: ams369fg06: Drop GPIO include

    Linus Torvalds
     
  • Pull Hyper-V updates from Sasha Levin:

    - Most of the commits here are work to enable host-initiated
    hibernation support by Dexuan Cui.

    - Fix for a warning shown when host sends non-aligned balloon requests
    by Tianyu Lan.

    * tag 'hyperv-next-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux:
    hv_utils: Add the support of hibernation
    hv_utils: Support host-initiated hibernation request
    hv_utils: Support host-initiated restart request
    Tools: hv: Reopen the devices if read() or write() returns errors
    video: hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs.
    Drivers: hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23)
    video: hyperv_fb: Fix hibernation for the deferred IO feature
    Input: hyperv-keyboard: Add the support of hibernation
    hv_balloon: Balloon up according to request page number

    Linus Torvalds
     

31 Jan, 2020

1 commit

  • Pull drm updates from Davbe Airlie:
    "This is the main pull request for graphics for 5.6. Usual selection of
    changes all over.

    I've got one outstanding vmwgfx pull that touches mm so kept it
    separate until after all of this lands. I'll try and get it to you
    soon after this, but it might be early next week (nothing wrong with
    code, just my schedule is messy)

    This also hits a lot of fbdev drivers with some cleanups.

    Other notables:
    - vulkan timeline semaphore support added to syncobjs
    - nouveau turing secureboot/graphics support
    - Displayport MST display stream compression support

    Detailed summary:

    uapi:
    - dma-buf heaps added (and fixed)
    - command line add support for panel oreientation
    - command line allow overriding penguin count

    drm:
    - mipi dsi definition updates
    - lockdep annotations for dma_resv
    - remove dma-buf kmap/kunmap support
    - constify fb_ops in all fbdev drivers
    - MST fix for daisy chained hotplug-
    - CTA-861-G modes with VIC >= 193 added
    - fix drm_panel_of_backlight export
    - LVDS decoder support
    - more device based logging support
    - scanline alighment for dumb buffers
    - MST DSC helpers

    scheduler:
    - documentation fixes
    - job distribution improvements

    panel:
    - Logic PD type 28 panel support
    - Jimax8729d MIPI-DSI
    - igenic JZ4770
    - generic DSI devicetree bindings
    - sony acx424AKP panel
    - Leadtek LTK500HD1829
    - xinpeng XPP055C272
    - AUO B116XAK01
    - GiantPlus GPM940B0
    - BOE NV140FHM-N49
    - Satoz SAT050AT40H12R2
    - Sharp LS020B1DD01D panels.

    ttm:
    - use blocking WW lock

    i915:
    - hw/uapi state separation
    - Lock annotation improvements
    - selftest improvements
    - ICL/TGL DSI VDSC support
    - VBT parsing improvments
    - Display refactoring
    - DSI updates + fixes
    - HDCP 2.2 for CFL
    - CML PCI ID fixes
    - GLK+ fbc fix
    - PSR fixes
    - GEN/GT refactor improvments
    - DP MST fixes
    - switch context id alloc to xarray
    - workaround updates
    - LMEM debugfs support
    - tiled monitor fixes
    - ICL+ clock gating programming removed
    - DP MST disable sequence fixed
    - LMEM discontiguous object maps
    - prefaulting for discontiguous objects
    - use LMEM for dumb buffers if possible
    - add LMEM mmap support

    amdgpu:
    - enable sync object timelines for vulkan
    - MST atomic routines
    - enable MST DSC support
    - add DMCUB display microengine support
    - DC OEM i2c support
    - Renoir DC fixes
    - Initial HDCP 2.x support
    - BACO support for Arcturus
    - Use BACO for runtime PM power save
    - gfxoff on navi10
    - gfx10 golden updates and fixes
    - DCN support on POWER
    - GFXOFF for raven1 refresh
    - MM engine idle handlers cleanup
    - 10bpc EDP panel fixes
    - renoir watermark fixes
    - SR-IOV fixes
    - Arcturus VCN fixes
    - GDDR6 training fixes
    - freesync fixes
    - Pollock support

    amdkfd:
    - unify more codepath with amdgpu
    - use KIQ to setup HIQ rather than MMIO

    radeon:
    - fix vma fault handler race
    - PPC DMA fix
    - register check fixes for r100/r200

    nouveau:
    - mmap_sem vs dma_resv fix
    - rewrite the ACR secure boot code for Turing
    - TU10x graphics engine support (TU11x pending)
    - Page kind mapping for turing
    - 10-bit LUT support
    - GP10B Tegra fixes
    - HD audio regression fix

    hisilicon/hibmc:
    - use generic fbdev code and helpers

    rockchip:
    - dsi/px30 support

    virtio:
    - fb damage support
    - static some functions

    vc4:
    - use dma_resv lock wrappers

    msm:
    - use dma_resv lock wrappers
    - sc7180 display + DSI support
    - a618 support
    - UBWC support improvements

    vmwgfx:
    - updates + new logging uapi

    exynos:
    - enable/disable callback cleanups

    etnaviv:
    - use dma_resv lock wrappers

    atmel-hlcdc:
    - clock fixes

    mediatek:
    - cmdq support
    - non-smooth cursor fixes
    - ctm property support

    sun4i:
    - suspend support
    - A64 mipi dsi support

    rcar-du:
    - Color management module support
    - LVDS encoder dual-link support
    - R8A77980 support

    analogic:
    - add support for an6345

    ast:
    - atomic modeset support
    - primary plane garbage fix

    arcgpu:
    - fixes for fourcc handling

    tegra:
    - minor fixes and improvments

    mcde:
    - vblank support

    meson:
    - OSD1 plane AFBC commit

    gma500:
    - add pageflip support
    - reomve global drm_dev

    komeda:
    - tweak debugfs output
    - d32 support
    - runtime PM suppotr

    udl:
    - use generic shmem helpers
    - cleanup and fixes"

    * tag 'drm-next-2020-01-30' of git://anongit.freedesktop.org/drm/drm: (1998 commits)
    drm/nouveau/fb/gp102-: allow module to load even when scrubber binary is missing
    drm/nouveau/acr: return error when registering LSF if ACR not supported
    drm/nouveau/disp/gv100-: not all channel types support reporting error codes
    drm/nouveau/disp/nv50-: prevent oops when no channel method map provided
    drm/nouveau: support synchronous pushbuf submission
    drm/nouveau: signal pending fences when channel has been killed
    drm/nouveau: reject attempts to submit to dead channels
    drm/nouveau: zero vma pointer even if we only unreference it rather than free
    drm/nouveau: Add HD-audio component notifier support
    drm/nouveau: fix build error without CONFIG_IOMMU_API
    drm/nouveau/kms/nv04: remove set but not used variable 'width'
    drm/nouveau/kms/nv50: remove set but not unused variable 'nv_connector'
    drm/nouveau/mmu: fix comptag memory leak
    drm/nouveau/gr/gp10b: Use gp100_grctx and gp100_gr_zbc
    drm/nouveau/pmu/gm20b,gp10b: Fix Falcon bootstrapping
    drm/exynos: Rename Exynos to lowercase
    drm/exynos: change callback names
    drm/mst: Don't do atomic checks over disabled managers
    drm/amdgpu: add the lost mutex_init back
    drm/amd/display: skip opp blank or unblank if test pattern enabled
    ...

    Linus Torvalds
     

30 Jan, 2020

1 commit

  • Pull tty/serial driver updates from Greg KH:
    "Here are the big set of tty and serial driver updates for 5.6-rc1

    Included in here are:
    - dummy_con cleanups (touches lots of arch code)
    - sysrq logic cleanups (touches lots of serial drivers)
    - samsung driver fixes (wasn't really being built)
    - conmakeshash move to tty subdir out of scripts
    - lots of small tty/serial driver updates

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'tty-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (140 commits)
    tty: n_hdlc: Use flexible-array member and struct_size() helper
    tty: baudrate: SPARC supports few more baud rates
    tty: baudrate: Synchronise baud_table[] and baud_bits[]
    tty: serial: meson_uart: Add support for kernel debugger
    serial: imx: fix a race condition in receive path
    serial: 8250_bcm2835aux: Document struct bcm2835aux_data
    serial: 8250_bcm2835aux: Use generic remapping code
    serial: 8250_bcm2835aux: Allocate uart_8250_port on stack
    serial: 8250_bcm2835aux: Suppress register_port error on -EPROBE_DEFER
    serial: 8250_bcm2835aux: Suppress clk_get error on -EPROBE_DEFER
    serial: 8250_bcm2835aux: Fix line mismatch on driver unbind
    serial_core: Remove unused member in uart_port
    vt: Correct comment documenting do_take_over_console()
    vt: Delete comment referencing non-existent unbind_con_driver()
    arch/xtensa/setup: Drop dummy_con initialization
    arch/x86/setup: Drop dummy_con initialization
    arch/unicore32/setup: Drop dummy_con initialization
    arch/sparc/setup: Drop dummy_con initialization
    arch/sh/setup: Drop dummy_con initialization
    arch/s390/setup: Drop dummy_con initialization
    ...

    Linus Torvalds
     

27 Jan, 2020

1 commit

  • On Hyper-V, Generation 1 VMs can directly use VM's physical memory for
    their framebuffers. This can improve the efficiency of framebuffer and
    overall performence for VM. The physical memory assigned to framebuffer
    must be contiguous. We use CMA allocator to get contiguouse physicial
    memory when the framebuffer size is greater than 4MB. For size under
    4MB, we use alloc_pages to achieve this.

    To enable framebuffer memory allocation from CMA, supply a kernel
    parameter to give enough space to CMA allocator at boot time. For
    example:
    cma=130m
    This gives 130MB memory to CAM allocator that can be allocated to
    framebuffer. If this fails, we fall back to the old way of using
    mmio for framebuffer.

    Reported-by: kbuild test robot
    Signed-off-by: Wei Hu
    Acked-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Sasha Levin

    Wei Hu
     

26 Jan, 2020

1 commit

  • fb_deferred_io_work() can access the vmbus ringbuffer by calling
    fbdefio->deferred_io() -> synthvid_deferred_io() -> synthvid_update().

    Because the vmbus ringbuffer is inaccessible between hvfb_suspend()
    and hvfb_resume(), we must cancel info->deferred_work before calling
    vmbus_close() and then reschedule it after we reopen the channel
    in hvfb_resume().

    Fixes: a4ddb11d297e ("video: hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver")
    Fixes: 824946a8b6fb ("video: hyperv_fb: Add the support of hibernation")
    Signed-off-by: Dexuan Cui
    Reviewed-by: Wei Hu
    Acked-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Sasha Levin

    Dexuan Cui
     

23 Jan, 2020

1 commit

  • Fixes coccicheck warning:
    ./drivers/video/backlight/qcom-wled.c:1104:5-15:
    WARNING: Unsigned expression compared with zero: string_len > 0

    The unsigned variable string_len is assigned a return value from the call
    to of_property_count_elems_of_size(), which may return negative error code.

    Fixes: 775d2ffb4af6 ("backlight: qcom-wled: Restructure the driver for WLED3")
    Signed-off-by: Chen Zhou
    Reviewed-by: Bjorn Andersson
    Reviewed-by: Daniel Thompson
    Reviewed-by: Kiran Gunda
    Signed-off-by: Lee Jones

    Chen Zhou
     

16 Jan, 2020

3 commits

  • There is a hunk of code that is incorrectly indented, clean up the
    indentation and a comment block. Also remove block braces around a
    one line statement on an if condition and add missing spaces after
    if keywords.

    Signed-off-by: Colin Ian King
    Cc: Antonino Daplas
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200113144627.219967-1-colin.king@canonical.com

    Colin Ian King
     
  • The objects in $(fb-objs) $(fb-y) $(fb-m) are linked to fb.ko .

    This line adds $(fb-y) to fb-objs, so the objects from $(fb-y) are
    listed twice as the dependency of the module.

    It works because Kbuild trims the duplicated objects from linking,
    but there is no good reason to have this line.

    Signed-off-by: Masahiro Yamada
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/20200106081352.27730-1-masahiroy@kernel.org

    Masahiro Yamada
     
  • Use resource_size rather than a verbose computation on
    the end and start fields.

    The semantic patch that makes this change is as follows:
    (http://coccinelle.lip6.fr/)

    @@ struct resource ptr; @@
    - (ptr.end - ptr.start + 1)
    + resource_size(&ptr)

    Signed-off-by: Julia Lawall
    [b.zolnierkie: minor patch summary fixup]
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Link: https://patchwork.freedesktop.org/patch/msgid/1577900990-8588-8-git-send-email-Julia.Lawall@inria.fr

    Julia Lawall