platform/x86: dell-ddv: Fix cache invalidation on resume
authorArmin Wolf <W_Armin@gmx.de>
Sat, 18 Feb 2023 11:53:17 +0000 (12:53 +0100)
committerHans de Goede <hdegoede@redhat.com>
Tue, 7 Mar 2023 10:37:27 +0000 (11:37 +0100)
commit001f61c4688f1dad18cfaa35ae364b35fb3cd66c
treeda49d21a57d9e9c78c5f965c2126bf887c414a8a
parent24efcdf03d85bb73df0ba99f69c8d238e7ada0e5
platform/x86: dell-ddv: Fix cache invalidation on resume

If one or both sensor buffers could not be initialized, either
due to missing hardware support or due to some error during probing,
the resume handler will encounter undefined behaviour when
attempting to lock buffers then protected by an uninitialized or
destroyed mutex.
Fix this by introducing a "active" flag which is set during probe,
and only invalidate buffers which where flaged as "active".

Tested on a Dell Inspiron 3505.

Fixes: 3b7eeff93d29 ("platform/x86: dell-ddv: Add hwmon support")
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20230218115318.20662-1-W_Armin@gmx.de
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/dell/dell-wmi-ddv.c