From: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
To: Mark Brown
<broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
Cc: Waldemar Rymarkiewicz
<waldemar.rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w@public.gmane.org>,
linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
hthebaud-Umy9UjvE/gtWk0Htik3J/w@public.gmane.org,
matti.j.aaltonen-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org,
Alan Cox <alan-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
Subject: Re: [PATCH] NFC: Driver for Inside Secure MicroRead NFC chip
Date: Fri, 18 Mar 2011 15:20:14 +0100 [thread overview]
Message-ID: <201103181520.14315.arnd@arndb.de> (raw)
In-Reply-To: <20110318125150.GD27129-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
On Friday 18 March 2011, Mark Brown wrote:
> On Fri, Mar 18, 2011 at 01:19:53PM +0100, Arnd Bergmann wrote:
> > On Friday 18 March 2011, Waldemar Rymarkiewicz wrote:
>
> > > +
> > > + mutex_lock(&info->rx_mutex);
> > > + info->irq_state = 1;
> > > + mutex_unlock(&info->rx_mutex);
> > > +
> > > + wake_up_interruptible(&info->rx_waitq);
> > > +
> > > + return IRQ_HANDLED;
> > > +}
>
> > You cannot take a mutex from interrupt context, that may
> > cause deadlocks.
>
> This is a threaded IRQ handler so mutexes are fine.
Ah, right. I've never seen one of these used in the field,
so I didn't think of this.
Looking at the mutexes though: The read function does
not hold the rx_mutex when reading the irq_state
variable, so that is potentially racy.
The read function seems to have another problem regarding
the user space buffer: it bails out if the provided buffer
is larger than the available data, which is pointless,
but it does not check if the user buffer is too short.
Arnd
next prev parent reply other threads:[~2011-03-18 14:20 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-18 10:40 [PATCH] NFC: Driver for Inside Secure MicroRead NFC chip Waldemar Rymarkiewicz
[not found] ` <1300444824-13713-1-git-send-email-waldemar.rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w@public.gmane.org>
2011-03-18 10:40 ` Waldemar Rymarkiewicz
[not found] ` <1300444824-13713-2-git-send-email-waldemar.rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w@public.gmane.org>
2011-03-18 11:03 ` Alan Cox
[not found] ` <20110318110348.728f6036-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2011-03-18 15:00 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481085881963-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-18 15:05 ` Arnd Bergmann
2011-03-18 15:12 ` Alan Cox
[not found] ` <20110318151219.7aedc765-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2011-03-18 15:15 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
2011-03-18 11:49 ` Wolfram Sang
[not found] ` <20110318114931.GA2155-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-03-18 15:08 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B700111448108588196C-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-18 15:31 ` Mark Brown
2011-03-18 16:43 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
2011-03-18 12:19 ` Arnd Bergmann
[not found] ` <201103181319.54191.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-18 12:51 ` Mark Brown
[not found] ` <20110318125150.GD27129-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2011-03-18 14:20 ` Arnd Bergmann [this message]
2011-03-25 14:26 ` Samuel Ortiz
2011-03-29 8:00 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481085E2375D-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-29 11:05 ` Arnd Bergmann
2011-03-29 11:59 ` Alan Cox
[not found] ` <20110329125931.21a69776-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2011-03-29 12:04 ` Arnd Bergmann
[not found] ` <201103291404.39023.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-29 12:23 ` Alan Cox
[not found] ` <20110329132305.7aa065a1-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2011-03-29 13:22 ` Arnd Bergmann
[not found] ` <201103291305.02293.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-31 14:16 ` Samuel Ortiz
2011-03-31 14:42 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481085F0FE5A-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-31 14:49 ` Arnd Bergmann
2011-03-31 15:09 ` Samuel Ortiz
2011-03-31 15:24 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481085F0FE7C-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-31 15:30 ` Samuel Ortiz
2011-04-01 18:19 ` Aloisio Almeida
[not found] ` <AANLkTikjTAFrhS7_P+KJ-r-33K6fW2+63OnLhjXE-u0k-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-04-01 19:43 ` Arnd Bergmann
2011-06-06 20:22 ` Pavan Savoy
[not found] ` <BANLkTimsZeqvSWj+kKWLSmFOQc70KWodcw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-06-06 20:30 ` Pavan Savoy
[not found] ` <BANLkTim9tyZXhLUxzHL2K-nWtujsJTB0fw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-06-06 20:46 ` Aloisio Almeida
2011-06-06 20:50 ` Samuel Ortiz
2011-03-18 15:50 ` Randy Dunlap
[not found] ` <20110318085033.9bea6dc9.rdunlap-/UHa2rfvQTnk1uMJSBkQmQ@public.gmane.org>
2011-03-18 15:57 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
-- strict thread matches above, loose matches on Subject: below --
2011-03-10 14:20 Waldemar Rymarkiewicz
[not found] ` <1299766808-2535-1-git-send-email-waldemar.rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w@public.gmane.org>
2011-03-10 13:52 ` Arnd Bergmann
[not found] ` <201103101452.54862.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-10 14:45 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
2011-03-10 16:20 ` Arnd Bergmann
[not found] ` <201103101720.53782.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-14 14:59 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481082FAE10A-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-14 15:34 ` Arnd Bergmann
[not found] ` <201103141634.10865.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-14 15:45 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B7001114481082FAE15A-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-14 16:00 ` Arnd Bergmann
[not found] ` <201103141700.26457.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-14 16:15 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
2011-03-14 17:01 ` Arnd Bergmann
2011-03-15 8:37 ` Waldemar.Rymarkiewicz
[not found] ` <99B09243E1A5DA4898CDD8B7001114481082FAE39E-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-15 9:06 ` Arnd Bergmann
2011-03-17 12:58 ` Waldemar.Rymarkiewicz
[not found] ` <99B09243E1A5DA4898CDD8B70011144810830AB119-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-17 13:07 ` Arnd Bergmann
[not found] ` <201103171407.58164.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-17 13:38 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B70011144810830AB18B-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-17 13:54 ` Arnd Bergmann
[not found] ` <201103171454.42838.arnd-r2nGTMty4D4@public.gmane.org>
2011-03-17 13:58 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
2011-03-15 10:01 ` Samuel Ortiz
[not found] ` <loom.20110315T104753-187-eS7Uydv5nfjZ+VzJOa5vwg@public.gmane.org>
2011-03-15 12:59 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
[not found] ` <99B09243E1A5DA4898CDD8B70011144810830AA4BD-TzrFtyi11j7rLp5S7fUuNkEOCMrvLtNR@public.gmane.org>
2011-03-15 14:16 ` Samuel Ortiz
2011-03-15 14:29 ` Waldemar.Rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201103181520.14315.arnd@arndb.de \
--to=arnd-r2ngtmty4d4@public.gmane.org \
--cc=alan-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org \
--cc=broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org \
--cc=hthebaud-Umy9UjvE/gtWk0Htik3J/w@public.gmane.org \
--cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=matti.j.aaltonen-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org \
--cc=sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
--cc=waldemar.rymarkiewicz-++hxYGjEMp0AvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).