wireguard: Clear keys after suspend despite CONFIG_ANDROID=y
authorBen Hutchings <benh@debian.org>
Thu, 7 Jul 2022 16:58:43 +0000 (18:58 +0200)
committerSalvatore Bonaccorso <carnil@debian.org>
Fri, 21 Oct 2022 20:24:21 +0000 (21:24 +0100)
Forwarded: not-needed

WireGuard assumes that CONFIG_ANDROID implies Android power
management, i.e. user-space suspending the system automatically at
short intervals, and so does not clear keys after a suspend/resume
cycle.  Debian systems don't do that kind of power management but we
do set CONFIG_ANDROID on some architectures as a dependency of Binder.

In 5.20, CONFIG_PM_USERSPACE_AUTOSLEEP will be introduced to tell the
kernel that this kind of power management is in use, and
CONFIG_ANDROID will be removed.  For now, remove this one test that
does the wrong thing for us.

References: https://lwn.net/Articles/899743/

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name wireguard-ignore-config_android.patch

drivers/net/wireguard/device.c

index e0693cd965ec4187c59a6f29659d73d133532487..716b43ce26278ba0a4d3e5c49b186cc5c16ac555 100644 (file)
@@ -71,7 +71,7 @@ static int wg_pm_notification(struct notifier_block *nb, unsigned long action,
         * its normal operation rather than as a somewhat rare event, then we
         * don't actually want to clear keys.
         */
-       if (IS_ENABLED(CONFIG_PM_AUTOSLEEP) || IS_ENABLED(CONFIG_ANDROID))
+       if (IS_ENABLED(CONFIG_PM_AUTOSLEEP))
                return 0;
 
        if (action != PM_HIBERNATION_PREPARE && action != PM_SUSPEND_PREPARE)