All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	"codalist@coda.cs.cmu.edu" <codalist@coda.cs.cmu.edu>,
	"autofs@linux.kernel.org" <autofs@linux.kernel.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	Christoph Hellwig <hch@infradead.org>,
	Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Petr Vandrovec <vandrove@vc.cvut.cz>,
	Anders Larsen <al@alarsen.net>, Jan Kara <jack@suse.cz>,
	Evgeniy Dushistov <dushistov@mail.ru>,
	Ingo Molnar <mingo@elte.hu>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Samuel Ortiz <samuel@sortiz.org>,
	Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Andrew Hendry <andrew.hendry@gmail.com>
Subject: Re: Remaining BKL users, what to do
Date: Fri, 17 Sep 2010 20:46:10 +0200	[thread overview]
Message-ID: <201009172046.11378.arnd@arndb.de> (raw)
In-Reply-To: <4C9262C4.9050006@fusionio.com>

On Thursday 16 September 2010 20:32:36 Jens Axboe wrote:
> On 2010-09-16 16:49, Steven Rostedt wrote:
> > Git blame shows this to be your code (copied from block/blktrace.c from
> > years past).
> > 
> > Is the lock_kernel() needed here? (although Arnd did add it in 62c2a7d9)
> 
> It isn't, it can be removed.

Ok, I queued up this patch now. Thanks!

	Arnd
---
Subject: [PATCH] blktrace: remove the big kernel lock

According to Jens, this code does not need the BKL at all,
it is sufficiently serialized by bd_mutex.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>

diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
index 959f8d6..5328e87 100644
--- a/kernel/trace/blktrace.c
+++ b/kernel/trace/blktrace.c
@@ -23,7 +23,6 @@
 #include <linux/mutex.h>
 #include <linux/slab.h>
 #include <linux/debugfs.h>
-#include <linux/smp_lock.h>
 #include <linux/time.h>
 #include <linux/uaccess.h>
 
@@ -639,7 +638,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	if (!q)
 		return -ENXIO;
 
-	lock_kernel();
 	mutex_lock(&bdev->bd_mutex);
 
 	switch (cmd) {
@@ -667,7 +665,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	}
 
 	mutex_unlock(&bdev->bd_mutex);
-	unlock_kernel();
 	return ret;
 }
 
@@ -1652,10 +1649,9 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
 	struct block_device *bdev;
 	ssize_t ret = -ENXIO;
 
-	lock_kernel();
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1683,8 +1679,7 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
+out:
 	return ret;
 }
 
@@ -1714,11 +1709,10 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
 
 	ret = -ENXIO;
 
-	lock_kernel();
 	p = dev_to_part(dev);
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1753,8 +1747,6 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
 out:
 	return ret ? ret : count;
 }

WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	"codalist@coda.cs.cmu.edu" <codalist@TELEMANN.coda.cs.cmu.edu>,
	"autofs@linux.kernel.org" <autofs@linux.kernel.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	Christoph Hellwig <hch@infradead.org>,
	Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Petr Vandrovec <vandrove@vc.cvut.cz>,
	Anders Larsen <al@alarsen.net>, Jan Kara <jack@suse.cz>,
	Evgeniy Dushistov <dushistov@mail.ru>,
	Ingo Molnar <mingo@elte.hu>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Samuel Ortiz <samuel@sortiz.org>,
	Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Andrew Hendry <andrew.hendry@gmail.com>
Subject: Re: Remaining BKL users, what to do
Date: Fri, 17 Sep 2010 20:46:10 +0200	[thread overview]
Message-ID: <201009172046.11378.arnd@arndb.de> (raw)
In-Reply-To: <4C9262C4.9050006@fusionio.com>

On Thursday 16 September 2010 20:32:36 Jens Axboe wrote:
> On 2010-09-16 16:49, Steven Rostedt wrote:
> > Git blame shows this to be your code (copied from block/blktrace.c from
> > years past).
> > 
> > Is the lock_kernel() needed here? (although Arnd did add it in 62c2a7d9)
> 
> It isn't, it can be removed.

Ok, I queued up this patch now. Thanks!

	Arnd
---
Subject: [PATCH] blktrace: remove the big kernel lock

According to Jens, this code does not need the BKL at all,
it is sufficiently serialized by bd_mutex.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>

diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
index 959f8d6..5328e87 100644
--- a/kernel/trace/blktrace.c
+++ b/kernel/trace/blktrace.c
@@ -23,7 +23,6 @@
 #include <linux/mutex.h>
 #include <linux/slab.h>
 #include <linux/debugfs.h>
-#include <linux/smp_lock.h>
 #include <linux/time.h>
 #include <linux/uaccess.h>
 
@@ -639,7 +638,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	if (!q)
 		return -ENXIO;
 
-	lock_kernel();
 	mutex_lock(&bdev->bd_mutex);
 
 	switch (cmd) {
@@ -667,7 +665,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	}
 
 	mutex_unlock(&bdev->bd_mutex);
-	unlock_kernel();
 	return ret;
 }
 
@@ -1652,10 +1649,9 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
 	struct block_device *bdev;
 	ssize_t ret = -ENXIO;
 
-	lock_kernel();
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1683,8 +1679,7 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
+out:
 	return ret;
 }
 
@@ -1714,11 +1709,10 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
 
 	ret = -ENXIO;
 
-	lock_kernel();
 	p = dev_to_part(dev);
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1753,8 +1747,6 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
 out:
 	return ret ? ret : count;
 }

WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	"codalist@coda.cs.cmu.edu" <codalist@coda.cs.cmu.edu>,
	"autofs@linux.kernel.org" <autofs@linux.kernel.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	Christoph Hellwig <hch@infradead.org>,
	Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Petr Vandrovec <vandrove@vc.cvut.cz>,
	Anders Larsen <al@alarsen.net>, Jan Kara <jack@suse.cz>,
	Evgeniy Dushistov <dushistov@mail.ru>,
	Ingo Molnar <mingo@elte.hu>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Samuel Ortiz <samuel@sortiz.org>,
	Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	Andrew Hendry <andrew.hendry@gmail.com
Subject: Re: Remaining BKL users, what to do
Date: Fri, 17 Sep 2010 20:46:10 +0200	[thread overview]
Message-ID: <201009172046.11378.arnd@arndb.de> (raw)
In-Reply-To: <4C9262C4.9050006@fusionio.com>

On Thursday 16 September 2010 20:32:36 Jens Axboe wrote:
> On 2010-09-16 16:49, Steven Rostedt wrote:
> > Git blame shows this to be your code (copied from block/blktrace.c from
> > years past).
> > 
> > Is the lock_kernel() needed here? (although Arnd did add it in 62c2a7d9)
> 
> It isn't, it can be removed.

Ok, I queued up this patch now. Thanks!

	Arnd
---
Subject: [PATCH] blktrace: remove the big kernel lock

According to Jens, this code does not need the BKL at all,
it is sufficiently serialized by bd_mutex.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Jens Axboe <jaxboe@fusionio.com>
Cc: Steven Rostedt <rostedt@goodmis.org>

diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
index 959f8d6..5328e87 100644
--- a/kernel/trace/blktrace.c
+++ b/kernel/trace/blktrace.c
@@ -23,7 +23,6 @@
 #include <linux/mutex.h>
 #include <linux/slab.h>
 #include <linux/debugfs.h>
-#include <linux/smp_lock.h>
 #include <linux/time.h>
 #include <linux/uaccess.h>
 
@@ -639,7 +638,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	if (!q)
 		return -ENXIO;
 
-	lock_kernel();
 	mutex_lock(&bdev->bd_mutex);
 
 	switch (cmd) {
@@ -667,7 +665,6 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
 	}
 
 	mutex_unlock(&bdev->bd_mutex);
-	unlock_kernel();
 	return ret;
 }
 
@@ -1652,10 +1649,9 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
 	struct block_device *bdev;
 	ssize_t ret = -ENXIO;
 
-	lock_kernel();
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1683,8 +1679,7 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
+out:
 	return ret;
 }
 
@@ -1714,11 +1709,10 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
 
 	ret = -ENXIO;
 
-	lock_kernel();
 	p = dev_to_part(dev);
 	bdev = bdget(part_devt(p));
 	if (bdev == NULL)
-		goto out_unlock_kernel;
+		goto out;
 
 	q = blk_trace_get_queue(bdev);
 	if (q == NULL)
@@ -1753,8 +1747,6 @@ out_unlock_bdev:
 	mutex_unlock(&bdev->bd_mutex);
 out_bdput:
 	bdput(bdev);
-out_unlock_kernel:
-	unlock_kernel();
 out:
 	return ret ? ret : count;
 }

  reply	other threads:[~2010-09-17 18:46 UTC|newest]

Thread overview: 96+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-16 14:32 Remaining BKL users, what to do Arnd Bergmann
2010-09-16 14:32 ` Arnd Bergmann
2010-09-16 14:49 ` Steven Rostedt
2010-09-16 14:49   ` Steven Rostedt
2010-09-16 18:32   ` Jens Axboe
2010-09-16 18:32     ` Jens Axboe
2010-09-17 18:46     ` Arnd Bergmann [this message]
2010-09-17 18:46       ` Arnd Bergmann
2010-09-17 18:46       ` Arnd Bergmann
2010-09-16 15:04 ` Jan Kara
2010-09-16 15:04   ` Jan Kara
2010-09-16 21:26   ` Anton Altaparmakov
2010-09-16 21:26     ` Anton Altaparmakov
2010-09-17 10:45     ` Arnd Bergmann
2010-09-17 10:45       ` Arnd Bergmann
2010-09-17 13:32       ` Christoph Hellwig
2010-09-17 13:32         ` Christoph Hellwig
2010-09-17 13:50         ` Arnd Bergmann
2010-09-17 13:50           ` Arnd Bergmann
2010-09-17 14:02           ` Christoph Hellwig
2010-09-17 14:02             ` Christoph Hellwig
2010-09-17 14:56             ` Arnd Bergmann
2010-09-17 14:56               ` Arnd Bergmann
2010-09-17 19:00               ` [PATCH] BKL: Remove BKL from isofs Arnd Bergmann
2010-09-20 10:58                 ` Jan Kara
2010-09-20 11:13                   ` Arnd Bergmann
2010-09-20 15:18                     ` Jan Kara
2010-09-20 15:40                       ` Alexander E. Patrakov
2010-09-20 15:50                         ` Jan Kara
2010-09-16 15:07 ` Remaining BKL users, what to do Alan Cox
2010-09-16 20:08   ` David Miller
2010-09-16 16:09 ` Anders Larsen
2010-09-16 16:09   ` Anders Larsen
2010-09-16 16:57 ` Samuel Ortiz
2010-09-16 16:57   ` Samuel Ortiz
2010-09-16 20:08   ` David Miller
2010-09-16 20:08     ` David Miller
2010-09-16 19:00 ` Jan Harkes
2010-09-16 19:26   ` Arnd Bergmann
2010-09-20  1:25 ` [autofs] " Ian Kent
2010-10-18 15:42 ` [v2] " Arnd Bergmann
2010-10-18 15:42   ` Arnd Bergmann
2010-10-18 16:19   ` Christoph Hellwig
2010-10-18 16:19     ` Christoph Hellwig
2010-10-18 17:38     ` Arnd Bergmann
2010-10-18 17:38       ` Arnd Bergmann
2010-10-18 18:43   ` [Ksummit-2010-discuss] " Greg KH
2010-10-18 23:00     ` Dave Airlie
2010-10-19  0:40       ` Greg KH
2010-10-19  0:57         ` Dave Airlie
2010-10-19  2:24           ` Greg KH
2010-10-19  2:45             ` Dave Airlie
2010-10-19  3:33               ` Steven Rostedt
2010-10-19  4:03                 ` Dave Airlie
2010-10-19  4:03                   ` Dave Airlie
2010-10-19  5:00                 ` Theodore Kilgore
2010-10-19  4:52                   ` Dave Airlie
2010-10-19  7:26                     ` Arnd Bergmann
2010-10-19 12:39                       ` Steven Rostedt
2010-10-19 13:36                         ` Arnd Bergmann
2010-10-19 13:36                           ` Arnd Bergmann
2010-10-19 13:43                           ` Steven Rostedt
2010-10-19 13:57                             ` Arnd Bergmann
2010-10-19 13:57                               ` Arnd Bergmann
2010-10-19 13:54                         ` Paul Mundt
2010-10-19 13:26                       ` Arnd Bergmann
2010-10-19 20:50                         ` Dave Airlie
2010-10-19 20:50                           ` Dave Airlie
2010-10-20 16:14                           ` Ville Syrjälä
2010-10-20 16:14                             ` Ville Syrjälä
2010-10-19 18:24         ` Valdis.Kletnieks
2010-10-19 19:37           ` Greg KH
2010-10-19 19:40             ` Oliver Neukum
2010-10-19 20:29               ` Greg KH
2010-10-19 20:38                 ` Jiri Kosina
2010-10-19 20:41                 ` Alan Cox
2010-10-19 20:48                   ` Arnd Bergmann
2010-10-19 20:44                 ` Arnd Bergmann
2010-10-20  4:43                   ` Dave Young
2010-10-20  6:50                     ` Arnd Bergmann
2010-11-02  1:21                   ` Pavel Machek
2010-11-03  6:58                     ` Pekka Enberg
2010-11-05  2:27                       ` Arnd Bergmann
2010-11-05  7:14                         ` Pekka Enberg
2010-10-21 12:42       ` Christoph Hellwig
2010-10-21 12:42         ` Christoph Hellwig
2010-10-21 12:47 ` Christoph Hellwig
2010-10-21 13:38   ` Arnd Bergmann
2010-10-21 13:50     ` [PATCH 1/2] BKL: remove BKL from qnx4 Arnd Bergmann
2010-10-21 15:22       ` Anders Larsen
2010-10-21 13:51     ` [PATCH 2/2] BKL: remove BKL from freevxfs Arnd Bergmann
  -- strict thread matches above, loose matches on Subject: below --
2010-09-17 23:21 Remaining BKL users, what to do Petr Vandrovec
2010-09-17 23:21 ` Petr Vandrovec
2010-09-17 23:21 ` Petr Vandrovec
2010-09-21 20:01 ` Arnd Bergmann
2010-09-21 20:01   ` Arnd Bergmann

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=201009172046.11378.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=Trond.Myklebust@netapp.com \
    --cc=acme@ghostprotocols.net \
    --cc=al@alarsen.net \
    --cc=andrew.hendry@gmail.com \
    --cc=autofs@linux.kernel.org \
    --cc=codalist@coda.cs.cmu.edu \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=dushistov@mail.ru \
    --cc=hch@infradead.org \
    --cc=jack@suse.cz \
    --cc=jaxboe@fusionio.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mikulas@artax.karlin.mff.cuni.cz \
    --cc=mingo@elte.hu \
    --cc=netdev@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=samuel@sortiz.org \
    --cc=vandrove@vc.cvut.cz \
    /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.