Bug 211081

Summary: Regression since 5.6.19 - psmouse losing sync
Product: Drivers Reporter: Bob Hepple (bob.hepple)
Component: Input DevicesAssignee: drivers_input-devices
Severity: high    
Priority: P1    
Hardware: Intel   
OS: Linux   
Kernel Version: 5.9.16 Subsystem:
Regression: No Bisected commit-id:

Description Bob Hepple 2021-01-08 00:23:00 UTC
5.9.16 gives sporadic halts in mouse movement - about every 5 seconds. journalctl shows:

kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away.

... sometimes 1-5 bytes eg:

kernel: psmouse serio1: synaptics: queried max coordinates: x [..5398], y [..4728]
kernel: psmouse serio1: resync failed, issuing reconnect request
ernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost synchronization, throwing 4 bytes away.

5.6.19 was fine.

Hardware is Dell XPS L502X 

model name      : Intel(R) Core(TM) i7-2630QM CPU @ 2.00GHz
Comment 1 Bob Hepple 2021-01-08 00:36:38 UTC
5.7.11 was also fine
Comment 2 Bob Hepple 2021-01-21 08:21:39 UTC
5.10.8 is also problematic - I also noticed that the keyboard is also laggy every now and then - about every 4-5 seconds.
Comment 3 Bob Hepple 2021-01-21 09:35:21 UTC
I've tried the i8042.nomux=1 workaround (from 2008?) (to no avail)
Comment 4 Bob Hepple 2021-01-23 22:05:30 UTC
I did a git bisect on this problem on Linus's tree and my normal fedora .config and found that the breaking change was:

commit b8a13e5e8f37eeca28da8ce027df7ab7f4a79cb4 (HEAD, refs/bisect/bad)
Author: Thomas Hebb <tommyhebb@gmail.com>
Date:   Sat Apr 4 16:49:00 2020 -0400

    hwmon: (dell-smm) Use one DMI match for all XPS models
    Currently, each new XPS has to be added manually for module autoloading
    to work. Since fan multiplier autodetection should work fine on all XPS
    models, just match them all with one block like is done for Precision
    and Studio.
    The only match we replace that doesn't already use autodetection is
    "XPS13" which, according to Google, only matches the XPS 13 9333. (All
    other XPS 13 models have "XPS" as its own word, surrounded by spaces.)
    According to the thread at [1], autodetection works for the XPS 13 9333,
    meaning this shouldn't regress it. I do not own one to confirm with,
    Tested on an XPS 13 9350 and confirmed the module now autoloads and
    reports reasonable-looking data. I am using BIOS 1.12.2 and do not see
    any freezes when querying fan speed.
    [1] https://lore.kernel.org/patchwork/patch/525367/
    Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
    Acked-by: Pali Rohár <pali@kernel.org>
    Link: https://lore.kernel.org/r/5d7e498b83e89ce7c41a449b61919c65d0770b73.1586033337.git.tommyhebb@gmail.com
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>

$ git bisect log
git bisect start
# good: [3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162] Linux 5.7
git bisect good 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162
# bad: [bcf876870b95592b52519ed4aafcf9d95999bc9c] Linux 5.8
git bisect bad bcf876870b95592b52519ed4aafcf9d95999bc9c
# bad: [694b5a5d313f3997764b67d52bab66ec7e59e714] Merge tag 'arm-soc-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
git bisect bad 694b5a5d313f3997764b67d52bab66ec7e59e714
# bad: [2e63f6ce7ed2c4ff83ba30ad9ccad422289a6c63] Merge branch 'uaccess.comedi' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
git bisect bad 2e63f6ce7ed2c4ff83ba30ad9ccad422289a6c63
# good: [3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162] Linux 5.7
git bisect good 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162
# bad: [cfa3b8068b09f25037146bfd5eed041b78878bee] Merge tag 'for-linus-hmm' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
git bisect bad cfa3b8068b09f25037146bfd5eed041b78878bee
# bad: [17e0a7cb6a254c6d086562e7adf8b7ac24d267f3] Merge tag 'x86-cleanups-2020-06-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad 17e0a7cb6a254c6d086562e7adf8b7ac24d267f3
# bad: [0bd957eb11cfeef23fcc240edde6dfe431731e69] Merge tag 'core-kprobes-2020-06-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad 0bd957eb11cfeef23fcc240edde6dfe431731e69
# bad: [d30fc97c60682f9bf5d6898ab370de0007e96742] Merge tag 'regulator-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
git bisect bad d30fc97c60682f9bf5d6898ab370de0007e96742
# good: [de4c2875a5ff2c886df60f2086c6affca83f890a] spi: dw: Set xfer effective_speed_hz
git bisect good de4c2875a5ff2c886df60f2086c6affca83f890a
# bad: [213fd09e1aff05433d6855287808a235c9801c1b] Merge tag 'regmap-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap
git bisect bad 213fd09e1aff05433d6855287808a235c9801c1b
# bad: [fff2d0f701e6753591609739f8ab9be1c8e80ebb] hwmon: (applesmc) avoid overlong udelay()
git bisect bad fff2d0f701e6753591609739f8ab9be1c8e80ebb
# bad: [229d495d8189ae785dacee72e5633a58edc25ddf] hwmon: (lm90) Add max6654 support to lm90 driver
git bisect bad 229d495d8189ae785dacee72e5633a58edc25ddf
# bad: [44e3ad882bb268563766c45cd842a229dd3a4902] hwmon: Reduce indentation level in __hwmon_device_register()
git bisect bad 44e3ad882bb268563766c45cd842a229dd3a4902
# bad: [b8a13e5e8f37eeca28da8ce027df7ab7f4a79cb4] hwmon: (dell-smm) Use one DMI match for all XPS models
git bisect bad b8a13e5e8f37eeca28da8ce027df7ab7f4a79cb4
Comment 5 Bob Hepple 2021-01-23 22:20:56 UTC
dmesg gives:

[    0.000000] DMI: Dell Inc.          Dell System XPS L502X/0YR8NN, BIOS A12 09/07/2012
Comment 6 Bob Hepple 2021-01-25 02:04:46 UTC
Should be fixed by this patch:

Guenter Roeck <linux@roeck-us.net>	25 January 2021 at 02:46
To: Thomas Hebb <tommyhebb@gmail.com>
Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, Bob Hepple <bob.hepple@gmail.com>, Jean Delvare <jdelvare@suse.com>, Pali Rohár <pali@kernel.org>, linux-hwmon@vger.kernel.org
On Sat, Jan 23, 2021 at 06:46:08PM -0800, Thomas Hebb wrote:
> It has been reported[0] that the Dell XPS 15 L502X exhibits similar
> freezing behavior to the other systems[1] on this blacklist. The issue
> was exposed by a prior change of mine to automatically load
> dell_smm_hwmon on a wider set of XPS models. To fix the regression, add
> this model to the blacklist.
> [0] https://bugzilla.kernel.org/show_bug.cgi?id=211081
> [1] https://bugzilla.kernel.org/show_bug.cgi?id=195751
> Fixes: b8a13e5e8f37 ("hwmon: (dell-smm) Use one DMI match for all XPS
> models")
> Cc: stable@vger.kernel.org
> Reported-by: Bob Hepple <bob.hepple@gmail.com>
> Tested-by: Bob Hepple <bob.hepple@gmail.com>
> Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>


Comment 7 Bob Hepple 2021-01-25 02:05:43 UTC
Here's the patch:

> ---
>  drivers/hwmon/dell-smm-hwmon.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c
> index ec448f5f2dc3..73b9db9e3aab 100644
> --- a/drivers/hwmon/dell-smm-hwmon.c
> +++ b/drivers/hwmon/dell-smm-hwmon.c
> @@ -1159,6 +1159,13 @@ static struct dmi_system_id
> i8k_blacklist_fan_support_dmi_table[] __initdata = {
>                       DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "XPS13 9333"),
>               },
>       },
> +     {
> +             .ident = "Dell XPS 15 L502X",
> +             .matches = {
> +                     DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> +                     DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Dell System XPS
> L502X"),
> +             },
> +     },
>       { }
>  };
Comment 8 Bob Hepple 2021-01-28 05:10:20 UTC
Related bug: https://bugzilla.kernel.org/show_bug.cgi?id=195751