From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Hans J. Koch" <hjk@hansjkoch.de>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Chris Wright <chrisw@redhat.com>,
Jesse Barnes <jbarnes@virtuousgeek.org>,
Greg Kroah-Hartman <gregkh@suse.de>,
Anthony Foiani <anthony.foiani@gmail.com>,
linux-kernel@vger.kernel.org, stable@kernel.org
Subject: Re: [PATCH] uio/gen-pci: don't enable interrupts in ISR
Date: Wed, 10 Aug 2011 11:40:12 +0300 [thread overview]
Message-ID: <20110810084012.GD13911@redhat.com> (raw)
In-Reply-To: <20110809185341.GD4229@local>
On Tue, Aug 09, 2011 at 08:53:41PM +0200, Hans J. Koch wrote:
> On Tue, Aug 09, 2011 at 02:37:43PM +0300, Michael S. Tsirkin wrote:
> > >
> > > Should I hack up a patch to remove the lock, or do you have anything in your
> > > pipeline?
> >
> >
> > Please do.
> >
>
> Here it is:
>
> Greg (and anyone else...), you can also pull this from branch "uio-for-greg" from
>
> git://hansjkoch.de/git/linux-hjk
>
>
> >From ff74627ade002d40fe1f902b7aadab8b1f15f889 Mon Sep 17 00:00:00 2001
> From: "Hans J. Koch" <hjk@hansjkoch.de>
> Date: Tue, 9 Aug 2011 20:34:31 +0200
> Subject: [PATCH] uio: uio_pci_generic: Remove useless spin_lock
>
> The spin_lock in uio_pci_generic.c is only used in the interrupt
> handler, which cannot be executed twice at the same time.
> That makes the lock rather pointless. This patch removes it.
>
> Cc: "Michael S. Tsirkin" <mst@redhat.com>
> Cc: Chris Wright <chrisw@redhat.com>
> Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
> Cc: Anthony Foiani <anthony.foiani@gmail.com>
> Reported-by: Anthony Foiani <anthony.foiani@gmail.com>
> Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
> Signed-off-by: Hans J. Koch <hjk@hansjkoch.de>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
I also suggest this for the stable trees.
> ---
> drivers/uio/uio_pci_generic.c | 5 -----
> 1 files changed, 0 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/uio/uio_pci_generic.c b/drivers/uio/uio_pci_generic.c
> index fc22e1e..02bd47b 100644
> --- a/drivers/uio/uio_pci_generic.c
> +++ b/drivers/uio/uio_pci_generic.c
> @@ -24,7 +24,6 @@
> #include <linux/pci.h>
> #include <linux/slab.h>
> #include <linux/uio_driver.h>
> -#include <linux/spinlock.h>
>
> #define DRIVER_VERSION "0.01.0"
> #define DRIVER_AUTHOR "Michael S. Tsirkin <mst@redhat.com>"
> @@ -33,7 +32,6 @@
> struct uio_pci_generic_dev {
> struct uio_info info;
> struct pci_dev *pdev;
> - spinlock_t lock; /* guards command register accesses */
> };
>
> static inline struct uio_pci_generic_dev *
> @@ -57,7 +55,6 @@ static irqreturn_t irqhandler(int irq, struct uio_info *info)
> BUILD_BUG_ON(PCI_COMMAND % 4);
> BUILD_BUG_ON(PCI_COMMAND + 2 != PCI_STATUS);
>
> - spin_lock_irq(&gdev->lock);
> pci_block_user_cfg_access(pdev);
>
> /* Read both command and status registers in a single 32-bit operation.
> @@ -83,7 +80,6 @@ static irqreturn_t irqhandler(int irq, struct uio_info *info)
> done:
>
> pci_unblock_user_cfg_access(pdev);
> - spin_unlock_irq(&gdev->lock);
> return ret;
> }
>
> @@ -158,7 +154,6 @@ static int __devinit probe(struct pci_dev *pdev,
> gdev->info.irq_flags = IRQF_SHARED;
> gdev->info.handler = irqhandler;
> gdev->pdev = pdev;
> - spin_lock_init(&gdev->lock);
>
> if (uio_register_device(&pdev->dev, &gdev->info))
> goto err_register;
> --
> 1.7.5.4
next prev parent reply other threads:[~2011-08-10 8:40 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-04 20:46 [PATCH] uio/gen-pci: don't enable interrupts in ISR Sebastian Andrzej Siewior
2011-08-04 21:04 ` Michael S. Tsirkin
2011-08-05 0:15 ` Hans J. Koch
2011-08-08 6:24 ` Michael S. Tsirkin
2011-08-08 17:19 ` Hans J. Koch
2011-08-09 11:37 ` Michael S. Tsirkin
2011-08-09 18:53 ` Hans J. Koch
2011-08-10 8:40 ` Michael S. Tsirkin [this message]
2011-08-23 0:49 ` [stable] " Greg KH
2011-08-23 8:40 ` Sebastian Andrzej Siewior
2011-08-23 10:57 ` Hans J. Koch
2011-08-23 11:00 ` Hans J. Koch
2011-08-05 19:18 ` Sebastian Andrzej Siewior
2011-08-08 6:40 ` Michael S. Tsirkin
2011-08-09 11:43 ` Sebastian Andrzej Siewior
2011-08-09 12:02 ` Michael S. Tsirkin
2011-08-10 8:33 ` Sebastian Andrzej Siewior
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=20110810084012.GD13911@redhat.com \
--to=mst@redhat.com \
--cc=anthony.foiani@gmail.com \
--cc=bigeasy@linutronix.de \
--cc=chrisw@redhat.com \
--cc=gregkh@suse.de \
--cc=hjk@hansjkoch.de \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.