All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl
@ 2010-07-10  4:07 Javier Martinez Canillas
  2010-07-22 17:58 ` [PATCH 3/3] Correct: fix staging/spectra: don't use Greg KH
  2010-07-22 18:16 ` [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas
  0 siblings, 2 replies; 3+ messages in thread
From: Javier Martinez Canillas @ 2010-07-10  4:07 UTC (permalink / raw)
  To: kernel-janitors

Last patch has a style problem. Sending the correct one. Sorry for the noise

Since BKL was removed from block ioctl handling code, locked_ioctl doesn't 
exist anymore. 

Using ioctl instead and doing the locking manually.

From b2bfc3da2c83066ad773df81787fc9416f5382c2 Mon Sep 17 00:00:00 2001
From: Javier Martinez Canillas <martinez.javier@gmail.com>
Date: Sat, 10 Jul 2010 00:00:16 -0400
Subject: [PATCH 3/3] fix staging/spectra: don't use locked_ioctl


Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
---
 drivers/staging/spectra/ffsport.c |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/drivers/staging/spectra/ffsport.c b/drivers/staging/spectra/ffsport.c
index 00a0ac0..7b34635 100644
--- a/drivers/staging/spectra/ffsport.c
+++ b/drivers/staging/spectra/ffsport.c
@@ -27,6 +27,7 @@
 #include <linux/kthread.h>
 #include <linux/log2.h>
 #include <linux/init.h>
+#include <linux/smp_lock.h>
 
 /**** Helper functions used for Div, Remainder operation on u64 ****/
 
@@ -589,11 +590,23 @@ int GLOB_SBD_ioctl(struct block_device *bdev, fmode_t mode,
 	return -ENOTTY;
 }
 
+int GLOB_SBD_unlocked_ioctl(struct block_device *bdev, fmode_t mode,
+		unsigned int cmd, unsigned long arg)
+{
+	int ret;
+
+	lock_kernel();
+	ret = GLOB_SBD_ioctl(bdev, mode, cmd, arg);
+	unlock_kernel();
+
+	return ret;
+}
+
 static struct block_device_operations GLOB_SBD_ops = {
 	.owner = THIS_MODULE,
 	.open = GLOB_SBD_open,
 	.release = GLOB_SBD_release,
-	.locked_ioctl = GLOB_SBD_ioctl,
+	.ioctl = GLOB_SBD_unlocked_ioctl,
 	.getgeo = GLOB_SBD_getgeo,
 };
 
-- 
1.7.0.4







^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 3/3] Correct: fix staging/spectra: don't use
  2010-07-10  4:07 [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas
@ 2010-07-22 17:58 ` Greg KH
  2010-07-22 18:16 ` [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas
  1 sibling, 0 replies; 3+ messages in thread
From: Greg KH @ 2010-07-22 17:58 UTC (permalink / raw)
  To: kernel-janitors

On Sat, Jul 10, 2010 at 12:07:35AM -0400, Javier Martinez Canillas wrote:
> Last patch has a style problem. Sending the correct one. Sorry for the noise
> 
> Since BKL was removed from block ioctl handling code, locked_ioctl doesn't 
> exist anymore. 
> 
> Using ioctl instead and doing the locking manually.
> 
> >From b2bfc3da2c83066ad773df81787fc9416f5382c2 Mon Sep 17 00:00:00 2001
> From: Javier Martinez Canillas <martinez.javier@gmail.com>
> Date: Sat, 10 Jul 2010 00:00:16 -0400
> Subject: [PATCH 3/3] fix staging/spectra: don't use locked_ioctl
> 
> 
> Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
> ---
>  drivers/staging/spectra/ffsport.c |   15 ++++++++++++++-
>  1 files changed, 14 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/staging/spectra/ffsport.c b/drivers/staging/spectra/ffsport.c
> index 00a0ac0..7b34635 100644
> --- a/drivers/staging/spectra/ffsport.c
> +++ b/drivers/staging/spectra/ffsport.c
> @@ -27,6 +27,7 @@
>  #include <linux/kthread.h>
>  #include <linux/log2.h>
>  #include <linux/init.h>
> +#include <linux/smp_lock.h>
>  
>  /**** Helper functions used for Div, Remainder operation on u64 ****/
>  
> @@ -589,11 +590,23 @@ int GLOB_SBD_ioctl(struct block_device *bdev, fmode_t mode,
>  	return -ENOTTY;
>  }
>  
> +int GLOB_SBD_unlocked_ioctl(struct block_device *bdev, fmode_t mode,
> +		unsigned int cmd, unsigned long arg)
> +{
> +	int ret;
> +
> +	lock_kernel();

No, we are trying to get rid of the lock_kernel() calls, care to just
make this a local lock instead?

thanks,

greg k-h



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl
  2010-07-10  4:07 [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas
  2010-07-22 17:58 ` [PATCH 3/3] Correct: fix staging/spectra: don't use Greg KH
@ 2010-07-22 18:16 ` Javier Martinez Canillas
  1 sibling, 0 replies; 3+ messages in thread
From: Javier Martinez Canillas @ 2010-07-22 18:16 UTC (permalink / raw)
  To: kernel-janitors

On Thu, Jul 22, 2010 at 1:58 PM, Greg KH <greg@kroah.com> wrote:
>> +     lock_kernel();
>
> No, we are trying to get rid of the lock_kernel() calls, care to just
> make this a local lock instead?
>

Since I'm not the driver author I thought that the idea of moving the
BKL from block ioctl to the driver code would be a first step to get
rid of the lock_kernel() call.

This patch at least could make the driver compile again and someone
who better understands the driver code could make a finner (local)
lock.

But I will figure out what needs to be protect and send a new patch
that uses some sincronization primitive to make a local lock.

Thanks a lot.

-----------------------------------------
Javier Martínez Canillas
+595 981 88 66 58

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-07-22 18:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-10  4:07 [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas
2010-07-22 17:58 ` [PATCH 3/3] Correct: fix staging/spectra: don't use Greg KH
2010-07-22 18:16 ` [PATCH 3/3] Correct: fix staging/spectra: don't use locked_ioctl Javier Martinez Canillas

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.