From: John Kacur <jkacur@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: John Kacur <jkacur@redhat.com>,
lkml <linux-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Jan Blunck <jblunck@gmail.com>,
Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [PATCH 10/10] bkl: Fix-up compile problems as a result of the bkl-pushdown.
Date: Tue, 27 Apr 2010 13:54:36 +0200 (CEST) [thread overview]
Message-ID: <alpine.LFD.2.00.1004271352510.3318@localhost> (raw)
In-Reply-To: <201004271317.45503.arnd@arndb.de>
[-- Attachment #1: Type: TEXT/PLAIN, Size: 2859 bytes --]
On Tue, 27 Apr 2010, Arnd Bergmann wrote:
> On Tuesday 27 April 2010, John Kacur wrote:
> > Fix-up compile problems as a result of the bkl-pushdown.
> > In particular, the v4l2_ioctl should call an unlocked_ioctl
> >
> > Signed-off-by: John Kacur <jkacur@redhat.com>
> > ---
> > drivers/media/video/v4l2-dev.c | 4 ++--
> > 1 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/media/video/v4l2-dev.c b/drivers/media/video/v4l2-dev.c
> > index 3606694..8fbfa61 100644
> > --- a/drivers/media/video/v4l2-dev.c
> > +++ b/drivers/media/video/v4l2-dev.c
> > @@ -222,12 +222,12 @@ static long v4l2_ioctl(struct file *filp,
> > struct video_device *vdev = video_devdata(filp);
> > int ret;
> >
> > - if (!vdev->fops->ioctl)
> > + if (!vdev->fops->unlocked_ioctl)
> > return -ENOTTY;
> > /* Allow ioctl to continue even if the device was unregistered.
> > Things like dequeueing buffers might still be useful. */
> > lock_kernel();
> > - ret = vdev->fops->ioctl(filp->f_path.dentry->d_inode, filp, cmd, arg);
> > + ret = vdev->fops->unlocked_ioctl(filp, cmd, arg);
> > unlock_kernel();
> >
> > return ret;
>
> No, this is what I thought as well, at first, but the version I posted is
> actually correct.
>
> vdev->fops is not struct file_operations but struct v4l2_file_operations,
> and the v4l2_ioctl function is used only when fops->ioctl is set, see
> __video_register_device.
>
> The v4l2 ioctl stuff probably can use a lot of cleanup itself, but so
> far I think we're not making it worse with my patch.
>
Hi Arnd
Well it is certainly possible that my fixup is not correct too - your
patch cannot be correct, because it doesn't compile! Here is what I get
when I apply your patch to a recent linus/master
make O=/bld/arnd/ drivers/media/video/v4l2-dev.o
-----CUT A BUNCH OF STUFF OUT ---
CC drivers/media/video/v4l2-dev.o
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c: In function
‘v4l2_ioctl’:
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c:230: warning: passing
argument 1 of ‘vdev->fops->ioctl’ from incompatible pointer type
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c:230: note: expected
‘struct file *’ but argument is of type ‘struct inode *’
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c:230: warning: passing
argument 2 of ‘vdev->fops->ioctl’ makes integer from pointer without a
cast
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c:230: note: expected
‘unsigned int’ but argument is of type ‘struct file *’
/home/jkacur/jk-2.6/drivers/media/video/v4l2-dev.c:230: error: too many
arguments to function ‘vdev->fops->ioctl’
make[2]: *** [drivers/media/video/v4l2-dev.o] Error 1
make[1]: *** [drivers/media/video/v4l2-dev.o] Error 2
make: *** [sub-make] Error 2
Thanks
next prev parent reply other threads:[~2010-04-27 11:54 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-27 9:18 [PATCH 00/10] bkl: pushdowns from Arnd, and compile fixes John Kacur
2010-04-27 9:18 ` [PATCH 01/10] dvb: push down BKL into ioctl functions John Kacur
2010-04-27 9:18 ` [PATCH 02/10] scsi: " John Kacur
2010-04-27 9:18 ` [PATCH 03/10] bkl: Fix up compile problems in megaraid from bkl push-down John Kacur
2010-04-27 9:18 ` [PATCH 04/10] bkl: Fix missing inode tw_chrdev_ioctl due to bkl pushdown John Kacur
2010-04-27 9:18 ` [PATCH 05/10] bkl: Fix missing inode in twl_chrdev_ioctl resulting from " John Kacur
2010-04-27 9:18 ` [PATCH 06/10] isdn: push down BKL into ioctl functions John Kacur
2010-04-27 9:18 ` [PATCH 07/10] staging: " John Kacur
2010-04-27 9:18 ` [PATCH 08/10] v4l: always use unlocked_ioctl John Kacur
2010-04-27 9:18 ` [PATCH 09/10] drivers: push down BKL into various drivers John Kacur
2010-04-27 9:18 ` [PATCH 10/10] bkl: Fix-up compile problems as a result of the bkl-pushdown John Kacur
2010-04-27 11:17 ` Arnd Bergmann
2010-04-27 11:54 ` John Kacur [this message]
2010-04-27 13:03 ` Arnd Bergmann
2010-04-28 12:24 ` Mauro Carvalho Chehab
2010-04-28 12:37 ` Hans Verkuil
2010-04-28 13:02 ` Laurent Pinchart
2010-04-28 14:46 ` Mauro Carvalho Chehab
2010-04-28 14:55 ` Linus Torvalds
2010-04-28 21:52 ` Frederic Weisbecker
2010-04-29 3:42 ` [PATCH 0/5] Pushdown bkl from v4l ioctls Frederic Weisbecker
2010-04-29 6:44 ` Hans Verkuil
2010-04-29 7:10 ` Laurent Pinchart
2010-04-29 7:38 ` Arnd Bergmann
2010-05-01 9:55 ` Hans Verkuil
2010-05-01 10:47 ` Arnd Bergmann
2010-05-01 14:58 ` Frederic Weisbecker
2010-05-01 11:11 ` Alan Cox
2010-04-29 3:42 ` [PATCH 1/5] v4l: Pushdown bkl into video_ioctl2 Frederic Weisbecker
2010-04-29 3:42 ` [PATCH 2/5] v4l: Use video_ioctl2_unlocked from drivers that don't want the bkl Frederic Weisbecker
2010-04-29 3:42 ` [PATCH 3/5] v4l: Change users of video_ioctl2 to use unlocked_ioctl Frederic Weisbecker
2010-04-29 3:42 ` [PATCH 4/5] v4l: Pushdown bkl to drivers that implement their own ioctl Frederic Weisbecker
2010-04-29 3:42 ` [PATCH 5/5] v4l: Remove struct v4l2_file_operations::ioctl Frederic Weisbecker
2010-04-27 11:31 ` [PATCH 00/10] bkl: pushdowns from Arnd, and compile fixes Arnd Bergmann
2010-04-27 12:19 ` John Kacur
2010-04-27 12:41 ` Frederic Weisbecker
2010-04-27 14:24 ` [PATCH 0/6] BKL pushdown into ioctl, continued Arnd Bergmann
2010-04-27 14:24 ` [PATCH 1/7] logfs: push down BKL into ioctl function Arnd Bergmann
2010-04-27 14:32 ` Arnd Bergmann
2010-04-27 14:58 ` Jörn Engel
2010-04-27 15:05 ` Arnd Bergmann
2010-04-27 15:09 ` Jörn Engel
2010-04-27 15:27 ` John Kacur
2010-04-27 15:32 ` Jörn Engel
2010-04-27 15:38 ` Arnd Bergmann
2010-04-27 20:12 ` Frederic Weisbecker
2010-04-27 20:30 ` [PATCH] logfs: kill BKL Arnd Bergmann
2010-05-19 12:51 ` Frederic Weisbecker
2010-04-27 15:36 ` [PATCH 1/7] logfs: push down BKL into ioctl function Linus Torvalds
2010-04-27 16:29 ` John Kacur
2010-04-27 19:59 ` Frederic Weisbecker
2010-04-27 14:24 ` [PATCH 2/7] hfsplus: " Arnd Bergmann
2010-04-27 14:24 ` [PATCH 3/7] cris: push down BKL into some device drivers Arnd Bergmann
2010-04-27 17:22 ` Frederic Weisbecker
2010-04-30 7:53 ` Jesper Nilsson
2010-05-17 2:51 ` Frederic Weisbecker
2010-04-27 14:24 ` [PATCH 4/7] sn_hwperf: kill BKL usage Arnd Bergmann
2010-04-27 14:24 ` [PATCH 5/7] um/mmapper: remove " Arnd Bergmann
2010-04-27 14:24 ` [PATCH 6/7] coda/psdev: remove BKL from ioctl function Arnd Bergmann
2010-04-27 14:24 ` [PATCH 7/7] smbfs: push down BKL into " Arnd Bergmann
2010-04-27 12:40 ` [PATCH 00/10] bkl: pushdowns from Arnd, and compile fixes Frederic Weisbecker
2010-04-27 12:51 ` Geert Uytterhoeven
2010-04-28 21:18 ` Frederic Weisbecker
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=alpine.LFD.2.00.1004271352510.3318@localhost \
--to=jkacur@redhat.com \
--cc=arnd@arndb.de \
--cc=fweisbec@gmail.com \
--cc=jblunck@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox