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 linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 27 Aug 2020 23:18:23 +0300 From: Andy Shevchenko <andy.shevchenko@...il.com> To: Raul E Rangel <rrangel@...omium.org> Cc: linux-input <linux-input@...r.kernel.org>, Dmitry Torokhov <dmitry.torokhov@...il.com>, "S, Shirish" <Shirish.S@....com>, Andy Shevchenko <andy@...radead.org>, Dan Murphy <dmurphy@...com>, Darren Hart <dvhart@...radead.org>, Jacek Anaszewski <jacek.anaszewski@...il.com>, "Lee, Chun-Yi" <jlee@...e.com>, Pavel Machek <pavel@....cz>, Rajat Jain <rajatja@...gle.com>, Stephen Boyd <swboyd@...omium.org>, Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, Linux LED Subsystem <linux-leds@...r.kernel.org>, Platform Driver <platform-driver-x86@...r.kernel.org> Subject: Re: [PATCH 1/2] Input: i8042 - Prevent intermixing i8042 commands On Thu, Aug 27, 2020 at 11:12 PM Andy Shevchenko <andy.shevchenko@...il.com> wrote: > On Thu, Aug 27, 2020 at 10:52 PM Raul E Rangel <rrangel@...omium.org> wrote: ... > > + mutex_lock(&i8042_mutex); > > + > > spin_lock_irqsave(&i8042_lock, flags); > > retval = __i8042_command(param, command); > > spin_unlock_irqrestore(&i8042_lock, flags); > > > > + mutex_unlock(&i8042_mutex); > > Question 1. Why do you need mutex at all in the above situation? Spin > lock isn't enough? > > ... > > > - i8042_lock_chip(); > > - > > if (value == LED_OFF) > > i8042_command(NULL, CLEVO_MAIL_LED_OFF); > > else if (value <= LED_HALF) > > i8042_command(NULL, CLEVO_MAIL_LED_BLINK_0_5HZ); > > else > > i8042_command(NULL, CLEVO_MAIL_LED_BLINK_1HZ); > > - > > - i8042_unlock_chip(); > > - > > Now, these three commands are not considered as a transaction (no > atomicity). That's why your patch is wrong. Ah, I didn't pay attention that this is one command call. But still Q1 is valid. -- With Best Regards, Andy Shevchenko
Powered by blists - more mailing lists