aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/hpsa.c
diff options
context:
space:
mode:
authorStephen M. Cameron <scameron@beardog.cce.hp.com>2010-02-04 09:43:46 -0500
committerJames Bottomley <James.Bottomley@suse.de>2010-02-17 14:23:40 -0500
commite39eeaed1f75fcd46783aad34cb9ab8a6046bb01 (patch)
treebc2759d9019c1d83ccb31c936ade0726f551e25a /drivers/scsi/hpsa.c
parent2a8ccf3187aff6defed72f7d8fa562ff2f69ef2a (diff)
[SCSI] hpsa: eliminate lock_kernel in compat_ioctl
The use of the big kernel lock here appears to be ancient cruft that is no longer needed. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/hpsa.c')
-rw-r--r--drivers/scsi/hpsa.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 6b40221a7220..225a787dedf3 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -2287,16 +2287,6 @@ static void cmd_special_free(struct ctlr_info *h, struct CommandList *c)
2287 2287
2288#ifdef CONFIG_COMPAT 2288#ifdef CONFIG_COMPAT
2289 2289
2290static int do_ioctl(struct scsi_device *dev, int cmd, void *arg)
2291{
2292 int ret;
2293
2294 lock_kernel();
2295 ret = hpsa_ioctl(dev, cmd, arg);
2296 unlock_kernel();
2297 return ret;
2298}
2299
2300static int hpsa_ioctl32_passthru(struct scsi_device *dev, int cmd, void *arg); 2290static int hpsa_ioctl32_passthru(struct scsi_device *dev, int cmd, void *arg);
2301static int hpsa_ioctl32_big_passthru(struct scsi_device *dev, 2291static int hpsa_ioctl32_big_passthru(struct scsi_device *dev,
2302 int cmd, void *arg); 2292 int cmd, void *arg);
@@ -2319,7 +2309,7 @@ static int hpsa_compat_ioctl(struct scsi_device *dev, int cmd, void *arg)
2319 case CCISS_REGNEWD: 2309 case CCISS_REGNEWD:
2320 case CCISS_RESCANDISK: 2310 case CCISS_RESCANDISK:
2321 case CCISS_GETLUNINFO: 2311 case CCISS_GETLUNINFO:
2322 return do_ioctl(dev, cmd, arg); 2312 return hpsa_ioctl(dev, cmd, arg);
2323 2313
2324 case CCISS_PASSTHRU32: 2314 case CCISS_PASSTHRU32:
2325 return hpsa_ioctl32_passthru(dev, cmd, arg); 2315 return hpsa_ioctl32_passthru(dev, cmd, arg);
@@ -2355,7 +2345,7 @@ static int hpsa_ioctl32_passthru(struct scsi_device *dev, int cmd, void *arg)
2355 if (err) 2345 if (err)
2356 return -EFAULT; 2346 return -EFAULT;
2357 2347
2358 err = do_ioctl(dev, CCISS_PASSTHRU, (void *)p); 2348 err = hpsa_ioctl(dev, CCISS_PASSTHRU, (void *)p);
2359 if (err) 2349 if (err)
2360 return err; 2350 return err;
2361 err |= copy_in_user(&arg32->error_info, &p->error_info, 2351 err |= copy_in_user(&arg32->error_info, &p->error_info,
@@ -2392,7 +2382,7 @@ static int hpsa_ioctl32_big_passthru(struct scsi_device *dev,
2392 if (err) 2382 if (err)
2393 return -EFAULT; 2383 return -EFAULT;
2394 2384
2395 err = do_ioctl(dev, CCISS_BIG_PASSTHRU, (void *)p); 2385 err = hpsa_ioctl(dev, CCISS_BIG_PASSTHRU, (void *)p);
2396 if (err) 2386 if (err)
2397 return err; 2387 return err;
2398 err |= copy_in_user(&arg32->error_info, &p->error_info, 2388 err |= copy_in_user(&arg32->error_info, &p->error_info,