public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab@infradead.org>
To: Arjan van de Ven <arjan@infradead.org>
Cc: "koos vriezen" <koos.vriezen@gmail.com>,
	linux-kernel@vger.kernel.org, torvalds@linux-foundation.org,
	Krufky <mkrufky@infradead.org>
Subject: Re: mplayer v4l hangs in 2.6.25.2/4 (likely regression)
Date: Tue, 20 May 2008 08:49:11 -0300	[thread overview]
Message-ID: <20080520084911.17201a98@areia> (raw)
In-Reply-To: <20080517132050.2dae0ddd@infradead.org>

Hi Arjan,

Sorry for a late answer. I'm currently travelling on a short vacations.

On Sat, 17 May 2008 13:20:50 -0700
Arjan van de Ven <arjan@infradead.org> wrote:

> On Sat, 17 May 2008 22:06:12 +0200
> "koos vriezen" <koos.vriezen@gmail.com> wrote:
> 
> > 2008/5/17 Arjan van de Ven <arjan@infradead.org>:
> > 
> > > > so.. bttv first takes "fh->cap.vb_lock" in vidiocgmbuf, then
> > > > calls videobuf_mmap_setup(), and the first thing that does
> > is to also take fh->cap.vb_lock!  This isn't even an ABBA deadlock,
> > but a straight AA deadlock :)
> > 
> > Looks like I'm the only one actually running this code ;-)
> > 
> > > and here is an (untest) patch that should fix this problem:
> > > Koos, can you apply this to your kernel tree and report back if this
> > > fixes your deadlock?
> > 
> > patching file drivers/media/video/bt8xx/bttv-driver.c
> > patching file drivers/media/video/videobuf-core.c
> > Hunk #1 succeeded at 335 (offset 4 lines).
> > Hunk #2 succeeded at 1093 (offset -36 lines).
> > patching file include/media/videobuf-core.h
> > Hunk #1 succeeded at 227 (offset -10 lines).
> > 
> > Deadlock is gone, only mplayer fails to unmute the audio.

I have a trivial patch to fix this already. I'll add it soon to my tree and
send Linus.
> 
> that's something else entirely ;)
> 
> I'll call your deadlock bug fixed by the patch...
> 
> Mauro: will you send this on to Linus or should this go direct?

The fix looks sane. I prefer to just remove the lock call from bttv, instead of
calling  __videobuf_mmap_setup() and make this symbol global. The better is to
avoid locking inside the drivers, except during the interrupts, and inside
videbuf code. This is what we're doing on the other drivers.

So, it would be better if you could change your patch to remove the lock/unlock
at bttv-driver handling for this ioctl.

To solve the bug, both ways work, so:

Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org>

Could you please send it to Linus and to -stable for me? Otherwise, I'll do
this by Monday.

Cheers,
Mauro

  parent reply	other threads:[~2008-05-20 11:52 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-17 16:54 mplayer v4l hangs in 2.6.25.2/4 koos vriezen
2008-05-17 18:16 ` Arjan van de Ven
2008-05-17 19:11   ` koos vriezen
2008-05-17 19:26     ` mplayer v4l hangs in 2.6.25.2/4 (likely regression) Arjan van de Ven
2008-05-17 19:34       ` Arjan van de Ven
2008-05-17 20:06         ` koos vriezen
2008-05-17 20:20           ` Arjan van de Ven
2008-05-17 20:45             ` Willy Tarreau
2008-05-20 11:49             ` Mauro Carvalho Chehab [this message]
2008-05-20 16:53               ` Arjan van de Ven
2008-05-17 21:09           ` koos vriezen

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=20080520084911.17201a98@areia \
    --to=mchehab@infradead.org \
    --cc=arjan@infradead.org \
    --cc=koos.vriezen@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mkrufky@infradead.org \
    --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