From: Mauro Carvalho Chehab <mchehab@infradead.org>
To: Andy Walls <awalls@radix.net>, Douglas Landgraf <dougsland@gmail.com>
Cc: Alan Cox <alan@redhat.com>,
video4linux-list@redhat.com, linux-kernel@vger.kernel.org,
Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: [PATCH] video4linux: Push down the BKL
Date: Mon, 26 May 2008 13:34:57 -0300 [thread overview]
Message-ID: <20080526133457.6f892af9@gaivota> (raw)
In-Reply-To: <20080523090919.GA31575@devserv.devel.redhat.com>
On Fri, 23 May 2008 05:09:19 -0400
Alan Cox <alan@redhat.com> wrote:
> On Thu, May 22, 2008 at 10:08:04PM -0400, Andy Walls wrote:
> > Could someone give me a brief education as to what elements of
> > cx18/ivtv_v4l2_do_ioctl() would be forcing the use of the BKL for these
> > drivers' ioctls? I'm assuming it's not the
> > mutex_un/lock(&....->serialize_lock) and that the answer's not in the
> > diff.
>
> As it stood previous for historical reasons the kernel called the driver
> ioctl method already holding the big kernel lock. That lock effectively
> serialized a lot of ioctl processing and also serializes against module
> loading and registration/open for the most part. If all the resources you
> are working on within the ioctl handler are driver owned as is likely with
> a video capture driver, and you have sufficient locking of your own you can
> drop the lock.
>
> video_usercopy currently also uses the BKL so you might want to copy a
> version to video_usercopy_unlocked() without that.
In the specific case of ivtv and cx18, I think that the better would be to
convert it first to video_ioctl2. Then, remove the BKL, with a
video_ioctl2_unlocked version.
Douglas already did an experimental patch converting ivtv to video_ioctl2 and
sent to Hans. It needs testing, since he doesn't have any ivtv board. It should
be trivial to port this to cx18, since both drivers have similar structures.
Douglas,
Could you send this patch to the ML for people to review and for Andy to port
it to cx18?
Cheers,
Mauro
next prev parent reply other threads:[~2008-05-26 16:35 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-22 21:37 [PATCH] video4linux: Push down the BKL Alan Cox
2008-05-23 2:08 ` Andy Walls
2008-05-23 6:16 ` Hans Verkuil
2008-05-23 6:28 ` Hans Verkuil
2008-05-26 16:39 ` Mauro Carvalho Chehab
2008-05-23 9:09 ` Alan Cox
2008-05-26 16:34 ` Mauro Carvalho Chehab [this message]
2008-05-26 16:46 ` Hans Verkuil
2008-05-26 21:14 ` Mauro Carvalho Chehab
2008-05-23 13:56 ` Jonathan Corbet
2008-05-23 15:39 ` Alan Cox
2008-05-23 16:09 ` Jonathan Corbet
2008-05-23 18:58 ` Alan Cox
2008-05-23 19:05 ` Hans Verkuil
2008-05-25 23:46 ` Mike Isely
2008-05-26 16:59 ` Mauro Carvalho Chehab
2008-05-26 20:23 ` Alan Cox
2008-05-26 21:10 ` Mauro Carvalho Chehab
2008-05-26 22:01 ` Alan Cox
2008-05-27 13:10 ` Mauro Carvalho Chehab
2008-05-27 15:41 ` Jonathan Corbet
2008-05-27 16:31 ` Mauro Carvalho Chehab
2008-05-27 16:37 ` Jonathan Corbet
2008-05-27 18:59 ` Mauro Carvalho Chehab
2008-05-27 19:26 ` Devin Heitmueller
2008-05-27 21:00 ` Mauro Carvalho Chehab
2008-05-27 21:22 ` Devin Heitmueller
2008-05-27 23:48 ` Andy Walls
2008-05-28 0:46 ` Devin Heitmueller
2008-05-28 2:37 ` Andy Walls
2008-05-28 2:47 ` Devin Heitmueller
2008-05-28 8:34 ` Alan Cox
2008-05-28 6:13 ` Hans Verkuil
2008-05-27 19:50 ` Arjan van de Ven
2008-05-27 20:24 ` Mauro Carvalho Chehab
2008-05-27 18:14 ` Alan Cox
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=20080526133457.6f892af9@gaivota \
--to=mchehab@infradead.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=alan@redhat.com \
--cc=awalls@radix.net \
--cc=dougsland@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=video4linux-list@redhat.com \
/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