4.18.20-stable review
Subsystems (12)
Greg Kroah-Hartman
maintainerPATCH 169/171 drm/i915/execlists: Force write serialisation into context image vs execution
In reply to Greg Kroah-Hartman4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Chris Wilson <[email protected]>
commit 0a823e8fd4fd67726697854578f3584ee3a49b1d upstream.
Ensure that the writes into the context image are completed prior to the register mmio to trigger execution. Although previously we were assured by the SDM that all writes are flushed before an uncached memory transaction (our mmio write to submit the context to HW for execution), we have empirical evidence to believe that this is not actually the case.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108656
References: https://bugs.freedesktop.org/show_bug.cgi?id=108315
References: https://bugs.freedesktop.org/show_bug.cgi?id=106887
--- drivers/gpu/drm/i915/intel_lrc.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-)
drivers/gpu/drm/i915/intel_lrc.c +13 -1
@@ -425,7 +425,8 @@ static u64 execlists_update_context(stru reg_state[CTX_RING_TAIL +1 ] =intel_ring_set_tail (rq->ring, rq->tail); -/* True 32b PPGTT with dynamic page allocation: update PDP +/* +* True 32b PPGTT with dynamic page allocation: update PDP * registers and point the unallocated PDPs to scratch page. * PML4 is allocated during ppgtt init, so this is not needed * in 48-bit mode.
@@ -433,6 +434,17 @@ static u64 execlists_update_context(struif (ppgtt && !i915_vm_is_48bit (&ppgtt->base))execlists_update_context_pdps (ppgtt, reg_state); +/* +* Make sure the context image is complete before we submit it to HW. +* +* Ostensibly, writes (including the WCB) should be flushed prior to +* an uncached write such as our mmio register access, the empirical +* evidence (esp. on Braswell) suggests that the WC write into memory +* may not be visible to the HW prior to the completion of the UC +* register write and that we may begin execution from the context +* before its image is complete leading to invalid PD chasing. +*/ +wmb ();return ce->lrc_desc; }
Greg Kroah-Hartman
maintainerPATCH 170/171 drm/i915: Fix possible race in intel_dp_add_mst_connector()
In reply to Greg Kroah-Hartman4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Lyude Paul <[email protected]>
commit 7c4512300cfa5a4dcc8c1c52ae61e3fa4bd11a39 upstream.
This hasn't caused any issues yet that I'm aware of, but as Ville Syrjälä pointed out - we need to make sure that intel_connector->mst_port is set before initializing MST connectors, since in theory we could potentially check intel_connector->mst_port in i915_hpd_poll_init_work() after registering the connector but before having written it's value.
--- drivers/gpu/drm/i915/intel_dp_mst.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/gpu/drm/i915/intel_dp_mst.c +4 -4
@@ -464,6 +464,10 @@ static struct drm_connector *intel_dp_adif (!intel_connector)return NULL ; + intel_connector->get_hw_state = intel_dp_mst_get_hw_state; + intel_connector->mst_port = intel_dp; + intel_connector->port = port; + connector = &intel_connector->base; ret =drm_connector_init (dev, connector, &intel_dp_mst_connector_funcs, DRM_MODE_CONNECTOR_DisplayPort);
@@ -474,10 +478,6 @@ static struct drm_connector *intel_dp_addrm_connector_helper_add (connector, &intel_dp_mst_connector_helper_funcs); - intel_connector->get_hw_state = intel_dp_mst_get_hw_state; - intel_connector->mst_port = intel_dp; - intel_connector->port = port; -for_each_pipe (dev_priv, pipe) {struct drm_encoder *enc = &intel_dp->mst_encoders[pipe]->base.base;
Greg Kroah-Hartman
maintainerPATCH 171/171 CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM
In reply to Greg Kroah-Hartman4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Stefano Stabellini <[email protected]>
commit f9005571701920551bcf54a500973fb61f2e1eda upstream.
xen_create_contiguous_region has now only an implementation if CONFIG_XEN_PV is defined. However, on ARM we never set CONFIG_XEN_PV but we do have an implementation of xen_create_contiguous_region which is required for swiotlb-xen to work correctly (although it just sets *dma_handle).
[backport: remove change to xen_remap_pfn]
--- include/xen/xen-ops.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
include/xen/xen-ops.h +1 -1
@@ -41,7 +41,7 @@ int xen_setup_shutdown_event(void);extern unsigned long *xen_contiguous_bitmap; -#ifdef CONFIG_XEN_PV +#if defined(CONFIG_XEN_PV ) || defined(CONFIG_ARM ) || defined(CONFIG_ARM64 )int xen_create_contiguous_region (phys_addr_t pstart,unsigned int order,unsigned int address_bits,dma_addr_t *dma_handle);
stable-rc/linux-4.18.y boot: 125 boots: 0 failed, 105 passed with 18 offline, 1 untried/unknown, 1 conflict (v4.18.19-172-gc15e70be568b)
stable-rc/linux-4.18.y boot: 125 boots: 0 failed, 105 passed with 18 offline, 1 untried/unknown, 1 conflict (v4.18.19-172-gc15e70be568b)
Full Boot Summary: https://kernelci.org/boot/all/job/stable-rc/branch/linux-4.18.y/kernel/v4.18.19-172-gc15e70be568b/
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-4.18.y/kernel/v4.18.19-172-gc15e70be568b/
Tree: stable-rc
Branch: linux-4.18.y
Git Describe: v4.18.19-172-gc15e70be568b
Git Commit: c15e70be568b978f9a73051089910dd60a81f2a3
Git URL: http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Tested: 66 unique boards, 23 SoC families, 15 builds out of 186
Boot Regressions Detected:
arm:
multi_v7_defconfig:
imx6q-sabrelite:
lab-baylibre: failing since 7 days (last pass: v4.18.17 - first fail: v4.18.18-351-g3c7d01cd1ddb)Offline Platforms:
arm:
omap2plus_defconfig:
am335x-boneblack: 1 offline lab
sunxi_defconfig:
sun5i-r8-chip: 1 offline lab
tegra_defconfig:
tegra124-jetson-tk1: 1 offline lab
bcm2835_defconfig:
bcm2835-rpi-b: 1 offline lab
exynos_defconfig:
exynos5800-peach-pi: 1 offline lab
sama5_defconfig:
at91-sama5d4_xplained: 1 offline lab
multi_v7_defconfig:
alpine-db: 1 offline lab
am335x-boneblack: 1 offline lab
at91-sama5d4_xplained: 1 offline lab
exynos5800-peach-pi: 1 offline lab socfpga_cyclone5_de0_sockit: 1 offline lab
sun5i-r8-chip: 1 offline lab
tegra124-jetson-tk1: 1 offline lab
arm64:
defconfig:
apq8016-sbc: 1 offline lab
juno-r2: 1 offline lab
meson-gxl-s905d-p230: 1 offline lab
meson-gxl-s905x-p212: 1 offline lab
mt7622-rfb1: 1 offline labConflicting Boot Failure Detected: (These likely are not failures as other labs are reporting PASS. Needs review.)
arm:
multi_v7_defconfig:
imx6q-sabrelite:
lab-baylibre: FAIL
lab-collabora: PASS
---
For more info write to <[email protected]>
Quoted 14 lines · Greg Kroah-Hartman
------------------
NOTE, this is going to be the last 4.18.y release. After this one it is end-of-life, please move to 4.19.y at this point in time.
------------------This is the start of the stable review cycle for the 4.18.20 release. There are 171 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed Nov 21 16:25:02 UTC 2018. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 9 lines
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.18.20-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-4.18.y
and the diffstat can be found below.thanks,
greg k-h
Compiled and booted on my test system. No dmesg regressions.
thanks,
-- Shuah
Quoted 15 lines · Greg Kroah-Hartman
------------------
NOTE, this is going to be the last 4.18.y release. After this one it is end-of-life, please move to 4.19.y at this point in time.
------------------This is the start of the stable review cycle for the 4.18.20 release. There are 171 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed Nov 21 16:25:02 UTC 2018. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.18.20-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-4.18.y
and the diffstat can be found below.thanks,
greg k-h
Results from Linaro’s test farm.
No regressions on arm64, arm, x86_64, and i386.
Summary
------------------------------------------------------------------------
kernel: 4.18.20-rc1
git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.18.y
git commit: c15e70be568b978f9a73051089910dd60a81f2a3
git describe: v4.18.19-172-gc15e70be568b
Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.18-oe/build/v4.18.19-172-gc15e70be568b
No regressions (compared to build v4.18.19)
No fixes (compared to build v4.18.19)
Ran 21390 total tests in the following environments and test suites.
Environments
--------------
- dragonboard-410c - arm64
- hi6220-hikey - arm64
- i386
- juno-r2 - arm64
- qemu_arm
- qemu_arm64
- qemu_i386
- qemu_x86_64
- x15 - arm
- x86_64
Test Suites
-----------
* boot
* install-android-platform-tools-r2600
* kselftest
* libhugetlbfs
* ltp-cap_bounds-tests
* ltp-containers-tests
* ltp-cve-tests
* ltp-fcntl-locktests-tests
* ltp-filecaps-tests
* ltp-fs-tests
* ltp-fs_bind-tests
* ltp-fs_perms_simple-tests
* ltp-fsx-tests
* ltp-hugetlb-tests
* ltp-io-tests
* ltp-ipc-tests
* ltp-math-tests
* ltp-nptl-tests
* ltp-pty-tests
* ltp-sched-tests
* ltp-securebits-tests
* ltp-syscalls-tests
* ltp-timers-tests
* ltp-open-posix-tests
* kselftest-vsyscall-mode-native
* kselftest-vsyscall-mode-none
Signature · 2 lines
Linaro LKFT https://lkft.linaro.org
Quoted 5 lines · Greg Kroah-Hartman
------------------
NOTE, this is going to be the last 4.18.y release. After this one it is end-of-life, please move to 4.19.y at this point in time.
------------------
Quoted 8 lines
This is the start of the stable review cycle for the 4.18.20 release. There are 171 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed Nov 21 16:25:02 UTC 2018. Anything received after that time might be too late.
Build results:
total: 136 pass: 136 fail: 0 Qemu test results: total: 296 pass: 296 fail: 0
Details are available at https://kerneltests.org/builders/.
Guenter