Re: [PATCH v4 3/7] ACPI: button: Access input device's users under appropriate mutex

From: Rafael J. Wysocki
Date: Wed Jun 24 2020 - 11:00:26 EST


On Mon, Jun 8, 2020 at 1:22 PM Andrzej Pietrasiewicz
<andrzej.p@xxxxxxxxxxxxx> wrote:
>
> Inspecting input device's 'users' member should be done under device's
> mutex, so add appropriate invocations.
>
> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@xxxxxxxxxxxxx>

This looks like a fix that might be applied independently of the other
patches in the series.

Do you want me to pick it up?

> ---
> drivers/acpi/button.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c
> index 78cfc70cb320..ff7ab291f678 100644
> --- a/drivers/acpi/button.c
> +++ b/drivers/acpi/button.c
> @@ -456,13 +456,16 @@ static int acpi_button_resume(struct device *dev)
> {
> struct acpi_device *device = to_acpi_device(dev);
> struct acpi_button *button = acpi_driver_data(device);
> + struct input_dev *input = button->input;
>
> button->suspended = false;
> - if (button->type == ACPI_BUTTON_TYPE_LID && button->input->users) {
> + mutex_lock(&input->mutex);
> + if (button->type == ACPI_BUTTON_TYPE_LID && input->users) {
> button->last_state = !!acpi_lid_evaluate_state(device);
> button->last_time = ktime_get();
> acpi_lid_initialize_state(device);
> }
> + mutex_unlock(&input->mutex);
> return 0;
> }
> #endif
> --
> 2.17.1
>