From: Greg Kroah-Hartman Date: Sat, 11 Nov 2017 08:34:53 +0000 (+0100) Subject: 4.9-stable patches X-Git-Tag: v3.18.81~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=af38e3a65fb59014b1450343aa3bf0d1a3a57c5e;p=thirdparty%2Fkernel%2Fstable-queue.git 4.9-stable patches added patches: asoc-sun4i-spdif-remove-legacy-dapm-components.patch drm-vmwgfx-fix-ubuntu-17.10-wayland-black-screen-issue.patch input-elan_i2c-add-elan060c-to-the-acpi-table.patch mips-ar7-defer-registration-of-gpio.patch mips-ar7-ensure-that-serial-ports-are-properly-set-up.patch mips-bmips-fix-missing-cbr-address.patch rbd-use-gfp_noio-for-parent-stat-and-data-requests.patch --- diff --git a/queue-4.9/asoc-sun4i-spdif-remove-legacy-dapm-components.patch b/queue-4.9/asoc-sun4i-spdif-remove-legacy-dapm-components.patch new file mode 100644 index 00000000000..2ed253bb25d --- /dev/null +++ b/queue-4.9/asoc-sun4i-spdif-remove-legacy-dapm-components.patch @@ -0,0 +1,38 @@ +From 96e53c41e1f81c9e9d1ce38d3f28b95668b71dcf Mon Sep 17 00:00:00 2001 +From: Marcus Cooper +Date: Tue, 20 Dec 2016 15:49:13 +0100 +Subject: ASoC: sun4i-spdif: remove legacy dapm components + +From: Marcus Cooper + +commit 96e53c41e1f81c9e9d1ce38d3f28b95668b71dcf upstream. + +The dapm components are now handled by the ALSA SoC SPDIF DIT driver +so can be removed. + +Signed-off-by: Marcus Cooper +Acked-by: Maxime Ripard +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + sound/soc/sunxi/sun4i-spdif.c | 8 -------- + 1 file changed, 8 deletions(-) + +--- a/sound/soc/sunxi/sun4i-spdif.c ++++ b/sound/soc/sunxi/sun4i-spdif.c +@@ -403,14 +403,6 @@ static struct snd_soc_dai_driver sun4i_s + .name = "spdif", + }; + +-static const struct snd_soc_dapm_widget dit_widgets[] = { +- SND_SOC_DAPM_OUTPUT("spdif-out"), +-}; +- +-static const struct snd_soc_dapm_route dit_routes[] = { +- { "spdif-out", NULL, "Playback" }, +-}; +- + static const struct of_device_id sun4i_spdif_of_match[] = { + { .compatible = "allwinner,sun4i-a10-spdif", }, + { .compatible = "allwinner,sun6i-a31-spdif", }, diff --git a/queue-4.9/drm-vmwgfx-fix-ubuntu-17.10-wayland-black-screen-issue.patch b/queue-4.9/drm-vmwgfx-fix-ubuntu-17.10-wayland-black-screen-issue.patch new file mode 100644 index 00000000000..33839ccf785 --- /dev/null +++ b/queue-4.9/drm-vmwgfx-fix-ubuntu-17.10-wayland-black-screen-issue.patch @@ -0,0 +1,38 @@ +From cef75036c40408ba3bc308bcb00a3d440da713fc Mon Sep 17 00:00:00 2001 +From: Sinclair Yeh +Date: Wed, 1 Nov 2017 10:47:05 -0700 +Subject: drm/vmwgfx: Fix Ubuntu 17.10 Wayland black screen issue + +From: Sinclair Yeh + +commit cef75036c40408ba3bc308bcb00a3d440da713fc upstream. + +This is an extension of Commit 7c20d213dd3c ("drm/vmwgfx: Work +around mode set failure in 2D VMs") + +With Wayland desktop and atomic mode set, during the mode setting +process there is a moment when two framebuffer sized surfaces +are being pinned. This was not an issue with Xorg. + +Since this only happens during a mode change, there should be no +performance impact by increasing allowable mem_size. + +Signed-off-by: Sinclair Yeh +Reviewed-by: Thomas Hellstrom +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c ++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c +@@ -721,7 +721,7 @@ static int vmw_driver_load(struct drm_de + * allocation taken by fbdev + */ + if (!(dev_priv->capabilities & SVGA_CAP_3D)) +- mem_size *= 2; ++ mem_size *= 3; + + dev_priv->max_mob_pages = mem_size * 1024 / PAGE_SIZE; + dev_priv->prim_bb_mem = diff --git a/queue-4.9/input-elan_i2c-add-elan060c-to-the-acpi-table.patch b/queue-4.9/input-elan_i2c-add-elan060c-to-the-acpi-table.patch new file mode 100644 index 00000000000..0a71e27d420 --- /dev/null +++ b/queue-4.9/input-elan_i2c-add-elan060c-to-the-acpi-table.patch @@ -0,0 +1,31 @@ +From cdea6a30c2689cc33b34c6691b57cca277f0c5dc Mon Sep 17 00:00:00 2001 +From: Kai-Heng Feng +Date: Tue, 7 Nov 2017 16:19:24 -0800 +Subject: Input: elan_i2c - add ELAN060C to the ACPI table + +From: Kai-Heng Feng + +commit cdea6a30c2689cc33b34c6691b57cca277f0c5dc upstream. + +ELAN060C touchpad uses elan_i2c as its driver. It can be +found on Lenovo ideapad 320-14AST. + +BugLink: https://bugs.launchpad.net/bugs/1727544 +Signed-off-by: Kai-Heng Feng +Signed-off-by: Dmitry Torokhov +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/input/mouse/elan_i2c_core.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/input/mouse/elan_i2c_core.c ++++ b/drivers/input/mouse/elan_i2c_core.c +@@ -1240,6 +1240,7 @@ static const struct acpi_device_id elan_ + { "ELAN0605", 0 }, + { "ELAN0609", 0 }, + { "ELAN060B", 0 }, ++ { "ELAN060C", 0 }, + { "ELAN0611", 0 }, + { "ELAN1000", 0 }, + { } diff --git a/queue-4.9/mips-ar7-defer-registration-of-gpio.patch b/queue-4.9/mips-ar7-defer-registration-of-gpio.patch new file mode 100644 index 00000000000..43450efdd27 --- /dev/null +++ b/queue-4.9/mips-ar7-defer-registration-of-gpio.patch @@ -0,0 +1,58 @@ +From e6b03ab63b4d270e0249f96536fde632409dc1dc Mon Sep 17 00:00:00 2001 +From: Jonas Gorski +Date: Sun, 29 Oct 2017 16:27:19 +0100 +Subject: MIPS: AR7: Defer registration of GPIO + +From: Jonas Gorski + +commit e6b03ab63b4d270e0249f96536fde632409dc1dc upstream. + +When called from prom init code, ar7_gpio_init() will fail as it will +call gpiochip_add() which relies on a working kmalloc() to alloc +the gpio_desc array and kmalloc is not useable yet at prom init time. + +Move ar7_gpio_init() to ar7_register_devices() (a device_initcall) +where kmalloc works. + +Fixes: 14e85c0e69d5 ("gpio: remove gpio_descs global array") +Signed-off-by: Jonas Gorski +Reviewed-by: Florian Fainelli +Cc: Ralf Baechle +Cc: Greg Kroah-Hartman +Cc: Yoshihiro YUNOMAE +Cc: Nicolas Schichan +Cc: linux-mips@linux-mips.org +Cc: linux-serial@vger.kernel.org +Patchwork: https://patchwork.linux-mips.org/patch/17542/ +Signed-off-by: James Hogan +Signed-off-by: Greg Kroah-Hartman + +--- + arch/mips/ar7/platform.c | 4 ++++ + arch/mips/ar7/prom.c | 2 -- + 2 files changed, 4 insertions(+), 2 deletions(-) + +--- a/arch/mips/ar7/platform.c ++++ b/arch/mips/ar7/platform.c +@@ -654,6 +654,10 @@ static int __init ar7_register_devices(v + u32 val; + int res; + ++ res = ar7_gpio_init(); ++ if (res) ++ pr_warn("unable to register gpios: %d\n", res); ++ + res = ar7_register_uarts(); + if (res) + pr_err("unable to setup uart(s): %d\n", res); +--- a/arch/mips/ar7/prom.c ++++ b/arch/mips/ar7/prom.c +@@ -246,8 +246,6 @@ void __init prom_init(void) + ar7_init_cmdline(fw_arg0, (char **)fw_arg1); + ar7_init_env((struct env_var *)fw_arg2); + console_config(); +- +- ar7_gpio_init(); + } + + #define PORT(offset) (KSEG1ADDR(AR7_REGS_UART0 + (offset * 4))) diff --git a/queue-4.9/mips-ar7-ensure-that-serial-ports-are-properly-set-up.patch b/queue-4.9/mips-ar7-ensure-that-serial-ports-are-properly-set-up.patch new file mode 100644 index 00000000000..f467735ce68 --- /dev/null +++ b/queue-4.9/mips-ar7-ensure-that-serial-ports-are-properly-set-up.patch @@ -0,0 +1,42 @@ +From b084116f8587b222a2c5ef6dcd846f40f24b9420 Mon Sep 17 00:00:00 2001 +From: Oswald Buddenhagen +Date: Sun, 29 Oct 2017 16:27:20 +0100 +Subject: MIPS: AR7: Ensure that serial ports are properly set up + +From: Oswald Buddenhagen + +commit b084116f8587b222a2c5ef6dcd846f40f24b9420 upstream. + +Without UPF_FIXED_TYPE, the data from the PORT_AR7 uart_config entry is +never copied, resulting in a dead port. + +Fixes: 154615d55459 ("MIPS: AR7: Use correct UART port type") +Signed-off-by: Oswald Buddenhagen +[jonas.gorski: add Fixes tag] +Signed-off-by: Jonas Gorski +Reviewed-by: Florian Fainelli +Cc: Ralf Baechle +Cc: Greg Kroah-Hartman +Cc: Yoshihiro YUNOMAE +Cc: Nicolas Schichan +Cc: Oswald Buddenhagen +Cc: linux-mips@linux-mips.org +Cc: linux-serial@vger.kernel.org +Patchwork: https://patchwork.linux-mips.org/patch/17543/ +Signed-off-by: James Hogan +Signed-off-by: Greg Kroah-Hartman + +--- + arch/mips/ar7/platform.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/mips/ar7/platform.c ++++ b/arch/mips/ar7/platform.c +@@ -576,6 +576,7 @@ static int __init ar7_register_uarts(voi + uart_port.type = PORT_AR7; + uart_port.uartclk = clk_get_rate(bus_clk) / 2; + uart_port.iotype = UPIO_MEM32; ++ uart_port.flags = UPF_FIXED_TYPE; + uart_port.regshift = 2; + + uart_port.line = 0; diff --git a/queue-4.9/mips-bmips-fix-missing-cbr-address.patch b/queue-4.9/mips-bmips-fix-missing-cbr-address.patch new file mode 100644 index 00000000000..9f44585a6b9 --- /dev/null +++ b/queue-4.9/mips-bmips-fix-missing-cbr-address.patch @@ -0,0 +1,40 @@ +From ea4b3afe1eac8f88bb453798a084fba47a1f155a Mon Sep 17 00:00:00 2001 +From: Jaedon Shin +Date: Fri, 16 Jun 2017 20:03:01 +0900 +Subject: MIPS: BMIPS: Fix missing cbr address + +From: Jaedon Shin + +commit ea4b3afe1eac8f88bb453798a084fba47a1f155a upstream. + +Fix NULL pointer access in BMIPS3300 RAC flush. + +Fixes: 738a3f79027b ("MIPS: BMIPS: Add early CPU initialization code") +Signed-off-by: Jaedon Shin +Reviewed-by: Florian Fainelli +Cc: Kevin Cernekee +Cc: linux-mips@linux-mips.org +Patchwork: https://patchwork.linux-mips.org/patch/16423/ +Signed-off-by: James Hogan +Signed-off-by: Greg Kroah-Hartman + +--- + arch/mips/kernel/smp-bmips.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/arch/mips/kernel/smp-bmips.c ++++ b/arch/mips/kernel/smp-bmips.c +@@ -587,11 +587,11 @@ void __init bmips_cpu_setup(void) + + /* Flush and enable RAC */ + cfg = __raw_readl(cbr + BMIPS_RAC_CONFIG); +- __raw_writel(cfg | 0x100, BMIPS_RAC_CONFIG); ++ __raw_writel(cfg | 0x100, cbr + BMIPS_RAC_CONFIG); + __raw_readl(cbr + BMIPS_RAC_CONFIG); + + cfg = __raw_readl(cbr + BMIPS_RAC_CONFIG); +- __raw_writel(cfg | 0xf, BMIPS_RAC_CONFIG); ++ __raw_writel(cfg | 0xf, cbr + BMIPS_RAC_CONFIG); + __raw_readl(cbr + BMIPS_RAC_CONFIG); + + cfg = __raw_readl(cbr + BMIPS_RAC_ADDRESS_RANGE); diff --git a/queue-4.9/rbd-use-gfp_noio-for-parent-stat-and-data-requests.patch b/queue-4.9/rbd-use-gfp_noio-for-parent-stat-and-data-requests.patch new file mode 100644 index 00000000000..7060a446f07 --- /dev/null +++ b/queue-4.9/rbd-use-gfp_noio-for-parent-stat-and-data-requests.patch @@ -0,0 +1,43 @@ +From 1e37f2f84680fa7f8394fd444b6928e334495ccc Mon Sep 17 00:00:00 2001 +From: Ilya Dryomov +Date: Mon, 6 Nov 2017 11:33:36 +0100 +Subject: rbd: use GFP_NOIO for parent stat and data requests + +From: Ilya Dryomov + +commit 1e37f2f84680fa7f8394fd444b6928e334495ccc upstream. + +rbd_img_obj_exists_submit() and rbd_img_obj_parent_read_full() are on +the writeback path for cloned images -- we attempt a stat on the parent +object to see if it exists and potentially read it in to call copyup. +GFP_NOIO should be used instead of GFP_KERNEL here. + +Link: http://tracker.ceph.com/issues/22014 +Signed-off-by: Ilya Dryomov +Reviewed-by: David Disseldorp +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/block/rbd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/block/rbd.c ++++ b/drivers/block/rbd.c +@@ -2788,7 +2788,7 @@ static int rbd_img_obj_parent_read_full( + * from the parent. + */ + page_count = (u32)calc_pages_for(0, length); +- pages = ceph_alloc_page_vector(page_count, GFP_KERNEL); ++ pages = ceph_alloc_page_vector(page_count, GFP_NOIO); + if (IS_ERR(pages)) { + result = PTR_ERR(pages); + pages = NULL; +@@ -2922,7 +2922,7 @@ static int rbd_img_obj_exists_submit(str + */ + size = sizeof (__le64) + sizeof (__le32) + sizeof (__le32); + page_count = (u32)calc_pages_for(0, size); +- pages = ceph_alloc_page_vector(page_count, GFP_KERNEL); ++ pages = ceph_alloc_page_vector(page_count, GFP_NOIO); + if (IS_ERR(pages)) { + ret = PTR_ERR(pages); + goto fail_stat_request; diff --git a/queue-4.9/series b/queue-4.9/series index a399fcf7812..d234309e154 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -70,3 +70,10 @@ mips-fix-race-on-setting-and-getting-cpu_online_mask.patch mips-smp-fix-deadlock-online-race.patch selftests-firmware-send-expected-errors-to-dev-null.patch tools-firmware-check-for-distro-fallback-udev-cancel-rule.patch +asoc-sun4i-spdif-remove-legacy-dapm-components.patch +mips-bmips-fix-missing-cbr-address.patch +mips-ar7-defer-registration-of-gpio.patch +mips-ar7-ensure-that-serial-ports-are-properly-set-up.patch +input-elan_i2c-add-elan060c-to-the-acpi-table.patch +rbd-use-gfp_noio-for-parent-stat-and-data-requests.patch +drm-vmwgfx-fix-ubuntu-17.10-wayland-black-screen-issue.patch