Re: [PATCH 1/5] dasd: cleanup dasd_ioctl

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Feb 12, 2006 at 07:03:08PM +0100, Bastian Blank wrote:
> On Sun, Feb 12, 2006 at 06:38:55PM +0100, Christoph Hellwig wrote:
> >  static int
> > -dasd_ioctl_api_version(struct block_device *bdev, int no, long args)
> > +dasd_ioctl_api_version(void __user *argp)
> >  {
> >  	int ver = DASD_API_VERSION;
> > -	return put_user(ver, (int __user *) args);
> > +	return put_user(ver, (int *)argp);
> >  }
> 
> Doesn't this need to be "int __user *"?

Yes.

> > +long
> > +dasd_compat_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
> >  {
> > -	int i;
> > +	int rval;
> >  
> > -	for (i = 0; dasd_ioctls[i].no != -1; i++)
> > -		dasd_ioctl_no_unregister(NULL, dasd_ioctls[i].no,
> > -					 dasd_ioctls[i].fn);
> > +	lock_kernel();
> > +	rval = dasd_ioctl(filp->f_dentry->d_inode, filp, cmd, arg);
> > +	unlock_kernel();
> 
> The lock_kernel looks spurious.

dasd_compat_ioctl just moved down unchanged to the end of the file so it
can call dasd_ioctl without a forward-prototype.  When I introduced this
function a while ago I added the lock_kernel because that the BKL is
held when dasd_ioctl is called directly and I wanted to avoid different
locks from different codepathes.  Once we can switch dasd to
->unlocked_ioctl it could probably go away.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux