From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alasdair G Kergon Subject: Re: [RFC] block_device_operations prototype changes Date: Mon, 27 Aug 2007 23:59:01 +0100 Message-ID: <20070827225901.GB30122@agk.fab.redhat.com> References: <20070827103053.GF21089@ftp.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-kernel@vger.kernel.org, Linus Torvalds , linux-fsdevel@vger.kernel.org, axboe@kernel.dk To: Al Viro Return-path: Received: from mx1.redhat.com ([66.187.233.31]:51302 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751835AbXH0W7U (ORCPT ); Mon, 27 Aug 2007 18:59:20 -0400 Content-Disposition: inline In-Reply-To: <20070827103053.GF21089@ftp.linux.org.uk> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Mon, Aug 27, 2007 at 11:30:53AM +0100, Al Viro wrote: > 3) ->ioctl(). What a mess... Yup. See also: Subject: [PATCH] dm: support ioctls on mapped devices: fix with fake file http://uwsg.indiana.edu/hypermail/linux/kernel/0606.2/2979.html and related threads. > First of all, we have 3 methods with different > calling conventions: > ->ioctl(inode, file, cmd, arg) > ->unlocked_ioctl(inode, file, cmd, arg) When I last looked it was: long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); with the lack of inode forcing dm to use ->ioctl (because file can be NULL when only the block device is known) and immediately drop the pointless-for-us lock! Alasdair -- agk@redhat.com