Summary ------------------------------------------------------------------------
kernel: 4.9.197-rc1 git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git git branch: linux-4.9.y git commit: d3fe57936b139389a0a81ac9aa4c7962aba784b5 git describe: v4.9.196-86-gd3fe57936b13 Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.9-oe-sanity/build/v4.9....
No regressions (compared to build v4.9.196-38-g78f8600d5168)
No fixes (compared to build v4.9.196-38-g78f8600d5168)
Boards, architectures and test suites: -------------------------------------
dragonboard-410c * build - fail: 1,
hi6220-hikey * build - fail: 1,
i386 * build - pass: 1, * ltp-quickhit-tests - pass: 109,
juno-r2 - arm64 * build - fail: 1,
x15 - arm * build - fail: 1,
x86_64 * build - pass: 1, * ltp-quickhit-tests - pass: 108, skip: 1,
On Tue, Oct 15, 2019 at 08:33:15AM +0000, Linaro QA wrote:
Summary
kernel: 4.9.197-rc1 git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git git branch: linux-4.9.y git commit: d3fe57936b139389a0a81ac9aa4c7962aba784b5 git describe: v4.9.196-86-gd3fe57936b13 Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.9-oe-sanity/build/v4.9....
No regressions (compared to build v4.9.196-38-g78f8600d5168)
No fixes (compared to build v4.9.196-38-g78f8600d5168)
Boards, architectures and test suites:
dragonboard-410c
- build - fail: 1,
What are these build failures?
On Tue, 15 Oct 2019 at 15:21, Greg KH gregkh@linuxfoundation.org wrote:
On Tue, Oct 15, 2019 at 08:33:15AM +0000, Linaro QA wrote:
Summary
kernel: 4.9.197-rc1 git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git git branch: linux-4.9.y git commit: d3fe57936b139389a0a81ac9aa4c7962aba784b5 git describe: v4.9.196-86-gd3fe57936b13 Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.9-oe-sanity/build/v4.9....
No regressions (compared to build v4.9.196-38-g78f8600d5168)
No fixes (compared to build v4.9.196-38-g78f8600d5168)
Boards, architectures and test suites:
dragonboard-410c
- build - fail: 1,
What are these build failures?
The reporting to be fixed for this case as "regression detected" The actual results are 4.9 build failed for arm and arm64.
Build errors: ---------------- drivers/mmc/host/sdhci-of-esdhc.c: In function 'esdhc_of_enable_dma': drivers/mmc/host/sdhci-of-esdhc.c:400:6: error: implicit declaration of function 'of_dma_is_coherent' [-Werror=implicit-function-declaration] if (of_dma_is_coherent(dev->of_node)) ^~~~~~~~~~~~~~~~~~ drivers/mmc/host/sdhci-of-esdhc.c:400:25: error: 'dev' undeclared (first use in this function); did you mean 'cdev'? if (of_dma_is_coherent(dev->of_node)) ^~~ cdev
- Naresh
Build error for arm64:
CC drivers/mmc/host/sdhci-of-esdhc.o drivers/mmc/host/sdhci-of-esdhc.c: In function ‘esdhc_of_enable_dma’: drivers/mmc/host/sdhci-of-esdhc.c:400:6: error: implicit declaration of function ‘of_dma_is_coherent’ [-Werror=implicit-function-declaration] if (of_dma_is_coherent(dev->of_node)) ^~~~~~~~~~~~~~~~~~ drivers/mmc/host/sdhci-of-esdhc.c:400:25: error: ‘dev’ undeclared (first use in this function); did you mean ‘cdev’? if (of_dma_is_coherent(dev->of_node)) ^~~ cdev
git bisect bad 0910bbedd34d110645d20abb5c9d62f677e6798d is the first bad commit commit 0910bbedd34d110645d20abb5c9d62f677e6798d Author: Russell King rmk+kernel@armlinux.org.uk Date: Sun Sep 22 11:26:58 2019 +0100
mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence
commit 121bd08b029e03404c451bb237729cdff76eafed upstream.
We must not unconditionally set the DMA snoop bit; if the DMA API is assuming that the device is not DMA coherent, and the device snoops the CPU caches, the device can see stale cache lines brought in by speculative prefetch.
This leads to the device seeing stale data, potentially resulting in corrupted data transfers. Commonly, this results in a descriptor fetch error such as:
mmc0: ADMA error mmc0: sdhci: ============ SDHCI REGISTER DUMP =========== mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00002202 mmc0: sdhci: Blk size: 0x00000008 | Blk cnt: 0x00000001 mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000013 mmc0: sdhci: Present: 0x01f50008 | Host ctl: 0x00000038 mmc0: sdhci: Power: 0x00000003 | Blk gap: 0x00000000 mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x000040d8 mmc0: sdhci: Timeout: 0x00000003 | Int stat: 0x00000001 mmc0: sdhci: Int enab: 0x037f108f | Sig enab: 0x037f108b mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00002202 mmc0: sdhci: Caps: 0x35fa0000 | Caps_1: 0x0000af00 mmc0: sdhci: Cmd: 0x0000333a | Max curr: 0x00000000 mmc0: sdhci: Resp[0]: 0x00000920 | Resp[1]: 0x001d8a33 mmc0: sdhci: Resp[2]: 0x325b5900 | Resp[3]: 0x3f400e00 mmc0: sdhci: Host ctl2: 0x00000000 mmc0: sdhci: ADMA Err: 0x00000009 | ADMA Ptr: 0x000000236d43820c mmc0: sdhci: ============================================ mmc0: error -5 whilst initialising SD card
but can lead to other errors, and potentially direct the SDHCI controller to read/write data to other memory locations (e.g. if a valid descriptor is visible to the device in a stale cache line.)
Fix this by ensuring that the DMA snoop bit corresponds with the behaviour of the DMA API. Since the driver currently only supports DT, use of_dma_is_coherent(). Note that device_get_dma_attr() can not be used as that risks re-introducing this bug if/when the driver is converted to ACPI.
Signed-off-by: Russell King rmk+kernel@armlinux.org.uk Acked-by: Adrian Hunter adrian.hunter@intel.com Cc: stable@vger.kernel.org Signed-off-by: Ulf Hansson ulf.hansson@linaro.org Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org
:040000 040000 43d3aba568fef9df851e88220987dc15da674183 1ad98a1b18189f004da2bd9838e9097badbbf9f4 M drivers
- Naresh
On Tue, Oct 15, 2019 at 05:19:50PM +0530, Naresh Kamboju wrote:
On Tue, 15 Oct 2019 at 15:21, Greg KH gregkh@linuxfoundation.org wrote:
On Tue, Oct 15, 2019 at 08:33:15AM +0000, Linaro QA wrote:
Summary
kernel: 4.9.197-rc1 git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git git branch: linux-4.9.y git commit: d3fe57936b139389a0a81ac9aa4c7962aba784b5 git describe: v4.9.196-86-gd3fe57936b13 Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.9-oe-sanity/build/v4.9....
No regressions (compared to build v4.9.196-38-g78f8600d5168)
No fixes (compared to build v4.9.196-38-g78f8600d5168)
Boards, architectures and test suites:
dragonboard-410c
- build - fail: 1,
What are these build failures?
The reporting to be fixed for this case as "regression detected" The actual results are 4.9 build failed for arm and arm64.
Build errors:
drivers/mmc/host/sdhci-of-esdhc.c: In function 'esdhc_of_enable_dma': drivers/mmc/host/sdhci-of-esdhc.c:400:6: error: implicit declaration of function 'of_dma_is_coherent' [-Werror=implicit-function-declaration] if (of_dma_is_coherent(dev->of_node)) ^~~~~~~~~~~~~~~~~~ drivers/mmc/host/sdhci-of-esdhc.c:400:25: error: 'dev' undeclared (first use in this function); did you mean 'cdev'? if (of_dma_is_coherent(dev->of_node)) ^~~ cdev
thanks for this, will go drop this from 4.4 and 4.9 trees.
greg k-h