Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 283506fcd65d - Linux 5.0.1
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out a ref:
Repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Ref: 283506fcd65d - Linux 5.0.1
We then merged the patchset with `git am`:
media-uvcvideo-fix-type-check-leading-to-overflow.patch
input-wacom_serial4-add-support-for-wacom-artpad-ii-tablet.patch
input-elan_i2c-add-id-for-touchpad-found-in-lenovo-s21e-20.patch
iscsi_ibft-fix-missing-break-in-switch-statement.patch
scsi-aacraid-fix-missing-break-in-switch-statement.patch
x86-pci-fixup-rtit_bar-of-intel-denverton-trace-hub.patch
arm64-dts-zcu100-revc-give-wifi-some-time-after-power-on.patch
arm64-dts-hikey-give-wifi-some-time-after-power-on.patch
arm64-dts-hikey-revert-enable-hs200-mode-on-emmc.patch
arm-dts-exynos-fix-pinctrl-definition-for-emmc-rtsn-line-on-odroid-x2-u3.patch
arm-dts-exynos-add-minimal-clkout-parameters-to-exynos3250-pmu.patch
arm-dts-exynos-fix-max-voltage-for-buck8-regulator-on-odroid-xu3-xu4.patch
drm-disable-uncached-dma-optimization-for-arm-and-ar.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
arm64:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/aarch64/ea947eeddb131c3b715c92d170…
powerpc:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/ppc64le/597a45de702fdef6adb113951f…
x86_64:
make options: make INSTALL_MOD_STRIP=1 -j64 targz-pkg -j64
configuration: https://artifacts.cki-project.org/builds/x86_64/1f330c38d3d4bed83a3e1be27c6…
Hardware testing
----------------
We booted each kernel and ran the following tests:
arm64:
Boot test [0]
LTP lite - release 20190115 [1]
AMTU (Abstract Machine Test Utility) [2]
httpd: mod_ssl smoke sanity [3] ⚠
httpd: php sanity [4] ⚠
tuned: tune-processes-through-perf [5] ⚠
powerpc:
Boot test [0]
LTP lite - release 20190115 [1]
AMTU (Abstract Machine Test Utility) [2]
httpd: mod_ssl smoke sanity [3] ⚠
httpd: php sanity [4] ⚠
tuned: tune-processes-through-perf [5] ⚠
x86_64:
Boot test [0]
LTP lite - release 20190115 [1]
AMTU (Abstract Machine Test Utility) [2]
httpd: mod_ssl smoke sanity [3] ⚠
httpd: php sanity [4] ⚠
tuned: tune-processes-through-perf [5] ⚠
Test source:
[0]: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
[1]: https://github.com/CKI-project/tests-beaker/archive/master.zip#distribution…
[2]: https://github.com/CKI-project/tests-beaker/archive/master.zip#misc/amtu
[3]: https://github.com/CKI-project/tests-beaker/archive/master.zip#packages/htt…
[4]: https://github.com/CKI-project/tests-beaker/archive/master.zip#packages/htt…
[5]: https://github.com/CKI-project/tests-beaker/archive/master.zip#packages/tun…
Experimental tests (marked with ⚠ )
-----------------------------------
This test run included experimental tests. These tests are
still under development and they may not pass or fail correctly under certain
conditions.
Async update callbacks are expected to set the old_fb in the new_state
so prepare/cleanup framebuffers are balanced.
Calling drm_atomic_set_fb_for_plane() (which gets a reference of the new
fb and put the old fb) is not required, as it's taken care by
drm_mode_cursor_universal() when calling drm_atomic_helper_update_plane().
Cc: <stable(a)vger.kernel.org> # v4.19+
Fixes: 539c320bfa97 ("drm/vc4: update cursors asynchronously through atomic")
Suggested-by: Boris Brezillon <boris.brezillon(a)collabora.com>
Signed-off-by: Helen Koike <helen.koike(a)collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon(a)collabora.com>
---
Hello,
I tested on a Raspberry Pi model B rev2 with igt plane_cursor_legacy and
kms_cursor_legacy and I didn't see any regressions.
Changes in v2:
- Added reviewed-by tag
- updated CC stable and Fixes tag
drivers/gpu/drm/vc4/vc4_plane.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
index 1babfeca0c92..1235e53b22a3 100644
--- a/drivers/gpu/drm/vc4/vc4_plane.c
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
@@ -968,7 +968,7 @@ static void vc4_plane_atomic_async_update(struct drm_plane *plane,
{
struct vc4_plane_state *vc4_state, *new_vc4_state;
- drm_atomic_set_fb_for_plane(plane->state, state->fb);
+ swap(plane->state->fb, state->fb);
plane->state->crtc_x = state->crtc_x;
plane->state->crtc_y = state->crtc_y;
plane->state->crtc_w = state->crtc_w;
--
2.20.1
Async update callbacks are expected to set the old_fb in the new_state
so prepare/cleanup framebuffers are balanced.
Cc: <stable(a)vger.kernel.org> # v4.14+
Fixes: 224a4c970987 ("drm/msm: update cursors asynchronously through atomic")
Suggested-by: Boris Brezillon <boris.brezillon(a)collabora.com>
Signed-off-by: Helen Koike <helen.koike(a)collabora.com>
---
Hello,
As mentioned in the cover letter,
But I couldn't test on MSM because I don't have the hardware and I would
appreciate if anyone could test it.
In other platforms (VC4, AMD, Rockchip), there is a hidden
drm_framebuffer_get(new_fb)/drm_framebuffer_put(old_fb) in async_update
that is wrong, but I couldn't identify those here, not sure if it is hidden
somewhere else, but if tests fail this is probably the cause.
Thanks!
Helen
Changes in v2:
- update CC stable and Fixes tag
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
index be13140967b4..b854f471e9e5 100644
--- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
+++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
@@ -502,6 +502,8 @@ static int mdp5_plane_atomic_async_check(struct drm_plane *plane,
static void mdp5_plane_atomic_async_update(struct drm_plane *plane,
struct drm_plane_state *new_state)
{
+ struct drm_framebuffer *old_fb = plane->state->fb;
+
plane->state->src_x = new_state->src_x;
plane->state->src_y = new_state->src_y;
plane->state->crtc_x = new_state->crtc_x;
@@ -524,6 +526,8 @@ static void mdp5_plane_atomic_async_update(struct drm_plane *plane,
*to_mdp5_plane_state(plane->state) =
*to_mdp5_plane_state(new_state);
+
+ new_state->fb = old_fb;
}
static const struct drm_plane_helper_funcs mdp5_plane_helper_funcs = {
--
2.20.1
The patch titled
Subject: fs/open.c: allow opening only regular files during execve()
has been added to the -mm tree. Its filename is
fs-allow-opening-only-regular-files-during-execve.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/fs-allow-opening-only-regular-file…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/fs-allow-opening-only-regular-file…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Tetsuo Handa <penguin-kernel(a)I-love.SAKURA.ne.jp>
Subject: fs/open.c: allow opening only regular files during execve()
syzbot is hitting lockdep warning [1] due to trying to open a fifo during
an execve() operation. But we don't need to open non regular files during
an execve() operation, for all files which we will need are the executable
file itself and the interpreter programs like /bin/sh and ld-linux.so.2 .
Since the manpage for execve(2) says that execve() returns EACCES when the
file or a script interpreter is not a regular file, and the manpage for
uselib(2) says that uselib() can return EACCES, and we use FMODE_EXEC when
opening for execve()/uselib(), we can bail out if a non regular file is
requested with FMODE_EXEC set.
Since this deadlock followed by khungtaskd warnings is trivially
reproducible by a local unprivileged user, and syzbot's frequent crash due
to this deadlock defers finding other bugs, let's workaround this deadlock
until we get a chance to find a better solution.
[1] https://syzkaller.appspot.com/bug?id=b5095bfec44ec84213bac54742a82483aad578…
Link: http://lkml.kernel.org/r/1552044017-7890-1-git-send-email-penguin-kernel@I-…
Reported-by: syzbot <syzbot+e93a80c1bb7c5c56e522461c149f8bf55eab1b2b(a)syzkaller.appspotmail.com>
Fixes: 8924feff66f35fe2 ("splice: lift pipe_lock out of splice_to_pipe()")
Signed-off-by: Tetsuo Handa <penguin-kernel(a)I-love.SAKURA.ne.jp>
Acked-by: Kees Cook <keescook(a)chromium.org>
Cc: Al Viro <viro(a)zeniv.linux.org.uk>
Cc: Eric Biggers <ebiggers3(a)gmail.com>
Cc: Dmitry Vyukov <dvyukov(a)google.com>
Cc: <stable(a)vger.kernel.org> [4.9+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
--- a/fs/open.c~fs-allow-opening-only-regular-files-during-execve
+++ a/fs/open.c
@@ -733,6 +733,12 @@ static int do_dentry_open(struct file *f
return 0;
}
+ /* Any file opened for execve()/uselib() has to be a regular file. */
+ if (unlikely(f->f_flags & FMODE_EXEC && !S_ISREG(inode->i_mode))) {
+ error = -EACCES;
+ goto cleanup_file;
+ }
+
if (f->f_mode & FMODE_WRITE && !special_file(inode->i_mode)) {
error = get_write_access(inode);
if (unlikely(error))
_
Patches currently in -mm which might be from penguin-kernel(a)I-love.SAKURA.ne.jp are
fs-allow-opening-only-regular-files-during-execve.patch
info-task-hung-in-generic_file_write_iter.patch
info-task-hung-in-generic_file_write-fix.patch