lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 13 Dec 2020 12:26:35 +0300
From:   Dmitry Osipenko <digetx@...il.com>
To:     Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc:     Nick Dyer <nick@...anahar.org>, Rob Herring <robh+dt@...nel.org>,
        Thierry Reding <thierry.reding@...il.com>,
        Jonathan Hunter <jonathanh@...dia.com>,
        Linus Walleij <linus.walleij@...aro.org>,
        Jiada Wang <jiada_wang@...tor.com>,
        linux-input@...r.kernel.org, devicetree@...r.kernel.org,
        linux-tegra@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 0/3] Support wakeup methods of Atmel maXTouch
 controllers

13.12.2020 07:41, Dmitry Torokhov пишет:
> Thank you for the logs. I am confused where these calls to put the
> controller into deep sleep are coming from. Does something constantly
> open and close input device?

Input devices are re-opened multiple times during Linux distro boot-up,
a regular Ubuntu 20.10 in this case.

> Do you have any additional patches?

No, I'm using next-20201211 + this "wakeup methods" patchset.

> We definitely do not issue deep sleep request in mxt_start(). Do you mind
> putting dump_stack() into mxt_set_t7_power_cfg() to see where the calls
> are coming from?

Please see the log below, I added it like this:

diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c
b/drivers/input/touchscreen/atmel_mxt_ts.c
index e3342fdfe9f3..bbc5a5ee158a 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -2271,6 +2271,8 @@ static int mxt_set_t7_power_cfg(struct mxt_data
*data, u8 sleep)
 	dev_dbg(dev, "Set T7 ACTV:%d IDLE:%d\n",
 		new_config->active, new_config->idle);

+	dump_stack();
+
 	return 0;
 }

> I also do not see additional "waking up controller" messages after
> requesting the chip via T7 to be configured to be active, which I'd
> expected to see if we indeed needed to wake it up again for T6 to
> succeed.

I'm not familiar with what controller does internally, hence no clue.


[ 1.195295] Family: 160 Variant: 0 Firmware V1.0.AA Objects: 18
[ 1.195468] T37 Start:118 Size:130 Instances:1 Report IDs:0-0
[ 1.195482] T44 Start:248 Size:1 Instances:1 Report IDs:0-0
[ 1.195493] T5 Start:249 Size:9 Instances:1 Report IDs:0-0
[ 1.195503] T6 Start:258 Size:6 Instances:1 Report IDs:1-1
[ 1.195513] T38 Start:264 Size:64 Instances:1 Report IDs:0-0
[ 1.195523] T7 Start:328 Size:3 Instances:1 Report IDs:0-0
[ 1.195533] T8 Start:331 Size:10 Instances:1 Report IDs:0-0
[ 1.195543] T9 Start:341 Size:34 Instances:1 Report IDs:2-17
[ 1.195553] T15 Start:375 Size:11 Instances:2 Report IDs:18-19
[ 1.195563] T18 Start:397 Size:2 Instances:1 Report IDs:0-0
[ 1.195573] T22 Start:399 Size:17 Instances:1 Report IDs:20-20
[ 1.195583] T24 Start:416 Size:19 Instances:1 Report IDs:21-24
[ 1.195593] T25 Start:435 Size:14 Instances:1 Report IDs:25-25
[ 1.195602] T27 Start:449 Size:7 Instances:1 Report IDs:26-26
[ 1.195612] T28 Start:456 Size:6 Instances:1 Report IDs:27-27
[ 1.195622] T40 Start:462 Size:5 Instances:1 Report IDs:0-0
[ 1.195631] T41 Start:467 Size:6 Instances:1 Report IDs:0-0
[ 1.195641] T43 Start:473 Size:6 Instances:1 Report IDs:0-0
[ 1.195746] Direct firmware load for maxtouch.cfg failed with error -2
[ 1.196199] T6 Config Checksum: 0x8D7459
[ 1.196212] T6 Status 0x90 RESET CAL
[ 1.196428] Initialized power cfg: ACTV 10, IDLE 50
[ 1.197275] Touchscreen size X1279Y799
[ 1.210563] T6 Status 0x00 OK
[14.866461] Set T7 ACTV:10 IDLE:50
[14.866495] CPU: 1 PID: 209 Comm: systemd-udevd Tainted: G        W
[14.866507] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[14.866523]  (unwind_backtrace) from  (show_stack)
[14.866568]  (show_stack) from  (dump_stack)
[14.866599]  (dump_stack) from  (mxt_set_t7_power_cfg)
[14.866635]  (mxt_set_t7_power_cfg) from  (mxt_start)
[14.866654]  (mxt_start) from  (mxt_input_open)
[14.866673]  (mxt_input_open) from  (input_open_device)
[14.866708]  (input_open_device) from  (evdev_open+0x113/0x134)
[14.866735]  (evdev_open) from  (chrdev_openc)
[14.866763]  (chrdev_open) from  (do_dentry_open4)
[14.866791]  (do_dentry_open) from  (path_openat+0x6b9/0xa04)
[14.866815]  (path_openat) from  (do_filp_open)
[14.866833]  (do_filp_open) from  (do_sys_openat2+0x1bf/0x23c)
[14.866850]  (do_sys_openat2) from  (do_sys_open)
[14.866872]  (do_sys_open) from  (__sys_trace_return+0x1/0x16)
[14.894683] Set T7 ACTV:0 IDLE:0
[14.894719] CPU: 1 PID: 209 Comm: systemd-udevd Tainted: G        W
[14.894732] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[14.894748]  (unwind_backtrace) from  (show_stack)
[14.894791]  (show_stack) from  (dump_stack)
[14.894822]  (dump_stack) from  (mxt_set_t7_power_cfg)
[14.894856]  (mxt_set_t7_power_cfg) from  (mxt_stop)
[14.894875]  (mxt_stop) from  (input_close_device)
[14.894908]  (input_close_device) from  (evdev_release)
[14.894934]  (evdev_release) from  (__fput8)
[14.894958]  (__fput) from  (task_work_run)
[14.894975]  (task_work_run) from  (do_work_pending+0x38d/0x438)
[14.894991]  (do_work_pending) from  (slow_work_pending+0x9/0x16)
[14.898242] T6 Status 0x10 CAL
[15.186570] Set T7 ACTV:10 IDLE:50
[15.186594] CPU: 0 PID: 212 Comm: libinput-fuzz-e Tainted: G        W
[15.186605] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[15.186615]  (unwind_backtrace) from  (show_stack)
[15.186648]  (show_stack) from  (dump_stack)
[15.186671]  (dump_stack) from  (mxt_set_t7_power_cfg)
[15.186699]  (mxt_set_t7_power_cfg) from  (mxt_start)
[15.186715]  (mxt_start) from  (mxt_input_open)
[15.186732]  (mxt_input_open) from  (input_open_device)
[15.186764]  (input_open_device) from  (evdev_open+0x113/0x134)
[15.186786]  (evdev_open) from  (chrdev_openc)
[15.186808]  (chrdev_open) from  (do_dentry_open4)
[15.186830]  (do_dentry_open) from  (path_openat+0x6b9/0xa04)
[15.186848]  (path_openat) from  (do_filp_open)
[15.186863]  (do_filp_open) from  (do_sys_openat2+0x1bf/0x23c)
[15.186878]  (do_sys_openat2) from  (do_sys_open)
[15.186895]  (do_sys_open) from  (__sys_trace_return+0x1/0x16)
[15.210404] T6 Status 0x00 OK
[15.229106] Set T7 ACTV:0 IDLE:0
[15.229132] CPU: 0 PID: 212 Comm: libinput-fuzz-e Tainted: G        W
[15.229148] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[15.229164]  (unwind_backtrace) from  (show_stack)
[15.229208]  (show_stack) from  (dump_stack)
[15.229237]  (dump_stack) from  (mxt_set_t7_power_cfg)
[15.229273]  (mxt_set_t7_power_cfg) from  (mxt_stop)
[15.229294]  (mxt_stop) from  (input_close_device)
[15.229323]  (input_close_device) from  (evdev_release)
[15.229350]  (evdev_release) from  (__fput8)
[15.229370]  (__fput) from  (task_work_run)
[15.229386]  (task_work_run) from  (do_work_pending+0x38d/0x438)
[15.229402]  (do_work_pending) from  (slow_work_pending+0x9/0x16)
[15.322473] waking up controller
[15.357423] Set T7 ACTV:10 IDLE:50
[15.357450] CPU: 1 PID: 216 Comm: libinput-fuzz-t Tainted: G        W
[15.357463] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[15.357476]  (unwind_backtrace) from  (show_stack)
[15.357510]  (show_stack) from  (dump_stack)
[15.357537]  (dump_stack) from  (mxt_set_t7_power_cfg)
[15.357566]  (mxt_set_t7_power_cfg) from  (mxt_start)
[15.357586]  (mxt_start) from  (mxt_input_open)
[15.357604]  (mxt_input_open) from  (input_open_device)
[15.357632]  (input_open_device) from  (evdev_open+0x113/0x134)
[15.357655]  (evdev_open) from  (chrdev_openc)
[15.357679]  (chrdev_open) from  (do_dentry_open4)
[15.357702]  (do_dentry_open) from  (path_openat+0x6b9/0xa04)
[15.357721]  (path_openat) from  (do_filp_open)
[15.357737]  (do_filp_open) from  (do_sys_openat2+0x1bf/0x23c)
[15.357754]  (do_sys_openat2) from  (do_sys_open)
[15.357773]  (do_sys_open) from  (__sys_trace_return+0x1/0x16)
[15.373658] Set T7 ACTV:0 IDLE:0
[15.373683] CPU: 1 PID: 216 Comm: libinput-fuzz-t Tainted: G        W
[15.373696] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[15.373708]  (unwind_backtrace) from  (show_stack)
[15.373744]  (show_stack) from  (dump_stack)
[15.373770]  (dump_stack) from  (mxt_set_t7_power_cfg)
[15.373817]  (mxt_set_t7_power_cfg) from  (mxt_stop)
[15.373856]  (mxt_stop) from  (input_close_device)
[15.373904]  (input_close_device) from  (evdev_release)
[15.373947]  (evdev_release) from  (__fput8)
[15.373971]  (__fput) from  (task_work_run)
[15.373987]  (task_work_run) from  (do_work_pending+0x38d/0x438)
[15.374003]  (do_work_pending) from  (slow_work_pending+0x9/0x16)
[15.375130] T6 Status 0x10 CAL
[26.500032] waking up controller
[26.526733] Set T7 ACTV:10 IDLE:50
[26.526772] CPU: 1 PID: 497 Comm: Xorg Tainted: G        W
[26.526788] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[26.526809]  (unwind_backtrace) from  (show_stack)
[26.526862]  (show_stack) from  (dump_stack)
[26.526903]  (dump_stack) from  (mxt_set_t7_power_cfg)
[26.526943]  (mxt_set_t7_power_cfg) from  (mxt_start)
[26.526965]  (mxt_start) from  (mxt_input_open)
[26.526986]  (mxt_input_open) from  (input_open_device)
[26.527023]  (input_open_device) from  (evdev_open+0x113/0x134)
[26.527051]  (evdev_open) from  (chrdev_openc)
[26.527080]  (chrdev_open) from  (do_dentry_open4)
[26.527108]  (do_dentry_open) from  (path_openat+0x6b9/0xa04)
[26.527130]  (path_openat) from  (do_filp_open)
[26.527149]  (do_filp_open) from  (do_sys_openat2+0x1bf/0x23c)
[26.527167]  (do_sys_openat2) from  (do_sys_open)
[26.527189]  (do_sys_open) from  (ret_fast_syscall+0x1/0x26)
[26.550377] T6 Status 0x00 OK
[26.564628] Set T7 ACTV:0 IDLE:0
[26.564659] CPU: 0 PID: 497 Comm: Xorg Tainted: G        W
[26.564672] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[26.564688]  (unwind_backtrace) from  (show_stack)
[26.564729]  (show_stack) from  (dump_stack)
[26.564759]  (dump_stack) from  (mxt_set_t7_power_cfg)
[26.564793]  (mxt_set_t7_power_cfg) from  (mxt_stop)
[26.564811]  (mxt_stop) from  (input_close_device)
[26.564844]  (input_close_device) from  (evdev_release)
[26.564871]  (evdev_release) from  (__fput8)
[26.564892]  (__fput) from  (task_work_run)
[26.564909]  (task_work_run) from  (do_work_pending+0x38d/0x438)
[26.564924]  (do_work_pending) from  (slow_work_pending+0x9/0x16)
[26.575062] Set T7 ACTV:10 IDLE:50
[26.575097] CPU: 1 PID: 497 Comm: Xorg Tainted: G        W
[26.575114] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[26.575132]  (unwind_backtrace) from  (show_stack)
[26.575189]  (show_stack) from  (dump_stack)
[26.575228]  (dump_stack) from  (mxt_set_t7_power_cfg)
[26.575269]  (mxt_set_t7_power_cfg) from  (mxt_start)
[26.575294]  (mxt_start) from  (mxt_input_open)
[26.575319]  (mxt_input_open) from  (input_open_device)
[26.575363]  (input_open_device) from  (evdev_open+0x113/0x134)
[26.575398]  (evdev_open) from  (chrdev_openc)
[26.575433]  (chrdev_open) from  (do_dentry_open4)
[26.575469]  (do_dentry_open) from  (path_openat+0x6b9/0xa04)
[26.575495]  (path_openat) from  (do_filp_open)
[26.575518]  (do_filp_open) from  (do_sys_openat2+0x1bf/0x23c)
[26.575540]  (do_sys_openat2) from  (do_sys_open)
[26.575566]  (do_sys_open) from  (ret_fast_syscall+0x1/0x26)
[26.577569] waking up controller
[26.656736] T6 Status 0x10 CAL
[26.662621] T6 Status 0x00 OK

Powered by blists - more mailing lists